Category Archives: 未分類

2010-04-20

Magitからstageに失敗する 日本語編

うーん、やっぱりexternal diffでnkfをかけているせいで、日本語部分の部分的なstageがうまくいかない。どうすれば良いんだろう。

gitはファイル毎に文字エンコーディングメタ情報を持って、適切に変換処理を行うべきだと思うんだけど、その辺はどうなってるのよ。

git-guiだと.git/info/attributesに「ファイル名 encoding=utf-8」みたいに書けば適切に表示してくれるようになっている(gitattributes(5) Manual Page)。また、.gitconfigのgui.encodingによって、デフォルトの解釈も指定できる。でもさ、これってguiの問題なのかね? コマンドラインで表示するときだって、適切に変換してエンコーディングを統一してから標準出力へ流すべきなんじゃないの?

まあとにかく、gitの方でやってくれないのであれば、magitの方で何とかしないといけないんだろうな。

2010-04-19

健康を取り戻せ

もっと健康にならなければならないと思う。どうも三月の惨状以来、体の活性が上がりにくくなった気がする。

もっと体を動かしたいのだが、平日はなかなかできない。いや、やろうと思えばできるのだが、平日は仕事に集中する日、という制限を取り払いたくはない。結局できるのは行き帰りの自転車通勤くらいのものだ。

2010-04-19

Magitからstageに失敗する

むむ、部分的にstageしようとしたらtrailing whitespaceがどうとかでパッチが適用できないと言われた。gitに渡る標準入力の行末コードとファイルの行末コードが一致しないのだろう。

この前の設定を次のように修正したらうまくいった。

-(modify-coding-system-alist 'process "git" '(utf-8 . utf-8))
+(modify-coding-system-alist 'process "git" '(utf-8-dos . utf-8-unix))

-       (defun add-sh-utf8-process-coding-system-alist ()
-	 (cons (cons shell-file-name '(utf-8 . utf-8)) process-coding-system-alist))
+       (defun add-sh-utf8-process-coding-system-alist ()
+	 (cons (cons shell-file-name '(utf-8-dos . utf-8-unix)) process-coding-system-alist))