IntelliJ+mercurialで日本語コミットログ

Ken published on
3 min, 555 words

Categories: Tips

最近、IntelliJも応答なしになりながらも、だいぶテキパキと動いてくれてはいるんだけど、mercurialとの相性がよくなくて困ってた! IntelliJからコミットしようとすると "0x83" があるぞって怒られて、コミットできない。 仕方なく、Terminalからコミットしていたんだけど、ファイル数が多かったり、複数ディレクトリに散らばったりしてるとどのファイルをコミットしたいのかわかりづらい。 便利アプリあるかなぁ〜と思ったけど、MacHgもmurkyもしっくりこなくて、IntelliJでなんとかすることにした!

昨日、寝ながら "Terminalからならコミット出来てるのになぁ…" と考えていたらふとひらめいた! IntelliJをTerminalから起動すればいいのでは?と。 実際、これでうまくいった。

前提

Terminalからコミットが出来る環境を作っておくこと。 mercurialの環境構築は情報が結構あると思うので、そちらを参考に。ここにも設定を載せておくけど、ここは調査が甘いので、こうしない方がよかったり、冗長だったりするかもしれない。
cat .bash_profile
export LANG=ja_JP.UTF-8 export LC_ALL=ja_JP.UTF-8
cat .hgrc
[ui] username = ken

[defaults] add = --encoding=utf-8 clone = --encoding=utf-8 commit = --encoding=utf-8 pull = --encoding=utf-8 push = --encoding=utf-8 remove = --encoding=utf-8 revert = --encoding=utf-8

手順

一応、具体的に手順を書いておく。 今使っているIntelliJ CEはEAPなので、パスは "/Applications/IdeaX-IC-103.161.app" です。 まずは、Terminalの起動。
cd /Application
open IdeaX-IC-103.161.app
これで、普通にmercurialにコミットしたら日本語が通りました。

ん?もしかして?

IDEA+sbt-appengineで流れるような開発で環境変数を見てくれないって書いたけど、こういう起動にすれば環境変数を見てくれるんじゃない? appengine pluginのAPPENGINE_SDK_HOMEとか、JREBEL_JAR_PATHとか、使えるようになりそうな予感。