Home > Latest topics

Latest topics > NautilusSVNで日本語のメッセージを付けてcommitできるようにする

宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。 以下の特設サイトにて、単行本まんがでわかるLinux シス管系女子の試し読みが可能! シス管系女子って何!? - 「シス管系女子」特設サイト

NautilusSVNで日本語のメッセージを付けてcommitできるようにする - Feb 09, 2009

以前Ubuntu 8.10に導入したNautilusSVNなんだけど、一つ困った事がある。それは、コミット時のメッセージを日本語で入力するとコミットできないという点。

普通のオープンソースのプロジェクトだったら英語でやるのが当たり前だろ!!!日本語のメッセージとか死ね!!!と言う人もいるだろうけど、そんなの知るかよと。TortoiseSVNじゃ普通にできてるんだから、できない方がおかしいだろと。とかぼやきつつも仕方ないからNautilusSVNからcommitする時だけは英語でコメント付けるようにしてたけど、英語苦手だからついつい二言三言の適当なメッセージだけでcommitして、後になってログ一覧見た時に何の変更だったのか訳が分からなくなる、ということがあまりに多いのでいいかげん我慢の限界がきた。

そもそもの所で勘違いしてたんだけど、日本語が通らないのはSubversion自体の問題ではなくてNautilusSVNの問題だということについ先日やっと気がついた。ターミナルでsvn commit -m "日本語のメッセージ"てな感じで書いたらちゃんとコミットできたし。あと閉じ括弧を入力するまでは改行とかもメッセージに普通に入れられるということにも気がついた。なのでしばらくの間、コミットだけコマンドライン操作でやるようにしてみたんだけど、やっぱりめんどくさい。

この手の問題はMozillaでもよくあって、Mozillaの場合は文字列のエンコーディングを変えてやるだけで解決する場合が多いので、NautilusSVNでもきっとそうなんじゃないだろうか。と見当を付けて、思い切ってソースコードを覗いてみた。~/.nautilus/python-extensions/NautilusSvn/SvnCommit.py の中のそれらしい箇所に、ぐぐって調べた文字エンコーディング変換のコードを一行加えて、試しにコミットしてみたら無事に日本語が通るようになった。

Index: SvnCommit.py
===================================================================
--- SvnCommit.py    (リビジョン 776)
+++ SvnCommit.py    (作業コピー)
@@ -102,6 +102,7 @@

         ctrl = XRCCTRL( self.frame, "Message" )
         self.commitMessage = ctrl.GetValue()
+        self.commitMessage = self.commitMessage.encode("UTF-8")
         # If the user doesn't supply a commit message we will just use the string
         # "Empty message" since pysvn doesn't accept an empty string see:
         #     pysvn._pysvn_2_5.ClientError: callback_get_log_message required

commit.diff

変更箇所はほんとにこれだけ。

分類:システム再構築, , , , , , , 時刻:19:14 | Comments/Trackbacks (3) | Edit

Comments/Trackbacks

no title

バグ報告してください:)
https://bugs.launchpad.net/ubuntu/+source/nautilus-svn-scripts

Commented by m at 2009/02/09 (Mon) 21:32:30

no title

節子、それNautilusSVNやない! nautilus-script-collection-svnや!

Commented by Piro at 2009/02/10 (Tue) 02:35:39

no title

おっと、勘違いしました。すいません;

Commented by m at 2009/02/10 (Tue) 05:49:11

TrackBack ping me at


の末尾に2020年11月30日時点の日本の首相のファミリーネーム(ローマ字で回答)を繋げて下さい。例えば「noda」なら、「2009-02-09_nautilussvn-japanese.trackbacknoda」です。これは機械的なトラックバックスパムを防止するための措置です。

Post a comment

writeback message: Ready to post a comment.

2020年11月30日時点の日本の首相のファミリーネーム(ひらがなで回答)

Powered by blosxom 2.0 + starter kit
Home

カテゴリ一覧

過去の記事

1999.2~2005.8

最近のコメント

最近のつぶやき