From 62a84ab28f5f7c25f79ac79c947107ade20257b8 Mon Sep 17 00:00:00 2001 From: Peter Chen Date: Tue, 16 Dec 2025 16:21:36 +0800 Subject: [PATCH] Revised 2 strings to move punctual marks into strings for localizability; add zh-TW l10n 1. String `File`: move post-string colon into string, and updated translation in all locale resource files 2. String `SameDirMassage`: replaced with `ShortcutHelperMissing`, English string was added into into all locale resource files except zh-TW 3. Add full zh-TW translation --- src/.build/lessmsi.msbuild | 4 + src/LessMsi.Gui/LessMsi.Gui.csproj | 3 +- src/LessMsi.Gui/MainForm.cs | 2 +- src/LessMsi.Gui/PreferencesForm.cs | 9 +- .../Resources/Languages/Strings.Designer.cs | 20 +- .../Resources/Languages/Strings.de.resx | 8 +- .../Resources/Languages/Strings.es.resx | 8 +- .../Resources/Languages/Strings.fr.resx | 8 +- .../Resources/Languages/Strings.it.resx | 8 +- .../Resources/Languages/Strings.ja.resx | 10 +- .../Resources/Languages/Strings.ko.resx | 8 +- .../Resources/Languages/Strings.pl.resx | 8 +- .../Resources/Languages/Strings.pt.resx | 8 +- .../Resources/Languages/Strings.resx | 8 +- .../Resources/Languages/Strings.sq.resx | 8 +- .../Resources/Languages/Strings.zh-TW.resx | 303 ++++++++++++++++++ 16 files changed, 365 insertions(+), 58 deletions(-) create mode 100644 src/LessMsi.Gui/Resources/Languages/Strings.zh-TW.resx diff --git a/src/.build/lessmsi.msbuild b/src/.build/lessmsi.msbuild index 515cad2..e801dce 100644 --- a/src/.build/lessmsi.msbuild +++ b/src/.build/lessmsi.msbuild @@ -76,6 +76,10 @@ ko + + + zh-TW + diff --git a/src/LessMsi.Gui/LessMsi.Gui.csproj b/src/LessMsi.Gui/LessMsi.Gui.csproj index ef33718..da59659 100644 --- a/src/LessMsi.Gui/LessMsi.Gui.csproj +++ b/src/LessMsi.Gui/LessMsi.Gui.csproj @@ -163,8 +163,9 @@ - + + ResXFileCodeGenerator Strings.Designer.cs diff --git a/src/LessMsi.Gui/MainForm.cs b/src/LessMsi.Gui/MainForm.cs index 3d6d874..cca2a63 100644 --- a/src/LessMsi.Gui/MainForm.cs +++ b/src/LessMsi.Gui/MainForm.cs @@ -377,7 +377,7 @@ private void InitializeComponent() this.lblFile.AutoSize = true; this.lblFile.Name = "lblFile"; this.lblFile.TabIndex = 1; - this.lblFile.Text = $"{Strings.File}:"; + this.lblFile.Text = $"{Strings.File}"; this.lblFile.Margin = new Padding(13, 0, 0, 0); this.lblFile.Anchor = System.Windows.Forms.AnchorStyles.Left; // diff --git a/src/LessMsi.Gui/PreferencesForm.cs b/src/LessMsi.Gui/PreferencesForm.cs index 521a24d..07d818f 100644 --- a/src/LessMsi.Gui/PreferencesForm.cs +++ b/src/LessMsi.Gui/PreferencesForm.cs @@ -80,11 +80,10 @@ void AddRemoveShortcut(bool isAdding, string commandName, string fileClass, stri if (!File.Exists(shortcutHelperExe)) { MessageBox.Show(this, - $"{Strings.File} '" + Path.GetFileNameWithoutExtension(shortcutHelperExe) + - $"' {Strings.SameDirMassage} lessmsi-gui.exe.", - Strings.MissingFile, - MessageBoxButtons.OK, - MessageBoxIcon.Error); + string.Format(Strings.ShortcutHelperMissing, Path.GetFileNameWithoutExtension(shortcutHelperExe), "lessmsi-gui.exe"), + Strings.MissingFile, + MessageBoxButtons.OK, + MessageBoxIcon.Error); return; } var newProcess = new Process(); diff --git a/src/LessMsi.Gui/Resources/Languages/Strings.Designer.cs b/src/LessMsi.Gui/Resources/Languages/Strings.Designer.cs index 07c0173..a5e1e8b 100644 --- a/src/LessMsi.Gui/Resources/Languages/Strings.Designer.cs +++ b/src/LessMsi.Gui/Resources/Languages/Strings.Designer.cs @@ -241,7 +241,7 @@ internal static string ExtractStreamFiles { } /// - /// Looks up a localized string similar to File. + /// Looks up a localized string similar to File:. /// internal static string File { get { @@ -438,15 +438,6 @@ internal static string RemoveShortcutTextNote { } } - /// - /// Looks up a localized string similar to should be in the same directory as. - /// - internal static string SameDirMassage { - get { - return ResourceManager.GetString("SameDirMassage", resourceCulture); - } - } - /// /// Looks up a localized string similar to Search:. /// @@ -608,5 +599,14 @@ internal static string ViewTableError { return ResourceManager.GetString("ViewTableError", resourceCulture); } } + + /// + /// Looks up a localized string similar to File '{0}' should be in the same directory as '{1}'. + /// + internal static string ShortcutHelperMissing { + get { + return ResourceManager.GetString("ShortcutHelperMissing", resourceCulture); + } + } } } diff --git a/src/LessMsi.Gui/Resources/Languages/Strings.de.resx b/src/LessMsi.Gui/Resources/Languages/Strings.de.resx index 290a2b0..5ee064a 100644 --- a/src/LessMsi.Gui/Resources/Languages/Strings.de.resx +++ b/src/LessMsi.Gui/Resources/Languages/Strings.de.resx @@ -178,7 +178,7 @@ Stream-Dateien extrahieren... - Datei + Datei: Datei '{0}' existiert nicht @@ -243,9 +243,6 @@ Entfernt das Kontextmenü, falls vorhanden - - sollte im selben Verzeichnis liegen wie - Suche: @@ -300,4 +297,7 @@ Tabelle kann nicht angezeigt werden + + File '{0}' should be in the same directory as '{1}'. + \ No newline at end of file diff --git a/src/LessMsi.Gui/Resources/Languages/Strings.es.resx b/src/LessMsi.Gui/Resources/Languages/Strings.es.resx index 34d5163..f65c80e 100644 --- a/src/LessMsi.Gui/Resources/Languages/Strings.es.resx +++ b/src/LessMsi.Gui/Resources/Languages/Strings.es.resx @@ -178,7 +178,7 @@ Extrayendo archivos del flujo de datos... - Archivo + Archivo: El archivo '{0}' no existe @@ -243,9 +243,6 @@ Elimina el menú contextual si existe - - debe estar en el mismo directorio que - Buscar: @@ -300,4 +297,7 @@ No se puede ver la tabla + + File '{0}' should be in the same directory as '{1}'. + \ No newline at end of file diff --git a/src/LessMsi.Gui/Resources/Languages/Strings.fr.resx b/src/LessMsi.Gui/Resources/Languages/Strings.fr.resx index 0e79514..5eec51b 100644 --- a/src/LessMsi.Gui/Resources/Languages/Strings.fr.resx +++ b/src/LessMsi.Gui/Resources/Languages/Strings.fr.resx @@ -178,7 +178,7 @@ Extraire des fichiers de flux... - Fichier + Fichier: Le fichier '{0}' n'existe pas @@ -243,9 +243,6 @@ Supprime le menu contextuel s'il existe - - doit être dans le même répertoire que - Recherche: @@ -300,4 +297,7 @@ Impossible de visualiser la table + + File '{0}' should be in the same directory as '{1}'. + \ No newline at end of file diff --git a/src/LessMsi.Gui/Resources/Languages/Strings.it.resx b/src/LessMsi.Gui/Resources/Languages/Strings.it.resx index 30e774a..375d33a 100644 --- a/src/LessMsi.Gui/Resources/Languages/Strings.it.resx +++ b/src/LessMsi.Gui/Resources/Languages/Strings.it.resx @@ -178,7 +178,7 @@ Estrai file flussi... - File + File: File '{0}' non esiste @@ -243,9 +243,6 @@ Rimuovi se esistono voci menu contestuale explorer - - deve essere nella stessa cartella di - Cerca: @@ -300,4 +297,7 @@ Impossibile visualizzare la tabella + + File '{0}' should be in the same directory as '{1}'. + \ No newline at end of file diff --git a/src/LessMsi.Gui/Resources/Languages/Strings.ja.resx b/src/LessMsi.Gui/Resources/Languages/Strings.ja.resx index fbc7e51..dbf3866 100644 --- a/src/LessMsi.Gui/Resources/Languages/Strings.ja.resx +++ b/src/LessMsi.Gui/Resources/Languages/Strings.ja.resx @@ -178,7 +178,7 @@ ストリームファイルの抽出... - ファイル + ファイル : ファイル '{0}' は存在しません @@ -243,9 +243,6 @@ コンテキストメニューが存在する場合は削除します - - 同じディレクトリにある必要があります - 検索 : @@ -300,4 +297,7 @@ テーブルを表示できません - + + File '{0}' should be in the same directory as '{1}'. + + \ No newline at end of file diff --git a/src/LessMsi.Gui/Resources/Languages/Strings.ko.resx b/src/LessMsi.Gui/Resources/Languages/Strings.ko.resx index af1d359..b8e1179 100644 --- a/src/LessMsi.Gui/Resources/Languages/Strings.ko.resx +++ b/src/LessMsi.Gui/Resources/Languages/Strings.ko.resx @@ -178,7 +178,7 @@ 스트림 파일 추출... - 파일 + 파일: '{0}' 파일이 존재하지 않습니다 @@ -243,9 +243,6 @@ 컨텍스트 메뉴가 있는 경우 해당 메뉴 제거 - - 다음 디렉터리와 동일해야 합니다 - 검색: @@ -300,4 +297,7 @@ 테이블을 볼 수 없습니다 + + File '{0}' should be in the same directory as '{1}'. + \ No newline at end of file diff --git a/src/LessMsi.Gui/Resources/Languages/Strings.pl.resx b/src/LessMsi.Gui/Resources/Languages/Strings.pl.resx index 915af05..89eea5f 100644 --- a/src/LessMsi.Gui/Resources/Languages/Strings.pl.resx +++ b/src/LessMsi.Gui/Resources/Languages/Strings.pl.resx @@ -178,7 +178,7 @@ Wypakuj pliki strumienia... - Plik + Plik: Plik '{0}' nie istnieje @@ -243,9 +243,6 @@ Usuwa opcje menu kontekstowego, jeśli istnieją - - powinien znajdować się w tym samym katalogu co - Szukaj: @@ -300,4 +297,7 @@ Nie można wyświetlić tabeli + + File '{0}' should be in the same directory as '{1}'. + \ No newline at end of file diff --git a/src/LessMsi.Gui/Resources/Languages/Strings.pt.resx b/src/LessMsi.Gui/Resources/Languages/Strings.pt.resx index 8106441..a6f0469 100644 --- a/src/LessMsi.Gui/Resources/Languages/Strings.pt.resx +++ b/src/LessMsi.Gui/Resources/Languages/Strings.pt.resx @@ -178,7 +178,7 @@ Extrair arquivos de fluxo... - Arquivo + Arquivo: O arquivo '{0}' não existe @@ -243,9 +243,6 @@ Remove o menu de contexto se ele existir - - deve estar na mesma pasta que - Pesquisar @@ -300,4 +297,7 @@ Não é possível visualizar a tabela + + File '{0}' should be in the same directory as '{1}'. + \ No newline at end of file diff --git a/src/LessMsi.Gui/Resources/Languages/Strings.resx b/src/LessMsi.Gui/Resources/Languages/Strings.resx index f2caa05..ad97ca4 100644 --- a/src/LessMsi.Gui/Resources/Languages/Strings.resx +++ b/src/LessMsi.Gui/Resources/Languages/Strings.resx @@ -178,7 +178,7 @@ Extract Stream Files... - File + File: File '{0}' does not exist @@ -243,9 +243,6 @@ Removes the context menu if it exists - - should be in the same directory as - Search: @@ -300,4 +297,7 @@ Cannot view table + + File '{0}' should be in the same directory as '{1}'. + \ No newline at end of file diff --git a/src/LessMsi.Gui/Resources/Languages/Strings.sq.resx b/src/LessMsi.Gui/Resources/Languages/Strings.sq.resx index 6b9a981..11a9f08 100644 --- a/src/LessMsi.Gui/Resources/Languages/Strings.sq.resx +++ b/src/LessMsi.Gui/Resources/Languages/Strings.sq.resx @@ -178,7 +178,7 @@ Nxirr Skedarët nga Rrjedha... - Skedari + Skedari: Skedari '{0}' nuk ekziston @@ -243,9 +243,6 @@ Heq menunë kontekstuale nëse ekziston - - duhet të jetë në të njëjtën direktori me - Kërko: @@ -300,4 +297,7 @@ Nuk mund të shihet tabela + + File '{0}' should be in the same directory as '{1}'. + \ No newline at end of file diff --git a/src/LessMsi.Gui/Resources/Languages/Strings.zh-TW.resx b/src/LessMsi.Gui/Resources/Languages/Strings.zh-TW.resx new file mode 100644 index 0000000..7ecd5cc --- /dev/null +++ b/src/LessMsi.Gui/Resources/Languages/Strings.zh-TW.resx @@ -0,0 +1,303 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 關於 + + + 新增捷徑到檔案總管 + + + 對 .msi 檔案按右鍵時,新增「解壓縮」與「瀏覽」選單項目 + + + 所有檔案 + + + 檔案路徑格式不正確 + + + 更改語言 + + + 完成 + + + 元件 + + + 複製 (&C) + + + 描述: + + + 目錄 + + + 編輯 (&E) + + + 檔案路徑空白 + + + 錯誤 + + + 結束 (&x) + + + 解壓縮 (&x) + + + 解壓縮檔案 + + + 正在解壓縮 + + + 正在解壓縮檔案 + + + 解壓縮串流檔… + + + 檔案: + + + 檔案「{0}」不存在 + + + 檔案 (&F) + + + 找到檔案。 + + + 找不到 CAB 檔「{0}」當中的串流 + + + ID + + + 正在初始化 + + + 檔案路徑包含無效字元 + + + 載入摘要資訊時發生錯誤 + + + 正在載入表格清單… + + + 缺少檔案 + + + msierablefiles + + + 名稱 + + + 檔案不存在 + + + 開啟 (&O) + + + 檔案開啟失敗 + + + 偏好設定 + + + 偏好設定 (&P) + + + 正在處理表格「{0}」。 + + + 近期的檔案 + + + 移除捷徑項目 + + + 移除右鍵選單(若存在) + + + 搜尋: + + + 搜尋檔案 + + + 選擇全部 (&A) + + + 請選擇全部或部分檔案進行解壓縮。 + + + 大小 + + + 串流 + + + 串流 + + + 摘要 + + + 表格 (&T) + + + 表格檢視 + + + 檔案路徑太長 + + + 類型 + + + 正在解壓縮 + + + 取消選擇全部 (&U) + + + + + + 版本 + + + 無法檢視檔案 + + + 無法檢視表格 + + + 「{0}」檔案應該與「{1}」位於相同資料夾。 + + \ No newline at end of file