com.unity.localization@0.8.0-preview
## [0.8.0] - 2020-08-17 ### Added - Added `IKeyGenerator` to `SharedTableData`. This is now used to generate the unique ids for each key. By default `DistributedUIDGenerator` will be used to generate the keys however it is possible to change it back to Sequential by assigning `SequentialIDGenerator` to `SharedTableData.KeyGenerator`. See docs for further details. - Added `PreserveTags` Pseudo-localization method. This will prevent tags such as rich text or xml from being modified by any subsequent Pseudo-localization methods. ([LOC-86](https://issuetracker.unity3d.com/issues/pseudo-localization-methods-are-applied-to-the-whole-string-when-using-rich-text-tags)) - Added `PreserveTags` Pseudo-localization method. This will prevent tags such as rich text or xml from being modified by any subsequent Pseudo-localization methods. (case [LOC-86](https://issuetracker.unity3d.com/issues/pseudo-localization-methods-are-applied-to-the-whole-string-when-using-rich-text-tags)). - Added `LocalizeSpriteEvent` component. This can be used for Localizing `Sprite` assets. - Added `Localize` context menu item for UGUI `Image` component. This will add and setup a `LocalizeSpriteEvent` component. - Added `Group` property to `StringTableCollection`and `AssetTableCollection`, This can be used to customize the menu grouping when selecting a Table Collection. - Locales can now be sorted in the Localization project settings view. - Added `SortOrder` property to `Locale`. This can be used to override the default sorting order. This value is set automatically when changing the order in the editor. - Added `CheckForMissingSharedTableDataEntries` to `StringTable` and `AssetTable`. This will find any entries in the table that are missing matching Shared Table Entries. These missing entries can be repaired with the `MissingEntryAction` parameter. - Added `RemapKey` to `SharedTableData`. This will let the Id of a key be changed. - Added `LocalizedStringTable` and `LocalizedAssetTable`. These work in a similar way to `LocalizedString` and `LocalizedAsset` but will return a Table instead of a single table entry. - Added new Sample: Simple Language Selection Menu (IMGUI). Includes 2 different examples of a Locale selection menu. ### Changed - Changed Table Entry Key Id data type from `uint` to `long`. All Methods that were using a `uint` now require a `long`. - `IPseudoLocalizationMethod` method `Transform` now passes a `Message` instead of a string. - The Locale column order in the `Localization Tables` window is now determined by the Locale's order. - Upgraded to latest `Newtonsoft Json` package `2.0.0`. - Renamed `LocalizedTable` to `LocalizationTable`. - Renamed `LocalizedTableT` to `DetailedLocalizationTable` - Renamed `LocalizedTableCollection` to `LocalizationTableCollection` - Improved error message when a Locale can not be selected during initialization. - Replaced `LocalizedString` `RegisterChangeHandler` and `ClearChangeHandler` with the event `StringChanged`. - Replaced `LocalizedAsset` `RegisterChangeHandler` and `ClearChangeHandler` with the event `AssetChanged`. ### Fixed - Fixed StringTableCollection assets not being set dirty when pulling from a Google Sheet in the editor. ([1240528](https://issuetracker.unity3d.com/issues/undo-does-not-set-assets-dirty-when-using-iserializationcallbackreceiver)) - Fixed StringTableCollection assets not being set dirty when pulling from a Google Sheet in the editor. - Fixed `LocalizedString.GetLocalizedString` not using the argument provided in `LocalizedString.Arguments`. - Fixed serialization errors `Should not occur! Internal logic error: please report bug.` when `Comment Metadata` was attached to the table or shared table data. (LOC-104) - Fixed `LocalizedDatabase.GetTableAsync` trying to load an already loaded `LocalizedTable` when using a GUID TableReference. This was causing preloaded tables to still require some loading. - Fixed "LocalizationSettings has a different serialization layout" error. Moved the `Locale GameView Menu` property from LocalizationSettings to EditorPrefs and moved the menu option into `Preference/Localization`. (LOC-99) - Fixed `GoogleSheets` push not handling Table entries that were missing matching Shared Table Entries, this would cause future rows to be blank. ([LOC-102](https://issuetracker.unity3d.com/product/unity/issues/guid/LOC-102)) - Fixed `NullReferenceException` in `Localization Settings` when Editor window focus was lost and Smart Format properties field was visible. ([LOC-101](https://issuetracker.unity3d.com/product/unity/issues/guid/LOC-101)) - Fixed `Available Locales` not updating when performing an Undo/Redo after adding or removing a Locale. - Fixed `GoogleSheets` push not handling Table entries that were missing matching Shared Table Entries, this would cause future rows to be blank. [LOC-102](https://issuetracker.unity3d.com/product/unity/issues/guid/LOC-102) - `LocalizedString` and `LocalizedAsset` property drawers now remember the expanded state of each Locale field when an Undo/Redo occurs. ([LOC-105](https://issuetracker.unity3d.com/issues/undoing-a-change-to-a-language-in-the-localizedstring-inspector-resets-the-folded-state)) - Added Undo support when adding and removing a table from a `StringTableCollection` or `AssetTableCollection`. When Undo is not used the asset will be set dirty so changes are not lost. ([LOC-107](https://issuetracker.unity3d.com/product/unity/issues/guid/LOC-107)) ## [0.7.1] - 2020-06-05 ### Added - Added `StringTableCollection` and `AssetTableCollection`. These are editor only assets for controlling a collection of string or asset tables. Tables that are not part of a collection will now be ignored. To upgrade old table assets select one and press the `Create Collection` button in the inspector. - Added Google Sheets support. A `StringTableCollection` can by pushed and pulled by using the `Google Sheets Extension` in the editor or through script with the `GoogleSheets` class. Table entry values, comments and metadata can be synced to a Google Sheet. This is currently an Editor only feature. - Added `DisplayName` attribute. This is an optional attribute for `Metadata` and `CollectionExtensions` so that a custom name that can be displayed in the editor instead of the class name. - Added `LocalizationSettings.SelectedLocaleAsync`. This is a safer alternative to `LocalizationSettings.SelectedLocale` as it will ensure that the `AvailableLocales` is initialized. ### Changed - Renamed `LocalizeStringBehaviour` to `LocalizeStringEvent`. - Renamed `LocalizeAudioClipBehaviour` to `LocalizeAudioClipEvent`. - Renamed `LocalizeTextureBehaviour` to `LocalizeTextureEvent`. - Renamed `TableName` to `TableCollectionName`. - The editor class `AssetTableCollection` has been repurposed. Please see the new `StringTableCollection` and `AssetTableCollection` assets. - `LocalizationEditorSettings` has changed: - Replaced `ModificationEvent` with `EditorEvents` class - `AddAssetToTable` and `RemoveAssetFromTable` have been moved to `AssetTableCollection` - Added `GetStringTableCollection`, `GetStringTableCollections`, `GetAssetTableCollection` and `GetAssetTableCollections`. - Removed `RemoveTable`, `GetAssetTables`, `GetAssetTablesCollection`. These features are replaced by `StringTableCollection` and `AssetTableCollection`. - Simplified `ILocalesProvider` interface Only 1 `GetLocale` function is now required. - Updated code Samples to include Creating Locales, Loading Strings, Google Sheets and a Language selection menu example. ### Fixed - Fixed `Asset Tables Window` throwing `NullReferenceException` when editing Metadata for an entry that does not exist in the selected table. - Fixed incorrect installation instructions in documentation. - Fixed `SerializedTableEntryReference` not handling key names correctly, which could cause issues with LocalizedString and LocalizedAsset. (case 1230444) - Fixed `TableReference` returning invalid value for TableName when type is Guid. - Fixed `UpdateString` not being called When a new `LocalizedString` was assigned to `LocalizeStringEvent.StringReference`. - Fixed `UpdateAsset` not being called When a new `LocalizedAsset` was assigned to `LocalizeStringEvent.AssetReference`. - Fixed `LocalizedString` and `LocalizedAsset` trying to localize when they are empty. (case LOC-88) - Localized String editor now clips Locale labels instead of letting them overlap into the preview label. (case LOC-84) - Fixed Available Locales List is not updating when a Locale is added or removed from the project. (case LOC-79) - Fixed `LocalizedAsset` and `LocalizedString` editor not updating when a Locale is added or removed from the project. - Fixed `SharedTableData` Metadata child properties not being visible or editable in the Table Window. (case LOC-85) - Fixed Smart Format toggle field overflowing into Metadata button when Table Window columns were narrow. (case LOC-95) - Fixed `LocalizedStringDatabase` and `LocalizedAssetDatabase` using the `SelectedLocale` before `AvailableLocales` was initialized. (case 1225937) - Fixed Asset Tables losing data due to not being set dirty when a change was made. (case LOC-82) - Fixed ListFormatter Names property going null in player builds.
U
Unity Technologies committed
6049b315339c0938bfa7c7396e6268aca2c61eee
Parent: d414c13