gettextのようなものを使ってRスクリプトを翻訳することは可能ですか?もしそうなら、どうですか?そうでない場合は、私には他にどのようなオプションがありますか?gettextを使ったRスクリプトの翻訳
9
A
答えて
10
base :: gettext/ngettext、base :: bindtextdomain、およびtools :: xgettext2pot関数を使用できます。例えば
:
myFunction <- function()
{
bindtextdomain("R-myProgram","/my/translation/dir")
gettext("Hello",domain="R-myProgram")
}
そして、この関数を想定すると、そのパス「/my/dir/R/myfile.R」を使用することであるファイル内にある:tools::xgettext2pot("/my/dir", "/my/translation/dir/pot/R-myProgram.pot")
は次に作成する等msginit、msgfmtを使用.moファイル/my/translation/dir/fr/LC_MESSAGES/R-myProgram.mo
。あなたのロケールがフランス語の場合、myFunction()は "Hello"ではなく "Bonjour"を表示するようになりました。
他のポイントのカップル:xgettext2potプロジェクトは、標準的なRパッケージであり、唯一のR /サブディレクトリ内の* .Rファイルを検索を前提と似
- に思えます。
domain
引数はデフォルトでは機能の呼び出しのgettext()- 停止()、メッセージ()、警告()とpackupStartupMessageは()もxgettext2potによって検出されたの名前空間のようです。 gettext()のsprintfのような変形として利用可能なgettextf()関数もあります。
- 標準のxgettextユーティリティはR構文をサポートしていないようで、tools :: xgettext2potを使用しなければならないので、メッセージコンテキスト(pgettext())、フラグprintfのような文字列を示し、.potファイルを手作業で変更することなく翻訳者(xgettext -cによって抽出された)のコード内コメントを書く可能性があります。
+0
私のロケールを 'sys.getlocale(" LC_All "、" fr ")'でフランス語Iに設定すると翻訳された 'msstr'を戻してください。まだすべてのこんにちは。何故ですか? –
関連する問題
- 1. gettext翻訳なし
- 2. gettextを使ってajaxコール内のメールを翻訳する
- 3. のGettextまたは優れているデータベースの翻訳
- 4. 翻訳+回転を行った後のOpenGL独立翻訳?
- 5. 翻訳ここでR
- 6. 空の翻訳(msgstr)をpo gettextファイルに翻訳してマークする方法はありますか?
- 7. するにはアンドロイドでアニメーションを翻訳アプリ翻訳の翻訳
- 8. JavaScriptスクリプトをコーヒースクリプトに翻訳する
- 9. PHP OOP基本翻訳スクリプトの構造
- 10. 角度翻訳 - 翻訳値の翻訳attr
- 11. doctrineを使用したデータベースの翻訳
- 12. 翻訳friendly_id使う
- 13. は、Djangoのドキュメントからのgettextを使用して、適切に翻訳した名前のsettings.LANGUAGES()
- 14. マイクロソフト翻訳APIで翻訳されたテストの限界
- 15. 翻訳
- 16. 翻訳元から翻訳元へ翻訳者を作成する
- 17. ミステリーGoogleは、Googleがスクリプト翻訳使用してIE8
- 18. Google翻訳を使用してウェブページ内のdivを翻訳する
- 19. 存在しない翻訳のための 'デフォルト'翻訳を取得する
- 20. Python 2.7のサブプロセスを使ってPython 2.3に翻訳する
- 21. Google翻訳ツールを使用してセクションを自動翻訳する方法は?
- 22. Google翻訳API
- 23. デルファイ翻訳ツール
- 24. ZF2翻訳フォームボタン
- 25. Prestashop翻訳
- 26. アニメーション翻訳
- 27. C++翻訳ライブラリ
- 28. スピーチ翻訳
- 29. Kohana翻訳ファイル
- 30. '翻訳'ジレンマ
「翻訳する」とはどういう意味ですか? – Subs
私はそれに英語で書かれた文字列があることを意味します。私はそれらを何らかの形でマークし、別のファイルに抽出して、ロシア語に翻訳する必要があります。また、1つのパラメータでスクリプトを実行することによって、英語メッセージを表示し、他のロシア語メッセージも表示します。 gettextと同様に:) – Shark
'?gettext'を見てください – Andrie