i18n
Cygwin でのシステムワイドなロケール設定の取り扱いに関して、調べた結果を備忘録代わりにまとめておきます。表題で「システムワイド」と謳いつつ「ユーザ毎」の設定について書いている点は、前回のWindows のエントリと同様です(笑)。 設定更新方法 Cygwin…
Windows でのシステムワイドなロケール設定の取り扱いに関して、調べた結果を備忘録代わりにまとめておきます。なお、表題で「システムワイド」と謳いつつ、本エントリで扱うロケール設定は、Mac OS X (その1) と同様に、「ユーザ毎」の設定だったりしますが…
その1では、「ターミナル」や、SSH 経由でのアクセスなど、主にCUI系アクセスでのロケール設定に関してまとめました。本エントリでは、主に GUI 経由で起動されるアプリに対して、ロケール設定を反映させる方法についてまとめます。 GUI 経由で起動されるア…
Mac OS X でのロケール設定の取り扱いに関して、調べた結果を備忘録代わりにまとめておきます。なお、私自身がもっぱら「Mac mini に SSH 経由でアクセス」をメインとする、相当な「ニワカ Mac ユーザ」なので、本エントリの情報精度は、他のエントリに輪を…
Solaris でのシステムワイドなロケール設定の取り扱いに関して、調べた結果を備忘録代わりにまとめておきます。"Solaris" と表記してはいますが、基本的に OpenIndiana 等の OpenSolaris 系環境を対象としています。Solaris 10 やそれ以前の Solaris 環境で…
Debian GNU/Linux でのシステムワイドなロケール設定の取り扱いに関して、調べた結果を備忘録代わりにまとめておきます。 設定格納先 Debian GNU/Linux の場合、システムワイドなロケール設定は /etc/default/locale ファイルに、以下のような形式で記述され…
時間の無い方向けに、先に要点をまとめておきます(笑)。Windows 環境で以下の条件が成立する場合、 Mercurial が非 ASCII 文字列を表示しようとすると、『表示失敗』扱いでコマンド実行が中断されます。 Windows 標準のコマンドプロンプト(cmd.exe)を使用…
日本OpenSolarisユーザーグループ主催の Tokyo OpenSolaris 勉強会 2013.09に参加してきた。参加記録のブログエントリを書くのは、すごく久しぶりなのだけれど、一応5〜8月にかけても毎月参加 (っつーか開催) はしていたりする。ls本の執筆作業が佳境だっ…
※ 修正が取り込まれた 2.2. 版以降であれば、言語設定に起因する変換失敗は発生しません。それ以前の版を利用する場合は、"LC_ALL=en_US.utf-8; export LC_ALL" 等により、言語設定を無効にしてください。なお、convert エクステンションでは、内部処理が全…
※ 修正が取り込まれた 2.2. 版以降であれば、言語設定に起因する変換失敗は発生しません。それ以前の版を利用する場合は、"LC_ALL=en_US.utf-8; export LC_ALL" 等により、言語設定を無効にしてください。なお、convert エクステンションでは、内部処理が全…
いわゆる『ドックフード喰い』として、日本語設定を有効にした状態で Mercurial の hg コマンドを使うために、LANGUAGE 環境変数に ja を設定。しかし、この設定を常用すると、思わぬ所から頭を引っ叩かれる事態が。Mercurial の開発 ML に修正パッチを投函…
TokyoMercurial #1 参加の際に気になったトピックについて、詳細を書こうとおもったのだが、そういえば『日本語の取り扱いってどうなってるんでしょう?』という質問があったなぁ、と思い出した。職場とかでの導入/普及の際に、やっぱり日本語の取り扱いの…
Mercurial で case insensitive filesystem 周りの修正をする際に仕込んだ知識のまとめエントリその5。またもや case insensitive とは関係の無い話。"\xc4\xb0" というバイト列を名前に持つファイルを生成する状況を想定する。Windows において、Python の…
Mercurial で case insensitive filesystem 周りの修正をする際に仕込んだ知識のまとめエントリその3。でも case insensitive とは関係の無い話を。今回の作業で知ったのだけれど、Python のファイル I/O 系 API では、引数が Unicode かバイト列かに応じて…
Mercurial で case insensitive filesystem 周りの修正をする際に仕込んだ知識のまとめエントリその2。トルコ語 (Turkish) の文字には、『アイ』(I) の文字のバリエーションに以下の4つがあるらしい。 U+0049: LATIN CAPITAL LETTER I U+0069: LATIN SMALL …
Mercurial で case insensitive filesystem 周りの修正をする際に仕込んだ知識のまとめエントリその1。グルジア語 (Georgian) の文字 U+10A0 と U+2D00 は、Unicode 仕様上は大文字/小文字の関係にあるので、例えば最新の Python 処理系で以下のような条件…
※ 2012年までの「追記」の表示を破棄/IntelliJ IDEA に関する注記を追加(@2013-12-30)このエントリは、Mercurial Advent Calendar 2011 の 15 日目です。相変わらず話が長くなってしまって御免なさい .... orz追記でではありますが、一応『ここまで読め…
Mercurial 2.0 版のリリース直前になって、日本語設定 ("export LANG=ja") 時にコマンドのオンラインヘルプを表示させると、成功するケースと失敗するケースがあることが判明。リリース予定がアメリカ時間の 11/01 なのに、判明したのが日本時間の 10/31 の…
CP932 (Shift-JIS ね) に関するバグを滑り込みで直すことができて、やれやれ危ういところだった、とホッとしながら、Mercurial 1.6 版を仕事で使っている環境に入れて help 出力を確認してみたら....: -A --addremove コミット前に、新規/不在ファイルを登…
Mercurial の主要なコマンド/エクステンション/ヘルプトピックのメッセージを概ね翻訳し終えた。今回のリリースでは、新機能としてリビジョン指定言語("hg help revsets")が追加された他に、用語集("hg help glossary")も追加されているため、段落分割で共…
2010/07/01 前後にリリースされる Mercurial 1.6 版から、メッセージの翻訳単位が段落毎に変更となる。従来は、コマンドの説明文原文に一文字でも変更があると、当該コマンドのヘルプドキュメントが丸々未翻訳な状態になっていたのだけれど、この変更により…
修正方法等でリテイクがあったけど、無事本家のリポジトリに取り込まれたので一安心。TextWrap の派生クラスから更で実装するような状況だったら、途中でうんざりしてたかも(笑)。大変助かりました > 伊藤さんさて、7月頭のリリースに向けて、もう一つのパ…
Mercurial のヘルプ表示に関しては、まずは「文字化けを無くす」ことが優先なのだけど、Python 標準の textwrap を使う限りでは(少なくとも日本語は)綺麗な行折り返しは実現できそうにないから、いずれは独自の行折り返し実装が必要になる感じ。標準 textwra…
文字の表示桁取得処理に関して気になることが。dayflower 氏の実装では、unicodedata.east_asian_width() の戻り値が F/W/A のいずれかなら 2 桁とみなしているけど、Mercurial の colwidth()@encoding.pyでは F/W の場合だけ 2 桁とみなしている。ふーむ、…
Mercurial の 1.4 版から、端末表示幅にあわせてヘルプテキストが折り返されるようになったのだけど、案の定というか、言語設定を日本語にしてある(LANGUAGE=ja 等)場合、折り返された行末で表示が乱れるケースがちらほらと。ぱっと見、複数バイトで構成され…
Emacs(Meadow) 経由で "hg commit" しようとしたら、何故かエラーで中断される。あれ?何がまずいんだ? "hg status" してみると、最近全く触った覚えの無いファイルが missing("!") 扱いになっている。おまけに、これまた全く身に覚えの無いファイルが unkn…
OpenSolaris デスクトップでは、ターミナルソフトとして gnome-terminal を使うのだけれど、どういうわけか gnome-terminal が対応している文字コードは基本 UTF-8 一択。標準テキストエディタの gedit は相当数の文字コードに対応しているのに…。仕事/環境…
その1から一週間ぶりに作業を再開。結局、予想通りというかなんと言うか: internationalized messages should not contain the `\r' escape sequence は、hgext/chrun.py がモロに "\r" を使っていたのが原因の模様。なんだ、つまらん。
開発者 ML で見て気になっていたMercurial国際化の枠組みでの日本語化に手を出してみた。