WebStorm/PHPStormでMercurialプラグインを扱う

hatena WebStorm/PHPStormでMercurialプラグインを扱う
 WebStorm/PHPStormでMercurialプラグインを扱う

※ 2011/12/21 追記:  はてなブックマークのコメントで教えてもらいましたが、~/.MacOSX/environment.plist を編集してHGENCODINGをutf8としてセットしログインし直すだけでOKでした。(PHPStorm 3.0 / Mac OSX  10.7.2で確認)以下の作業は不要です。

JetBrains社のPHP統合開発環境であるPHPStormは連携するVCSとして標準でmercurialが使えますが、Mac上で使用する場合標準の設定では日本語のコミットメッセージは文字化けします。これの回避方法がわかったので書きます。

Version Control 300x134 WebStorm/PHPStormでMercurialプラグインを扱う

環境

  • Mac OSX 10.6.8
  • PHPStorm 2.1.2
  • 文字コード設定はutf-8

[注]
※1 WebStormはPHPStormのサブセットなので、本エントリの内容はWebStormでもそのまま適用されるはずです。また他のJetBrains製IDEもおそらく同じ方法が使えると思います。
※2 他のプラットフォーム・環境の方は自分の環境に置き換えて読んでください。

前提

既存のmercurialがそもそも正しく日本語コミットメッセージを扱えていることが必要です。つまりコマンドラインからhgコマンドを使って正しく日本語のコミットメッセージ正しく扱える必要があります。これについては

.bashrcなどに

export HGENCODING=utf-8

と記述し環境変数HGENCODINGを設定すれば大抵の場合OKのはずです。

設定

ポイントは

  1. HGENCODINGの値をPHPStormに認識させること。
  2. PHPStorm起動時にJVMの文字エンコーディングをutf-8にすること。

の2点です。

最初のポイントですが、実はPHPStormの設定を見ると”Settings > Version Control > VCSs > Mercurial”に”Run as “bash -c  <path to hg>”というオプションがあり、

Settings 300x169 WebStorm/PHPStormでMercurialプラグインを扱う

 

ここにチェックを入れれば.bashrcのHGENCODINGの値を取り込んでくれると期待して試したのですが、現行のPHPStormの場合文字化けが解消したように見えるもののペインが真っ白になったり全体の動作が遅くなるなど挙動不審になり使い物にならないのでこのオプションは使いません。その代わりにここ(IntelliJ+mercurialで日本語コミットログ | Ken’s evitation)にあるようにアプリをターミナルから起動するという方法を使います。ターミナルから

open /Applications/PhpStorm\ 2.1.2.app/

と実行して起動します。これで既存のコミットメッセージは文字化けせずに表示出来るようになる…のですが、新規のコミットメッセージに日本語が含まれていると怒られてコミットが失敗します。

trunk  codes chapter3 trunk ... application modules storefront controllers CartController.php JetBrains PhpStorm 2.1.2 1 300x176 WebStorm/PHPStormでMercurialプラグインを扱う

JVM起動オプションの設定

そこで第2のポイントの設定を行います。NetBeansの設定編でも書きましたが、OSX10.6のJDKはデフォルトがShift_JISなのでJVMを起動する際オプションとして明示的に文字コードをutf-8にする必要があります。OSX版のPHPStormの場合その設定は

/Applications/PhpStorm 2.1.2.app/Contents

の中にあるInfo.plistを編集して行います。(編集前に念のためオリジナルのplistはリネームするなどしてバックアップしておきましょう。)

Info.plistを開いて下線部で示した部分を追加します。このとき既存のオプションとの間に半角スペースが必要です。

Info.plist  300x53 WebStorm/PHPStormでMercurialプラグインを扱う

※OSX以外のプラットフォームを使用している場合はアプリケーション内のどこかに起動オプションを記述している.confファイルがあるはずのでそれを編集します。追加するオプションがNetBeansの場合とは微妙に違うので注意しましょう。

Info.plistの編集が終わったらターミナルから

open /Applications/PhpStorm\ 2.1.2.app/

としてPHPStormを起動します。以上で日本語のコミットメッセージの読み書きが正しく扱えるようになります。

This entry was posted in 技術・開発ツール and tagged , . Bookmark the permalink.

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">