diff --git a/Design/Icon.sketch b/Design/Icon.sketch index 47fa167..405b69b 100644 Binary files a/Design/Icon.sketch and b/Design/Icon.sketch differ diff --git a/Thor.xcodeproj/project.pbxproj b/Thor.xcodeproj/project.pbxproj index 9a4da8b..52049b3 100644 --- a/Thor.xcodeproj/project.pbxproj +++ b/Thor.xcodeproj/project.pbxproj @@ -23,6 +23,7 @@ B2E1B0691CC4CDD100FB687F /* TOLWindowController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2E1B0681CC4CDD100FB687F /* TOLWindowController.swift */; }; B2E1B06B1CC4D49800FB687F /* SettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2E1B06A1CC4D49800FB687F /* SettingsViewController.swift */; }; B2F635FC1CD35BDD00E1232D /* String+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2F635FB1CD35BDD00E1232D /* String+Extension.swift */; }; + E14196061D9F5A7D00ABBD8C /* zh-Hans.lproj in Resources */ = {isa = PBXBuildFile; fileRef = E14196051D9F5A7D00ABBD8C /* zh-Hans.lproj */; }; E166F32B1CE4B7E300F7C7B8 /* StatusItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E166F32A1CE4B7E300F7C7B8 /* StatusItemController.swift */; }; E166F3391CE7801A00F7C7B8 /* ShortcutListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E166F3371CE7801A00F7C7B8 /* ShortcutListViewController.swift */; }; E166F3401CE781EC00F7C7B8 /* ShortcutMonitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = E166F33F1CE781EC00F7C7B8 /* ShortcutMonitor.swift */; }; @@ -49,6 +50,9 @@ B2E1B06A1CC4D49800FB687F /* SettingsViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SettingsViewController.swift; sourceTree = ""; }; B2F635FB1CD35BDD00E1232D /* String+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "String+Extension.swift"; sourceTree = ""; }; DD2E56EBC04CE95CF2361EC5 /* Pods-Thor.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Thor.release.xcconfig"; path = "Pods/Target Support Files/Pods-Thor/Pods-Thor.release.xcconfig"; sourceTree = ""; }; + E1002A331D9F505E00C21721 /* Thor.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Thor.entitlements; sourceTree = ""; }; + E1002A341D9F51C000C21721 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Main.strings"; sourceTree = ""; }; + E14196051D9F5A7D00ABBD8C /* zh-Hans.lproj */ = {isa = PBXFileReference; lastKnownFileType = folder; path = "zh-Hans.lproj"; sourceTree = ""; }; E166F32A1CE4B7E300F7C7B8 /* StatusItemController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StatusItemController.swift; sourceTree = ""; }; E166F3371CE7801A00F7C7B8 /* ShortcutListViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ShortcutListViewController.swift; sourceTree = ""; }; E166F33F1CE781EC00F7C7B8 /* ShortcutMonitor.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ShortcutMonitor.swift; sourceTree = ""; }; @@ -115,6 +119,7 @@ B2E1B0421CC48CD900FB687F /* Thor */ = { isa = PBXGroup; children = ( + E1002A331D9F505E00C21721 /* Thor.entitlements */, B2E1B0431CC48CD900FB687F /* AppDelegate.swift */, B2E1B05A1CC4AE2600FB687F /* Constant.swift */, 638E33F21CFEB2E200069198 /* View */, @@ -125,6 +130,7 @@ B2E1B0471CC48CD900FB687F /* Assets.xcassets */, B2E1B0491CC48CD900FB687F /* Main.storyboard */, B2E1B04C1CC48CD900FB687F /* Info.plist */, + E14196051D9F5A7D00ABBD8C /* zh-Hans.lproj */, ); path = Thor; sourceTree = ""; @@ -206,6 +212,11 @@ DevelopmentTeamName = "Canfeng Zhu"; LastSwiftMigration = 0800; ProvisioningStyle = Automatic; + SystemCapabilities = { + com.apple.Sandbox = { + enabled = 1; + }; + }; }; }; }; @@ -216,6 +227,7 @@ knownRegions = ( en, Base, + "zh-Hans", ); mainGroup = B2E1B0371CC48CD900FB687F; productRefGroup = B2E1B0411CC48CD900FB687F /* Products */; @@ -234,6 +246,7 @@ files = ( B2E1B0481CC48CD900FB687F /* Assets.xcassets in Resources */, B2E1B04B1CC48CD900FB687F /* Main.storyboard in Resources */, + E14196061D9F5A7D00ABBD8C /* zh-Hans.lproj in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -267,7 +280,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; + shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n"; showEnvVarsInLog = 0; }; C2B7AC12A16E17D5ED1AAF25 /* [CP] Copy Pods Resources */ = { @@ -318,6 +331,7 @@ isa = PBXVariantGroup; children = ( B2E1B04A1CC48CD900FB687F /* Base */, + E1002A341D9F51C000C21721 /* zh-Hans */, ); name = Main.storyboard; sourceTree = ""; @@ -329,6 +343,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; @@ -339,8 +354,10 @@ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CODE_SIGN_IDENTITY = "-"; @@ -374,6 +391,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; @@ -384,8 +402,10 @@ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CODE_SIGN_IDENTITY = "-"; @@ -414,6 +434,7 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Thor/Thor.entitlements; CODE_SIGN_IDENTITY = "Mac Developer"; COMBINE_HIDPI_IMAGES = YES; INFOPLIST_FILE = Thor/Info.plist; @@ -435,6 +456,7 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Thor/Thor.entitlements; CODE_SIGN_IDENTITY = "Mac Developer"; COMBINE_HIDPI_IMAGES = YES; INFOPLIST_FILE = Thor/Info.plist; diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/128x128.png b/Thor/Assets.xcassets/AppIcon.appiconset/128x128.png deleted file mode 100644 index 558f48d..0000000 Binary files a/Thor/Assets.xcassets/AppIcon.appiconset/128x128.png and /dev/null differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/16x16.png b/Thor/Assets.xcassets/AppIcon.appiconset/16x16.png deleted file mode 100644 index e575af0..0000000 Binary files a/Thor/Assets.xcassets/AppIcon.appiconset/16x16.png and /dev/null differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/256x256-1.png b/Thor/Assets.xcassets/AppIcon.appiconset/256x256-1.png deleted file mode 100644 index 98daeff..0000000 Binary files a/Thor/Assets.xcassets/AppIcon.appiconset/256x256-1.png and /dev/null differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/256x256.png b/Thor/Assets.xcassets/AppIcon.appiconset/256x256.png deleted file mode 100644 index 98daeff..0000000 Binary files a/Thor/Assets.xcassets/AppIcon.appiconset/256x256.png and /dev/null differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/32x32-1.png b/Thor/Assets.xcassets/AppIcon.appiconset/32x32-1.png deleted file mode 100644 index 697d633..0000000 Binary files a/Thor/Assets.xcassets/AppIcon.appiconset/32x32-1.png and /dev/null differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/32x32.png b/Thor/Assets.xcassets/AppIcon.appiconset/32x32.png deleted file mode 100644 index 697d633..0000000 Binary files a/Thor/Assets.xcassets/AppIcon.appiconset/32x32.png and /dev/null differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/512x512-1.png b/Thor/Assets.xcassets/AppIcon.appiconset/512x512-1.png deleted file mode 100644 index 384ce56..0000000 Binary files a/Thor/Assets.xcassets/AppIcon.appiconset/512x512-1.png and /dev/null differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/512x512.png b/Thor/Assets.xcassets/AppIcon.appiconset/512x512.png deleted file mode 100644 index 384ce56..0000000 Binary files a/Thor/Assets.xcassets/AppIcon.appiconset/512x512.png and /dev/null differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/64x64.png b/Thor/Assets.xcassets/AppIcon.appiconset/64x64.png deleted file mode 100644 index 66e4b5d..0000000 Binary files a/Thor/Assets.xcassets/AppIcon.appiconset/64x64.png and /dev/null differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/Contents.json b/Thor/Assets.xcassets/AppIcon.appiconset/Contents.json index 3272dc1..af6b856 100644 --- a/Thor/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/Thor/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -3,61 +3,61 @@ { "size" : "16x16", "idiom" : "mac", - "filename" : "16x16.png", + "filename" : "MAS-16.png", "scale" : "1x" }, { "size" : "16x16", "idiom" : "mac", - "filename" : "32x32-1.png", + "filename" : "MAS-33.png", "scale" : "2x" }, { "size" : "32x32", "idiom" : "mac", - "filename" : "32x32.png", + "filename" : "MAS-32.png", "scale" : "1x" }, { "size" : "32x32", "idiom" : "mac", - "filename" : "64x64.png", + "filename" : "MAS-64.png", "scale" : "2x" }, { "size" : "128x128", "idiom" : "mac", - "filename" : "128x128.png", + "filename" : "MAS-128.png", "scale" : "1x" }, { "size" : "128x128", "idiom" : "mac", - "filename" : "256x256-1.png", + "filename" : "MAS-257.png", "scale" : "2x" }, { "size" : "256x256", "idiom" : "mac", - "filename" : "256x256.png", + "filename" : "MAS-256.png", "scale" : "1x" }, { "size" : "256x256", "idiom" : "mac", - "filename" : "512x512-1.png", + "filename" : "MAS-513.png", "scale" : "2x" }, { "size" : "512x512", "idiom" : "mac", - "filename" : "512x512.png", + "filename" : "MAS-512.png", "scale" : "1x" }, { "size" : "512x512", "idiom" : "mac", - "filename" : "Icon.png", + "filename" : "MAS.png", "scale" : "2x" } ], diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/Icon.png b/Thor/Assets.xcassets/AppIcon.appiconset/Icon.png deleted file mode 100644 index c8ba9ef..0000000 Binary files a/Thor/Assets.xcassets/AppIcon.appiconset/Icon.png and /dev/null differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/MAS-128.png b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-128.png new file mode 100644 index 0000000..79b192c Binary files /dev/null and b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-128.png differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/MAS-16.png b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-16.png new file mode 100644 index 0000000..e541d71 Binary files /dev/null and b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-16.png differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/MAS-256.png b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-256.png new file mode 100644 index 0000000..f90f383 Binary files /dev/null and b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-256.png differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/MAS-257.png b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-257.png new file mode 100644 index 0000000..f90f383 Binary files /dev/null and b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-257.png differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/MAS-32.png b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-32.png new file mode 100644 index 0000000..65451d5 Binary files /dev/null and b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-32.png differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/MAS-33.png b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-33.png new file mode 100644 index 0000000..65451d5 Binary files /dev/null and b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-33.png differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/MAS-512.png b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-512.png new file mode 100644 index 0000000..ed97421 Binary files /dev/null and b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-512.png differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/MAS-513.png b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-513.png new file mode 100644 index 0000000..ed97421 Binary files /dev/null and b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-513.png differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/MAS-64.png b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-64.png new file mode 100644 index 0000000..6a612e0 Binary files /dev/null and b/Thor/Assets.xcassets/AppIcon.appiconset/MAS-64.png differ diff --git a/Thor/Assets.xcassets/AppIcon.appiconset/MAS.png b/Thor/Assets.xcassets/AppIcon.appiconset/MAS.png new file mode 100644 index 0000000..b015477 Binary files /dev/null and b/Thor/Assets.xcassets/AppIcon.appiconset/MAS.png differ diff --git a/Thor/Base.lproj/Main.storyboard b/Thor/Base.lproj/Main.storyboard index c05c184..56612b9 100644 --- a/Thor/Base.lproj/Main.storyboard +++ b/Thor/Base.lproj/Main.storyboard @@ -1,7 +1,7 @@ - - + + - + @@ -79,6 +79,7 @@ + @@ -189,7 +190,7 @@ - + @@ -260,9 +261,8 @@ - - + @@ -304,6 +304,7 @@ + @@ -321,7 +323,8 @@ - + + @@ -330,6 +333,7 @@ + @@ -338,6 +342,7 @@ + @@ -356,6 +362,7 @@ + @@ -374,6 +382,7 @@ + @@ -382,6 +391,7 @@ + @@ -390,6 +400,7 @@ + @@ -398,6 +409,7 @@ + diff --git a/Thor/Info.plist b/Thor/Info.plist index ffbf996..ed656ae 100644 --- a/Thor/Info.plist +++ b/Thor/Info.plist @@ -17,11 +17,13 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.1.1 + 1.2.0 CFBundleSignature ???? CFBundleVersion - 5 + 6 + LSApplicationCategoryType + public.app-category.utilities LSMinimumSystemVersion $(MACOSX_DEPLOYMENT_TARGET) LSUIElement diff --git a/Thor/StatusItemController.swift b/Thor/StatusItemController.swift index 8e3cb9d..80e2c6e 100644 --- a/Thor/StatusItemController.swift +++ b/Thor/StatusItemController.swift @@ -17,6 +17,7 @@ class StatusItemController: NSObject, NSMenuDelegate { @IBOutlet weak var statusMenu: NSMenu! @IBOutlet weak var versionMenuItem: NSMenuItem! + @IBOutlet weak var updateMenuItem: NSMenuItem! // MARK: Life cycle diff --git a/Thor/Thor.entitlements b/Thor/Thor.entitlements new file mode 100644 index 0000000..18aff0c --- /dev/null +++ b/Thor/Thor.entitlements @@ -0,0 +1,10 @@ + + + + + com.apple.security.app-sandbox + + com.apple.security.files.user-selected.read-only + + + diff --git a/Thor/zh-Hans.lproj/Localizable.strings b/Thor/zh-Hans.lproj/Localizable.strings new file mode 100644 index 0000000..db0cadb --- /dev/null +++ b/Thor/zh-Hans.lproj/Localizable.strings @@ -0,0 +1,13 @@ +/* + Localizable.strings + Thor + + Created by Alvin on 2016/10/1. + Copyright © 2016年 AlvinZhu. All rights reserved. +*/ + +"Sure" = "确定"; + +"Cancel" = "取消"; + +"Delete this shortcut?" = "确定删除该快捷键?"; diff --git a/Thor/zh-Hans.lproj/Main.strings b/Thor/zh-Hans.lproj/Main.strings new file mode 100644 index 0000000..61bea4b --- /dev/null +++ b/Thor/zh-Hans.lproj/Main.strings @@ -0,0 +1,102 @@ + +/* Class = "NSMenuItem"; title = "Thor"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "Thor"; + +/* Class = "NSTextFieldCell"; title = "Reactivate after:"; ObjectID = "1fT-Qh-dE2"; */ +"1fT-Qh-dE2.title" = "几秒后重新激活:"; + +/* Class = "NSButtonCell"; title = "Quit Thor"; ObjectID = "2nX-9N-OOj"; */ +"2nX-9N-OOj.title" = "退出 Thor"; + +/* Class = "NSMenuItem"; title = "Quit Thor"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "退出 Thor"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "主窗口"; + +/* Class = "NSMenu"; title = "OtherViews"; ObjectID = "Hcy-Ge-ZoW"; */ +"Hcy-Ge-ZoW.title" = "其它视图"; + +/* Class = "NSWindow"; title = "Window"; ObjectID = "IQv-IB-iLA"; */ +"IQv-IB-iLA.title" = "窗口"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "显示全部"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "前置全部窗口"; + +/* Class = "NSMenuItem"; title = "Preference"; ObjectID = "LOh-9N-Sq4"; */ +"LOh-9N-Sq4.title" = "设置快捷键"; + +/* Class = "NSMenuItem"; title = "⌃ Control Key"; ObjectID = "NL4-zo-fys"; */ +"NL4-zo-fys.title" = "⌃ Control 键"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "最小化"; + +/* Class = "NSMenuItem"; title = "Hide Thor"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "隐藏 Thor"; + +/* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "Orv-4t-jpB"; */ +"Orv-4t-jpB.title" = "Text Cell"; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "最大化"; + +/* Class = "NSTextFieldCell"; title = "0.1s"; ObjectID = "RmK-si-Zsx"; */ +"RmK-si-Zsx.title" = "0.1秒"; + +/* Class = "NSMenuItem"; title = "Quit"; ObjectID = "RwK-Ds-RBj"; */ +"RwK-Ds-RBj.title" = "退出"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "窗口"; + +/* Class = "NSTextFieldCell"; title = "1s"; ObjectID = "UpG-OL-d8P"; */ +"UpG-OL-d8P.title" = "1秒"; + +/* Class = "NSButtonCell"; title = "Launch Thor at login"; ObjectID = "Uwv-xu-Spi"; */ +"Uwv-xu-Spi.title" = "开机后启动 Thor"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "隐藏其它应用"; + +/* Class = "NSMenuItem"; title = "⌘ Command Key"; ObjectID = "Yef-Cj-gO1"; */ +"Yef-Cj-gO1.title" = "⌘ Command 键"; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "窗口"; + +/* Class = "NSMenuItem"; title = "Check for updates"; ObjectID = "b8r-Yq-V8b"; */ +"b8r-Yq-V8b.title" = "检查更新"; + +/* Class = "NSTextFieldCell"; title = "Enable:"; ObjectID = "cu5-Zh-kYl"; */ +"cu5-Zh-kYl.title" = "开启:"; + +/* Class = "NSButtonCell"; title = "Enable shortcut"; ObjectID = "fya-Hu-agS"; */ +"fya-Hu-agS.title" = "开启快捷键"; + +/* Class = "NSMenuItem"; title = "⌥ Option Key"; ObjectID = "ltM-LE-FOy"; */ +"ltM-LE-FOy.title" = "⌥ Option 键"; + +/* Class = "NSMenuItem"; title = "Version"; ObjectID = "ong-Un-zmC"; */ +"ong-Un-zmC.title" = "版本号"; + +/* Class = "NSMenuItem"; title = "⇧ Shift Key"; ObjectID = "qJu-sX-5Pd"; */ +"qJu-sX-5Pd.title" = "⇧ Shift 键"; + +/* Class = "NSTextFieldCell"; title = "Table View Cell"; ObjectID = "qh3-lo-MgL"; */ +"qh3-lo-MgL.title" = "Table View Cell"; + +/* Class = "NSTextFieldCell"; title = "Startup:"; ObjectID = "rKg-Oa-Jg1"; */ +"rKg-Oa-Jg1.title" = "启动:"; + +/* Class = "NSMenu"; title = "Thor"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "Thor"; + +/* Class = "NSTextFieldCell"; title = "Deactivate Key:"; ObjectID = "uWp-Ys-dhU"; */ +"uWp-Ys-dhU.title" = "解除激活键:"; + +/* Class = "NSTextFieldCell"; title = "Double tap will deactivate the Shortcuts"; ObjectID = "yod-j7-EUV"; */ +"yod-j7-EUV.title" = "双击将会临时解除激活快捷键";