質問

msginitは電子メールアドレスの入力を求めます。コマンドライン引数など、プロンプトを表示せずに使用するメールアドレスをmsginitに伝える方法はありますか?

cat >hellogt.cxx <<EOF
// hellogt.cxx
#include <libintl.h>
#include <locale.h>
#include <iostream>
int main (){
    setlocale(LC_ALL, "");
    bindtextdomain("hellogt", "./");
    textdomain( "hellogt" );
    std::cout << gettext("hello, world!") << std::endl;
}
EOF
g++ -ohellogt hellogt.cxx
xgettext -d hellogt -o hellogt.pot hellogt.cxx
msginit -l es_MX -o spanish.po -i hellogt.pot
役に立ちましたか?

解決

問題は、 / usr / lib64 / gettext / user-email を使用して電子メールの入力を求める msginit が原因です。代わりに-no-translator オプションを指定して msginit を実行する場合、非対話的に実行され、プロンプトは表示されないことを想定する必要があります。

msginit --no-translator -l es_MX -o spanish.po -i hellogt.pot
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top