问题标签 [genstrings]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
6626 浏览

iphone - 有没有一种简单的方法来合并 Localizable.strings 文件?

问题:使用 genstrings 从项目中创建 Localizable.strings 文件。几周后,有些事情发生了变化,我再次运行 genstrings。75% 的新文件已经在旧文件中。如何将新文件与旧文件合并,以便旧文件包含所有 25% 的新键值对?

0 投票
1 回答
3333 浏览

iphone - 为什么 genstrings 不将 NSLocalizedStringFromTable 条目转换为 table.strings?

在我的源代码中,我有一些行,例如NSLocalizedStringFromTable(@"Info", @"en", @"Title of this view"). 当我随后调用时genstrings -o en.lproj ./Classes/*.m,我不会得到预期的文件,en.strings但是Localized.strings,虽然我在 genstrings-manpage 中读到它会从 NSLocalizedStringFromTable(a, table, c) 函数生成一个 table.strings 文件。我错了吗?那么我将如何创建一个 table.strings 文件?

0 投票
2 回答
7809 浏览

iphone - iPhone:使用 genstrings 更新 Localizable.strings 文件?

我已经使用 genstrings 正确生成了我的字符串文件。我已经更改了不同语言的本地化字符串。现在,我添加了更多的 NSLocalizedString() 事件,我想将它们生成到我所有的本地化字符串文件中。

但是,再次运行 genstrings 似乎并没有更新我的字符串文件。难道我做错了什么?

0 投票
7 回答
2359 浏览

iphone - genstrings 工具抛出异常,解析 XCode 项目时中止

我一直在使用genstrings构建字符串文件来国际化我的 iPhone 应用程序。但是,我最近所做的一些更改导致该genstrings工具开始抛出如下错误:

什么可能导致这种情况,我如何在不手动更改所有内容的情况下找到导致它的项目部分?

0 投票
1 回答
667 浏览

iphone - 在 Xcode 中向(多个)localization.strings 添加翻译 - 更简单的方法?

我编写了一个 iPhone 应用程序,它已经发布了几个版本,并且对于每个版本,我都会做一些感觉不对的事情,但一直找不到更好的方法。

我的应用程序被翻译成 16 种语言,每个版本都会在界面中添加或修改几个字符串。因此,我必须将这几句话翻译 16 遍。我接受这一点 - 没有办法解决它。但是我做的方式很烂。。

我将现有的已翻译的 Localizable.strings 文件(在 pl.proj 等文件夹中)复制到 Localisable.1.0.4.strings(其中 1.0.4 是我的旧版本号)。
然后我运行genstrings更新主 Localisable.strings 文件,然后再次重新创建所有翻译。然后,我必须检查 16 个文件中的每一个,从备份文件中手动复制我为上一个版本所做的部分内容,并用新的翻译分散它们。它很丑,而且容易出错(复制/粘贴错误,有人吗?)

比我更精明的人肯定已经找到了增量翻译的正确方法,对吧?

谢谢

0 投票
4 回答
1891 浏览

iphone - genstrings 不适用于 NSLocalizedString 的宏

我想将 "NSLocalizedString" 缩短为 "_" 所以我正在使用 macro _(x) NSLocalizedString(@x, @__FILE__)

但是现在,当我想生成用于本地化的字符串时, find . -name \*.m | xargs genstrings 它什么也不会产生。

有什么帮助吗?

0 投票
4 回答
1847 浏览

xcode - 使用带有文件夹结构项目的 genstrings 进行本地化

在具有包含 *.m 文件的文件夹的 iOS 项目中,类似于包,必须 genstrings -o en.lproj *.m为每个文件夹运行并匹配相对 en.lproj 路径。是否有可以从根文件夹向下钻取的命令?

0 投票
2 回答
622 浏览

ios - 如何使用英语以外的语言,但仍将 NSLocalizedString 与英语一起使用?

我找不到任何类似的问题,所以我们开始:

我正在开发一个 iOS 应用程序,该应用程序的第一个版本将只有法语版本,但我们计划在未来发布一个英文版本。在这一点上,我认为NSLocalizedString对所有文本都使用是个好主意,这样当需要英语时,应用程序就可以准备就绪。但是,我真的很想在我的代码中使用英语作为键值:

代替

然后我想运行 genstrings,并将 .strings 文件本地化为法语(并将其提供给翻译人员)。但如果我这样做,我怎样才能摆脱“原始”英文 .strings 文件?我在这里完全错了吗,我现在必须在我的代码中使用法语吗?

0 投票
2 回答
2668 浏览

ios - 强制 genstrings 按出现顺序而不是按字母顺序构建 Localizable.strings 文件

我是 iOS 国际化和本地化的新手。我正在运行 genstrings: find . -name \*.m | xargs genstrings -o en.lproj来生成我的 Localizable.strings 文件。它按字母顺序(按键)构建文件。

为了便于翻译,我希望键和值按照它们在 .m 文件中的出现顺序进行排序。这可能与 genstrings 吗?man我在其页面上找不到相关信息。

0 投票
3 回答
4820 浏览

ios - iOS - genstrings: couldn't connect to output directory en.lproj

I searched for this error online and here. Online it shows me results in a different language then english nice Google. Here it has one post and a guy that never really answered the guys question.

I have my xcode project folder on my desktop. Inside the project folder I have an en.lproj folder that has both iPad and iPhone storyboards inside along with a localization.plist file. However when I launch the project in Xcode this en.lproj folder is nowhere to be found. So this might be the problem?

With the project folder on my desktop I launch terminal type in: cd

then drag my project folder into Terminal and it gives me the path. I then paste this line of code into the Terminal

find . -name *.m | xargs genstrings -o en.lproj

I get this error message in the Terminal:

genstrings: couldn't connect to output directory en.lproj

it prints this line multiple times and then says my project is a path to a directory?

No .strings file is made. Any thoughts on what I am doing wrong? I got UILabels that I dragged and dropped from inside Storyboards, but I also I strings that are coded with

NSLocalizedString(@"First Level Passed", @"This is a message displayed on screen to allow the user to know they have passed the first level!");

So the above Terminal code snippet should be finding those NSLocalizedStrings right? I think it isn't even getting to find the en.lproj folder in the first place but I don't know?

Any help would be great.