せらんメモスマートフォン用の表示で見るぱせらんメモこの広告は、90日以上更新していないブログに表示しています。vimCygwinでgitを使うようになってから一週間ほど経ったんだけど、ひとつだけ不満がある。それはコミットメッセージを書くときのエディタなんだけど、これを普段使い慣れているgvimにしたかった。gvimにできない理由gitで使うエディタは環境変数GIT_EDITORに設定すればいいわけだけど、Cygwinの中の世界と外の世界ではファイルパスが異なる*1ので上手くいかない。ひとつ、Cygwin上からプロセスを起動すると当然ながらCygwin上の環境変数を継承するので、$HOMEなどをはじめ色々とまずそうな感じもある。gvimにしたい理由コンソール上で動くvimに比べてgvimの方が色々と勝手がよいので可能ならgvimが使いたい。個人的に感じてるメリットとしてはこんなところか。IMEの制御ができるクリップボードが使えるタブが分かりやすいフォントが変えられる端末に依存せずにカラーが使える端末やscreenのキーバインド干渉に悩まされない他にも個人的にはあまり関係ないけど、ドラッグアンドドロップできるマウスで操作できるとかあるかもしれない。全般的に画面周りはgvimのほうが細かく設定できたりしてよい。この中で最重要なのが一番最初のやつで、インサートモードを抜けたらIMEをオフにするとか、そういうのが操作性を大きく左右する。環境変数と引数を加工してからgvimを起動するスクリプト問題は主に環境変数とパスなので、適当に加工してからgvimを起動するスクリプトを間に挟むことで解決を試みてみた。具体的には$HOMEを削除して、渡された引数のうちオプションじゃなさそうなのをcygpathでWindowsパスに変換してから起動するという感じ。"${args[@]}"fiWINDOWS_GVIMの部分は適当に修正してやってください。これを$HOME/bin/wgvimとか適当に置いて、GIT_EDITORに設定した。環境変数についてはもう少しWindows環境に近づけた方がいいのかもしれないけど、面倒くさかったのでとりあえずHOMEだけ消した。PATH、TEMP、TMPあたりも加工した方がいいのかもしれない。"$1")とかでいい気もしたけど、ちょっとだけ頑張って複数ファイルとかオプションつけても大丈夫にしてみた。判定がざっくりすぎるのであまり汎用的には使えないかも。PATHの優先順位がおかしい?ところで最初は上記のスクリプトを$HOME/bin/gvimとして置いたんだけど、gvimと叩くと何故かスクリプトではなくC:\apps\vim\gvim.exeが直接起動するという現象が。PATHを見る限りだと$HOME/binが最初に来てるのでそっちが優先されると思うんだけど......。パスを指定して実行すればもちろんスクリプトの方を起動できるんだけど、そんなの面倒くさいし仕方がないのでwgvimという名前にした。Pi(Raspbian)にmDNSを設定するSassとCompassを使ってみるbinaryへのキャストって......?月別アーカイブはてなブログをはじめよう!paselaさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。