操作
提案 #1579
未完了gettext 3.4.2へのアップデート
プラグイン名:
uitranslator
ファイル
あひる 家鴨 さんが3年以上前に更新
- ステータス を 分類待ち から 実装待ち に変更
- 担当者 を あひる 家鴨 にセット
- プラグイン名 を uitranslator にセット
https://dev.mikutter.hachune.net/issues/1569 の対応の続きです。
gettext 3.4.2がリリースされ、依存関係に prime
が追加されたのでこれに更新します。
Shibafu Midorino さんが3年以上前に更新
gettext 3.4.2では翻訳リソースが無かった場合のフォールバック処理に 変更 があり、特にmikutterのようなmsgidが英語ではないプログラムには影響があるようです。
en_USの翻訳リソースがあるプラグインをja_JPな環境で利用すると「ja_JPの翻訳リソースがない (なぜならmsgidが日本語なので)」→「じゃあen_USを探そう」→「あったからこれを表示」となるようで、今まで日本語で出ていた部分が軒並み英語になってしまう状況になっています。
Shibafu Midorino さんが3年以上前に更新
環境依存だったらアレなので、フォールバック判定に使われているコードである Locale.candidates
をmikutterコンソール上で実行した結果をペーストしておきます。
mikutter console. Result will be shown here if you input the Ruby code below and press Ctrl+Enter. >>> Locale.candidates [#<Locale::Tag::Common: ja_JP>, #<Locale::Tag::Common: ja>, #<Locale::Tag::Common: en>]
環境
- ruby 2.7.5 (x86_64, Rosetta 2)
- mikutter db15278c + gettext-3.4.2
- macOS 11.6.2
toshi_a 初音 さんが3年以上前に更新
- ファイル DeepinScreenshot_select-area_20220114001441.png DeepinScreenshot_select-area_20220114001441.png を追加
- ステータス を レビュー待ち から まだダメ に変更
- 担当者 を toshi_a 初音 から あひる 家鴨 に変更
Naohiro Aota さんが27日前に更新
Locale.candidates
の最後に, #<Locale::Tag::Common: en>
が入っているのが問題だと思います.
これはdefaultのlocaleとして入ってしまうみたいです.
Locale.set_default("ja")
すると逆にいつも日本語が入ってしまってめんどうなので, Locale.set_default(Locale.candidates[0])
でデフォ値をかぶせてあげるといいのではと思いました. 以下のようになります.
$ LANG=ja_JP.utf8 irb
irb(main):001> require 'gettext'
=> true
irb(main):002> Locale.candidates
=> [#<Locale::Tag::Common: ja_JP>, #<Locale::Tag::Common: ja>, #<Locale::Tag::Common: en>]
irb(main):003> Locale.set_default(Locale.candidates[0])
=> Locale
irb(main):004> Locale.candidates
=> [#<Locale::Tag::Common: ja_JP>, #<Locale::Tag::Common: ja>]
$ LANG=en_US.utf8 irb
irb(main):002> require 'gettext'
=> true
irb(main):003> Locale.candidates
=> [#<Locale::Tag::Common: en_US>, #<Locale::Tag::Common: en>]
irb(main):004> Locale.set_default(Locale.candidates[0])
=> Locale
irb(main):005> Locale.candidates
=> [#<Locale::Tag::Common: en_US>, #<Locale::Tag::Common: en>]
操作