diff --git a/Resources/Info.plist b/Resources/Info.plist index 3b9dfbd..c4bb282 100644 --- a/Resources/Info.plist +++ b/Resources/Info.plist @@ -11,9 +11,9 @@ CFBundleExecutable Signal CFBundleVersion - 1.0.0 + 1.0.1 CFBundleShortVersionString - 1.0.0 + 1.0.1 CFBundlePackageType APPL CFBundleIconFile diff --git a/Resources/en.lproj/Localizable.strings b/Resources/en.lproj/Localizable.strings index b12c6fb..89f1691 100644 --- a/Resources/en.lproj/Localizable.strings +++ b/Resources/en.lproj/Localizable.strings @@ -14,3 +14,17 @@ "Project" = "Project"; "User Prompts" = "User Prompts"; "Back" = "Back"; +"Breathes every %.1fs" = "Breathes every %.1fs"; +"Only Red and Yellow breathe" = "Only Red and Yellow breathe"; +"Launch automatically on startup" = "Launch automatically on startup"; +"CLI Helper Tool" = "CLI Helper Tool"; +"Control Signal directly from your terminal or scripts using the sgnl tool." = "Control Signal directly from your terminal or scripts using the sgnl tool."; +"Install 'sgnl' CLI Command" = "Install 'sgnl' CLI Command"; +"Session ID:" = "Session ID:"; +"Installation Successful" = "Installation Successful"; +"The 'sgnl' command-line tool has been installed to:\n%@\n\nPlease make sure '%@' is in your PATH." = "The 'sgnl' command-line tool has been installed to:\n%@\n\nPlease make sure '%@' is in your PATH."; +"Installation Failed" = "Installation Failed"; +"Could not locate the 'sgnl' binary inside the application bundle resources." = "Could not locate the 'sgnl' binary inside the application bundle resources."; +"An error occurred during installation:\n%@" = "An error occurred during installation:\n%@"; +"OK" = "OK"; + diff --git a/Resources/zh-Hans.lproj/Localizable.strings b/Resources/zh-Hans.lproj/Localizable.strings index cd9ce0e..f183d46 100644 --- a/Resources/zh-Hans.lproj/Localizable.strings +++ b/Resources/zh-Hans.lproj/Localizable.strings @@ -14,3 +14,17 @@ "Project" = "项目"; "User Prompts" = "用户输入"; "Back" = "返回"; +"Breathes every %.1fs" = "每 %.1f 秒呼吸一次"; +"Only Red and Yellow breathe" = "仅红灯和黄灯支持呼吸效果"; +"Launch automatically on startup" = "开机时自动启动"; +"CLI Helper Tool" = "命令行辅助工具"; +"Control Signal directly from your terminal or scripts using the sgnl tool." = "使用 sgnl 工具直接从终端或脚本控制 Signal。"; +"Install 'sgnl' CLI Command" = "安装 'sgnl' 命令行工具"; +"Session ID:" = "会话 ID:"; +"Installation Successful" = "安装成功"; +"The 'sgnl' command-line tool has been installed to:\n%@\n\nPlease make sure '%@' is in your PATH." = "sgnl 命令行工具已成功安装至:\n%@\n\n请确保将 '%@' 添加到了您的 PATH 环境变量中。"; +"Installation Failed" = "安装失败"; +"Could not locate the 'sgnl' binary inside the application bundle resources." = "无法在应用包资源中找到 'sgnl' 二进制文件。"; +"An error occurred during installation:\n%@" = "安装过程中发生错误:\n%@"; +"OK" = "确定"; + diff --git a/Sources/Signal/AppDelegate.swift b/Sources/Signal/AppDelegate.swift index bd24b10..3429349 100644 --- a/Sources/Signal/AppDelegate.swift +++ b/Sources/Signal/AppDelegate.swift @@ -143,7 +143,7 @@ class AppDelegate: NSObject, NSApplicationDelegate { let targetURL = targetDir.appendingPathComponent("sgnl") guard let sourceURL = Bundle.main.url(forResource: "sgnl", withExtension: nil) else { - showCLIError(message: "Could not locate the 'sgnl' binary inside the application bundle resources.") + showCLIError(message: NSLocalizedString("Could not locate the 'sgnl' binary inside the application bundle resources.", comment: "")) return } @@ -166,23 +166,25 @@ class AppDelegate: NSObject, NSApplicationDelegate { // Show success alert let alert = NSAlert() - alert.messageText = "Installation Successful" - alert.informativeText = "The 'sgnl' command-line tool has been installed to:\n\(targetURL.path)\n\nPlease make sure '\(targetDir.path)' is in your PATH." + alert.messageText = NSLocalizedString("Installation Successful", comment: "") + let format = NSLocalizedString("The 'sgnl' command-line tool has been installed to:\n%@\n\nPlease make sure '%@' is in your PATH.", comment: "") + alert.informativeText = String(format: format, targetURL.path, targetDir.path) alert.alertStyle = .informational - alert.addButton(withTitle: "OK") + alert.addButton(withTitle: NSLocalizedString("OK", comment: "")) alert.runModal() } catch { - showCLIError(message: "An error occurred during installation:\n\(error.localizedDescription)") + let format = NSLocalizedString("An error occurred during installation:\n%@", comment: "") + showCLIError(message: String(format: format, error.localizedDescription)) } } private func showCLIError(message: String) { let alert = NSAlert() - alert.messageText = "Installation Failed" + alert.messageText = NSLocalizedString("Installation Failed", comment: "") alert.informativeText = message alert.alertStyle = .critical - alert.addButton(withTitle: "OK") + alert.addButton(withTitle: NSLocalizedString("OK", comment: "")) alert.runModal() } diff --git a/Sources/Signal/Views/ClaudeDetailView.swift b/Sources/Signal/Views/ClaudeDetailView.swift index 6d2ee6c..10cd131 100644 --- a/Sources/Signal/Views/ClaudeDetailView.swift +++ b/Sources/Signal/Views/ClaudeDetailView.swift @@ -63,7 +63,7 @@ struct ClaudeDetailView: View { } HStack { - Text("Session ID:") + Text(NSLocalizedString("Session ID:", comment: "")) .font(.system(size: 10, weight: .bold)) .foregroundColor(.secondary) Text(session.sessionId)