chore: add English strings and restore CFBundleLocalizations (#280)

* Add en.lproj strings and restore CFBundleLocalizations for Weblate integration

* Add CFBundleLocalizations to Info.plist.tmpl

* Move Localizable.strings from Base.lproj to en.lproj to avoid Weblate duplication

* Remove Base.lproj/Localizable.strings (moved to en.lproj)
This commit is contained in:
Camilo Vega
2026-03-15 11:07:23 -05:00
committed by GitHub
parent f9bea1a8d8
commit 0359f0371e
8 changed files with 201 additions and 2 deletions
+11 -2
View File
@@ -75,6 +75,11 @@
9A38F8612E80F1B600100A57 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/STPreferencesWindow.strings; sourceTree = "<group>"; };
9A38F8622E80F1B600100A57 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/STPreferencesWindowGeneralView.strings; sourceTree = "<group>"; };
9A38F8632E80F1B700100A57 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = "<group>"; };
E61B6566426D4A64B3E27FD1 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/STApplication.strings; sourceTree = "<group>"; };
6BF5309C44C44B33816DBD62 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/STAboutWindow.strings; sourceTree = "<group>"; };
15C8D2E3EEAF4502842A8594 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/STPreferencesWindow.strings; sourceTree = "<group>"; };
65BA17B6FFE8436FB229DCBE /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/STPreferencesWindowGeneralView.strings; sourceTree = "<group>"; };
6CE6654979C54545BA0EA08C /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = "<group>"; };
C44262761D0DEF9F005340C2 /* LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = LICENSE; sourceTree = "<group>"; };
C4460A7C1D0DD2D500200C21 /* STPreferencesWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = STPreferencesWindowController.h; path = Controllers/STPreferencesWindowController.h; sourceTree = "<group>"; };
C4460A7D1D0DD2D500200C21 /* STPreferencesWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = STPreferencesWindowController.m; path = Controllers/STPreferencesWindowController.m; sourceTree = "<group>"; };
@@ -101,7 +106,7 @@
C4F0E82C1DA1B9CF00435310 /* STPreferencesWindowGeneralViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = STPreferencesWindowGeneralViewController.m; sourceTree = "<group>"; };
C4FFB0631D0D7E440015D14A /* XGSyncthing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = XGSyncthing.h; path = syncthing/XGSyncthing.h; sourceTree = SOURCE_ROOT; };
C4FFB0641D0D7E4C0015D14A /* XGSyncthing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = XGSyncthing.m; path = syncthing/XGSyncthing.m; sourceTree = SOURCE_ROOT; };
D4A1B5731E2A3F4900C8E2A3 /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Base; path = Base.lproj/Localizable.strings; sourceTree = "<group>"; };
D4A1B57B1E2A3F4900C8E2AB /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/STPreferencesWindow.xib; sourceTree = "<group>"; };
D4A1B57D1E2A3F4900C8E2AD /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/STPreferencesWindowGeneralView.xib; sourceTree = "<group>"; };
/* End PBXFileReference section */
@@ -384,6 +389,7 @@
isa = PBXVariantGroup;
children = (
C4A4156C1D0D579D00DC6018 /* Base */,
E61B6566426D4A64B3E27FD1 /* en */,
9A38F85F2E80F1B600100A57 /* es */,
);
name = STApplication.xib;
@@ -392,7 +398,7 @@
D4A1B5721E2A3F4900C8E2A2 /* Localizable.strings */ = {
isa = PBXVariantGroup;
children = (
D4A1B5731E2A3F4900C8E2A3 /* Base */,
6CE6654979C54545BA0EA08C /* en */,
9A38F8632E80F1B700100A57 /* es */,
);
name = Localizable.strings;
@@ -402,6 +408,7 @@
isa = PBXVariantGroup;
children = (
C4946B001D5877F2008447A2 /* Base */,
6BF5309C44C44B33816DBD62 /* en */,
9A38F8602E80F1B600100A57 /* es */,
);
name = STAboutWindow.xib;
@@ -411,6 +418,7 @@
isa = PBXVariantGroup;
children = (
D4A1B57B1E2A3F4900C8E2AB /* Base */,
15C8D2E3EEAF4502842A8594 /* en */,
9A38F8612E80F1B600100A57 /* es */,
);
name = STPreferencesWindow.xib;
@@ -420,6 +428,7 @@
isa = PBXVariantGroup;
children = (
D4A1B57D1E2A3F4900C8E2AD /* Base */,
65BA17B6FFE8436FB229DCBE /* en */,
9A38F8622E80F1B600100A57 /* es */,
);
name = STPreferencesWindowGeneralView.xib;
+5
View File
@@ -4,6 +4,11 @@
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleLocalizations</key>
<array>
<string>en</string>
<string>es</string>
</array>
<key>CFBundleDisplayName</key>
<string>Syncthing</string>
<key>CFBundleExecutable</key>
+5
View File
@@ -4,6 +4,11 @@
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleLocalizations</key>
<array>
<string>en</string>
<string>es</string>
</array>
<key>CFBundleDisplayName</key>
<string>Syncthing</string>
<key>CFBundleExecutable</key>
+15
View File
@@ -0,0 +1,15 @@
/* Class = "NSTextFieldCell"; title = "appNameLabel"; ObjectID = "69s-3K-WtF"; */
"69s-3K-WtF.title" = "appNameLabel";
/* Class = "NSButtonCell"; title = "Check for updates"; ObjectID = "Eed-GH-Oia"; */
"Eed-GH-Oia.title" = "Check for updates";
/* Class = "NSWindow"; title = "About Syncthing"; ObjectID = "QvC-M9-y7g"; */
"QvC-M9-y7g.title" = "About Syncthing";
/* Class = "NSTextFieldCell"; title = "Project page"; ObjectID = "c8c-o9-dcj"; */
"c8c-o9-dcj.title" = "Project page";
/* Class = "NSTextFieldCell"; title = "appVersionLabel"; ObjectID = "sEI-CG-StK"; */
"sEI-CG-StK.title" = "appVersionLabel";
+105
View File
@@ -0,0 +1,105 @@
/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "09B-Fd-kIg"; */
"09B-Fd-kIg.title" = "Delete";
/* Class = "NSMenu"; title = "Folders"; ObjectID = "0Tt-4w-4MD"; */
"0Tt-4w-4MD.title" = "Folders";
/* Class = "NSMenuItem"; title = "Quit Syncthing"; ObjectID = "1wN-cb-7w4"; */
"1wN-cb-7w4.title" = "Quit Syncthing";
/* Class = "NSMenuItem"; title = "Restart"; ObjectID = "24n-vt-eof"; */
"24n-vt-eof.title" = "Restart";
/* Class = "NSMenuItem"; title = "Quit application"; ObjectID = "42h-qg-75M"; */
"42h-qg-75M.title" = "Quit application";
/* Class = "NSMenuItem"; title = "None"; ObjectID = "8nY-KP-Cjq"; */
"8nY-KP-Cjq.title" = "None";
/* Class = "NSMenu"; title = "Edit"; ObjectID = "BIk-A1-DsB"; */
"BIk-A1-DsB.title" = "Edit";
/* Class = "NSMenuItem"; title = "Folders"; ObjectID = "Gbh-kn-bEe"; */
"Gbh-kn-bEe.title" = "Folders";
/* Class = "NSMenuItem"; title = "API"; ObjectID = "Gzh-BA-qbg"; */
"Gzh-BA-qbg.title" = "API";
/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "HRl-Yj-JKY"; */
"HRl-Yj-JKY.title" = "Paste";
/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "HiV-0K-6gI"; */
"HiV-0K-6gI.title" = "Edit";
/* Class = "NSMenuItem"; title = "Menu"; ObjectID = "I8M-Pf-BKw"; */
"I8M-Pf-BKw.title" = "Menu";
/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "Kac-nG-ccL"; */
"Kac-nG-ccL.title" = "Cut";
/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "LRK-4Q-J2a"; */
"LRK-4Q-J2a.title" = "Main Menu";
/* Class = "NSMenuItem"; title = "Syncthing Service"; ObjectID = "MAH-El-s0y"; */
"MAH-El-s0y.title" = "Syncthing Service";
/* Class = "NSMenu"; title = "Syncthing"; ObjectID = "O1r-v6-dVJ"; */
"O1r-v6-dVJ.title" = "Syncthing";
/* Class = "NSMenuItem"; title = "Status"; ObjectID = "PGw-J9-KII"; */
"PGw-J9-KII.title" = "Status";
/* Class = "NSMenuItem"; title = "Syncthing"; ObjectID = "ViC-de-Xi1"; */
"ViC-de-Xi1.title" = "Syncthing";
/* Class = "NSMenuItem"; title = "Item"; ObjectID = "Y9X-vm-pic"; */
"Y9X-vm-pic.title" = "Item";
/* Class = "NSMenu"; title = "Syncthing Service"; ObjectID = "YYN-1k-umQ"; */
"YYN-1k-umQ.title" = "Syncthing Service";
/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "aOH-1O-Idh"; */
"aOH-1O-Idh.title" = "Redo";
/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "aRj-ou-O6a"; */
"aRj-ou-O6a.title" = "Undo";
/* Class = "NSMenuItem"; title = "Rescan All"; ObjectID = "boL-Lr-rxV"; */
"boL-Lr-rxV.title" = "Rescan All";
/* Class = "NSMenuItem"; title = "About"; ObjectID = "dst-j8-d2d"; */
"dst-j8-d2d.title" = "About";
/* Class = "NSMenuItem"; ibShadowedToolTip = "Open Syncthing Web GUI"; ObjectID = "euz-4I-RQa"; */
"euz-4I-RQa.ibShadowedToolTip" = "Open Syncthing Web GUI";
/* Class = "NSMenuItem"; title = "Open"; ObjectID = "euz-4I-RQa"; */
"euz-4I-RQa.title" = "Open";
/* Class = "NSMenuItem"; title = "Close window"; ObjectID = "htF-y1-dkl"; */
"htF-y1-dkl.title" = "Close window";
/* Class = "NSMenuItem"; title = "Pause All Devices"; ObjectID = "kBF-aK-W8P"; */
"kBF-aK-W8P.title" = "Pause All Devices";
/* Class = "NSMenuItem"; title = "Preferences..."; ObjectID = "lgT-yX-bGZ"; */
"lgT-yX-bGZ.title" = "Preferences...";
/* Class = "NSMenu"; title = "Status"; ObjectID = "qS5-d4-4WD"; */
"qS5-d4-4WD.title" = "Status";
/* Class = "NSMenu"; title = "Menu"; ObjectID = "rlz-0G-Jeh"; */
"rlz-0G-Jeh.title" = "Menu";
/* Class = "NSMenuItem"; title = "Start"; ObjectID = "s51-hi-aSO"; */
"s51-hi-aSO.title" = "Start";
/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "uO2-Lw-6R3"; */
"uO2-Lw-6R3.title" = "Select All";
/* Class = "NSMenuItem"; title = "Stop"; ObjectID = "v6W-XD-Nuf"; */
"v6W-XD-Nuf.title" = "Stop";
/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "ygR-tH-H8e"; */
"ygR-tH-H8e.title" = "Copy";
@@ -0,0 +1,33 @@
/* Class = "NSToolbarItem"; label = "General"; ObjectID = "1ij-UG-c1I"; */
"1ij-UG-c1I.label" = "General";
/* Class = "NSToolbarItem"; paletteLabel = "General"; ObjectID = "1ij-UG-c1I"; */
"1ij-UG-c1I.paletteLabel" = "General";
/* Class = "NSToolbarItem"; label = "Info"; ObjectID = "86s-00-8YI"; */
"86s-00-8YI.label" = "Info";
/* Class = "NSToolbarItem"; paletteLabel = "Info"; ObjectID = "86s-00-8YI"; */
"86s-00-8YI.paletteLabel" = "Info";
/* Class = "NSWindow"; title = "Syncthing Preferences"; ObjectID = "QvC-M9-y7g"; */
"QvC-M9-y7g.title" = "Syncthing Preferences";
/* Class = "NSToolbarItem"; label = "Advanced"; ObjectID = "S5T-mV-7Wv"; */
"S5T-mV-7Wv.label" = "Advanced";
/* Class = "NSToolbarItem"; paletteLabel = "Advanced"; ObjectID = "S5T-mV-7Wv"; */
"S5T-mV-7Wv.paletteLabel" = "Advanced";
/* Class = "NSToolbarItem"; label = "Folders"; ObjectID = "X60-Ql-i8O"; */
"X60-Ql-i8O.label" = "Folders";
/* Class = "NSToolbarItem"; paletteLabel = "Folders"; ObjectID = "X60-Ql-i8O"; */
"X60-Ql-i8O.paletteLabel" = "Folders";
/* Class = "NSToolbarItem"; label = "Devices"; ObjectID = "poY-nn-e76"; */
"poY-nn-e76.label" = "Devices";
/* Class = "NSToolbarItem"; paletteLabel = "Devices"; ObjectID = "poY-nn-e76"; */
"poY-nn-e76.paletteLabel" = "Devices";
@@ -0,0 +1,27 @@
/* Class = "NSTextFieldCell"; placeholderString = "aNVUG3mSx4PVyZW8LXWGoybFRSXS9c5a"; ObjectID = "2yS-fe-acc"; */
"2yS-fe-acc.placeholderString" = "aNVUG3mSx4PVyZW8LXWGoybFRSXS9c5a";
/* Class = "NSButtonCell"; title = "Test"; ObjectID = "DIH-Pb-tr4"; */
"DIH-Pb-tr4.title" = "Test";
/* Class = "NSButtonCell"; title = "Quit Syncthing"; ObjectID = "KYS-0x-TeQ"; */
"KYS-0x-TeQ.title" = "Quit Syncthing";
/* Class = "NSButtonCell"; title = "Open Syncthing Web Interface"; ObjectID = "MM0-EG-ljE"; */
"MM0-EG-ljE.title" = "Open Syncthing Web Interface";
/* Class = "NSButtonCell"; title = "Start at login"; ObjectID = "bnF-et-LAz"; */
"bnF-et-LAz.title" = "Start at login";
/* Class = "NSTextFieldCell"; title = "URI"; ObjectID = "geO-tg-eJG"; */
"geO-tg-eJG.title" = "URI";
/* Class = "NSTextFieldCell"; placeholderString = "http://localhost:8384"; ObjectID = "hwI-eW-JrI"; */
"hwI-eW-JrI.placeholderString" = "http://localhost:8384";
/* Class = "NSTextFieldCell"; title = "API key"; ObjectID = "jak-D0-chd"; */
"jak-D0-chd.title" = "API key";
/* Class = "NSButtonCell"; title = "Show in menu bar"; ObjectID = "nB8-OA-X1F"; */
"nB8-OA-X1F.title" = "Show in menu bar";