我正在尋找一種方法從.xib
文件中提取所有可本地化的字符串,並將它們全部保存在一個文件中。如何從所有XIB文件中將所有可本地化的字符串提取到一個文件中?
也許這涉及ibtool
但我無法確定合併所有這些只有一個翻譯詞典的方法(可能是.strings
,.plist
或別的東西)。 (您存儲的所有XIB文件或目錄)
我正在尋找一種方法從.xib
文件中提取所有可本地化的字符串,並將它們全部保存在一個文件中。如何從所有XIB文件中將所有可本地化的字符串提取到一個文件中?
也許這涉及ibtool
但我無法確定合併所有這些只有一個翻譯詞典的方法(可能是.strings
,.plist
或別的東西)。 (您存儲的所有XIB文件或目錄)
打開終端和cd到項目的根目錄,然後鍵入以下命令:
find . -name \*.xib | xargs -t -I '{}' ibtool --generate-strings-file '{}'.txt '{}'
神奇的是查找和xargs的命令一起工作。 -I選項生成佔位符。 -t僅用於詳細輸出(您會看到哪些命令已生成並執行)。 它生成與同一目錄中的xib文件具有相同名稱的txts文件。 可以改進此命令以將輸出連接成一個文件,但仍然是一個很好的起點。
將它們連接在一起:
可以使用類似的終端命令串聯這些新創建的文件合併爲一個:
find . -name \*.xib.txt | xargs -t -I '{}' cat '{}' > ./xib-strings-concatenated.txt
該命令將會把所有的字符串放到一個文件XIB串 - 並置。 txt在根目錄下。
您可以再次使用查找和xargs的刪除生成的部分文件(如果你想):
find . -name \*.xib.txt | xargs -t -I '{}' rm -f '{}'
很棒的回答。有沒有一個網絡資源,我可以學習如何製作這樣的命令行工具? – 2014-04-28 06:38:07
@TusharKoul Bash腳本文檔和教程? ;-) – Lukasz 2014-04-28 07:23:20
是的。我希望你能指點我一個你經常提到的具體資源。無論如何,我想我對Google的感覺太懶了:D – 2014-04-28 09:25:43
這是現在很多更容易。
在Xcode中,選擇您的項目(不是目標)
然後使用菜單/編輯/導出本地化
的Xcode將輸出與整個項目的所有localisable字符串的XLIFF文件。
這是否只從xibs?或從.m文件呢? – 2016-03-24 13:58:50
它是否包含來自xib或故事板的所有可能的字符串? F.ex:所有按鈕狀態的標題? – Lukasz 2016-03-24 14:43:16
您是否找到了答案? – Lukasz 2011-06-07 08:47:04
@Lukasz不是一個完整的人,但當我有解決方案時,我肯定會發表一個答案。 – sorin 2011-06-07 09:15:07