我正在寻找一种从.xib
文件中提取所有可本地化字符串的方法,并将所有这些字符串保存在一个文件中。
这可能涉及ibtool
,但我无法确定只在一个翻译词典中合并所有这些内容的方法(可能是.strings
,.plist
或其他内容。
答案 0 :(得分:33)
打开终端并cd到项目的根目录(或存储所有XIB文件的目录)并输入以下命令:
find . -name \*.xib | xargs -t -I '{}' ibtool --generate-strings-file '{}'.txt '{}'
魔术是find和xargs命令协同工作。 -I选项生成占位符。 -t仅用于详细输出(您可以看到已生成并执行了哪些命令)。 它生成与同一目录中的xib文件同名的txts文件。 可以改进此命令以将输出连接到一个文件中,但仍然是一个很好的起点。
加入他们:
您可以使用类似的终端命令将这些新创建的文件连接成一个:
find . -name \*.xib.txt | xargs -t -I '{}' cat '{}' > ./xib-strings-concatenated.txt
此命令将所有字符串放入根目录中的一个文件xib-strings-concatenated.txt。
您可以再次使用find和xargs删除生成的部分文件(如果需要):
find . -name \*.xib.txt | xargs -t -I '{}' rm -f '{}'
答案 1 :(得分:5)
现在这很容易了。
在xcode中,选择你的项目(不是目标)
然后使用menu / editor / export进行本地化
xcode将输出一个xliff文件,其中包含整个项目中的所有可本地化字符串。