diff --git a/sources/LocalizationEditor.xcodeproj/project.pbxproj b/sources/LocalizationEditor.xcodeproj/project.pbxproj index 9eea822..b91138b 100644 --- a/sources/LocalizationEditor.xcodeproj/project.pbxproj +++ b/sources/LocalizationEditor.xcodeproj/project.pbxproj @@ -83,6 +83,7 @@ /* Begin PBXFileReference section */ 172274D320D933970036EA4E /* LocalizationGroup.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LocalizationGroup.swift; sourceTree = ""; }; + 9645AAD52361A3DC00968C00 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "../zh-Hans.lproj/Localizable.strings"; sourceTree = ""; }; A117B6AC21D0FFC0008F10E4 /* LocalizableStrings-en-with-complete-messages.strings */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; path = "LocalizableStrings-en-with-complete-messages.strings"; sourceTree = ""; }; A117B6AE21D10060008F10E4 /* LocalizableStrings-en-with-incomplete-messages.strings */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; path = "LocalizableStrings-en-with-incomplete-messages.strings"; sourceTree = ""; }; A15A5A4121D908C400D3C791 /* Parser.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Parser.swift; sourceTree = ""; }; @@ -376,6 +377,7 @@ knownRegions = ( en, Base, + "zh-Hans", ); mainGroup = F3D9C93920BEC7460081830A; productRefGroup = F3D9C94320BEC7460081830A /* Products */; @@ -514,6 +516,7 @@ isa = PBXVariantGroup; children = ( F3AD2CDD23619E5C00558765 /* en */, + 9645AAD52361A3DC00968C00 /* zh-Hans */, ); name = Localizable.strings; sourceTree = ""; @@ -533,6 +536,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; @@ -592,6 +596,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; diff --git a/sources/LocalizationEditor/UI/Base.lproj/Main.storyboard b/sources/LocalizationEditor/UI/Base.lproj/Main.storyboard index 29b58ba..3758c4b 100644 --- a/sources/LocalizationEditor/UI/Base.lproj/Main.storyboard +++ b/sources/LocalizationEditor/UI/Base.lproj/Main.storyboard @@ -247,7 +247,7 @@ - + @@ -298,7 +298,7 @@ - + @@ -360,7 +360,7 @@ - + diff --git a/sources/LocalizationEditor/UI/Cells/ActionsCell.swift b/sources/LocalizationEditor/UI/Cells/ActionsCell.swift index 04179c2..d44fc5a 100644 --- a/sources/LocalizationEditor/UI/Cells/ActionsCell.swift +++ b/sources/LocalizationEditor/UI/Cells/ActionsCell.swift @@ -28,6 +28,7 @@ final class ActionsCell: NSTableCellView { super.awakeFromNib() deleteButton.image = NSImage(named: NSImage.stopProgressTemplateName) + deleteButton.toolTip = "delete".localized } @IBAction private func removalClicked(_ sender: NSButton) { diff --git a/sources/LocalizationEditor/UI/WindowController.swift b/sources/LocalizationEditor/UI/WindowController.swift index 9993196..d7471b3 100644 --- a/sources/LocalizationEditor/UI/WindowController.swift +++ b/sources/LocalizationEditor/UI/WindowController.swift @@ -85,6 +85,7 @@ final class WindowController: NSWindowController { private func setupUI() { openButton.image = NSImage(named: NSImage.folderName) openButton.toolTip = "open_folder".localized + searchField.toolTip = "search".localized filterButton.toolTip = "filter".localized selectButton.toolTip = "string_table".localized newButton.toolTip = "new_translation".localized diff --git a/sources/LocalizationEditor/en.lproj/Localizable.strings b/sources/LocalizationEditor/en.lproj/Localizable.strings index 8d5f71c..048e7fa 100644 --- a/sources/LocalizationEditor/en.lproj/Localizable.strings +++ b/sources/LocalizationEditor/en.lproj/Localizable.strings @@ -26,6 +26,7 @@ "all" = "All"; "missing" = "Missing"; "actions" = "Actions"; +"delete" = "Delete"; "open_folder" = "Open folder"; "filter" = "Filter"; "string_table" = "String table"; diff --git a/sources/LocalizationEditor/zh-Hans.lproj/Localizable.strings b/sources/LocalizationEditor/zh-Hans.lproj/Localizable.strings new file mode 100644 index 0000000..3def4d9 --- /dev/null +++ b/sources/LocalizationEditor/zh-Hans.lproj/Localizable.strings @@ -0,0 +1,41 @@ +/* + Localizable.strings + LocalizationEditor + + Created by Igor Kulman on 24/10/2019. + Copyright © 2019 Igor Kulman. All rights reserved. +*/ + +"key" = "Key"; +"comment" = "Comment"; +"cancel" = "取消"; +"add" = "添加"; +"view" = "视图"; +"file" = "文件"; +"open_folder_with" = "打开带有本地化文件的文件夹..."; +"edit" = "编辑"; +"cut" = "剪切"; +"copy" = "复制"; +"paste" = "粘贴"; +"select_all" = "选择全部"; +"enter_full_screen" = "进入全屏幕"; +"window" = "窗口"; +"minimize" = "最小化"; +"bring_all_to_front" = "前置全部窗口"; +"zoom" = "缩放"; +"all" = "全部"; +"missing" = "缺失"; +"actions" = "动作"; +"delete" = "删除"; +"open_folder" = "打开文件夹"; +"filter" = "筛选"; +"string_table" = "字符串表"; +"new_translation" = "新的翻译"; +"search" = "搜索"; +"open_folder_first" = "请先打开文件夹"; +"about" = "关于 LocalizationEditor"; +"quit" = "退出 LocalizationEditor"; +"show_all" = "显示全部"; +"services" = "服务"; +"hide_others" = "隐藏其他"; +"hide_editor" = "隐藏 LocalizationEditor";