アラのアラアラしい日記

こっそりかいてます

git statusでsyntax checkをしよう

こんばんわ!
膝に痛みを感じた瞬間に痛風だと思った情弱です!

最近は少しだけPHPを触るようになってファッションPHPヤローみたいな生活をしている訳ですが、
Rubyに体が慣れてしまってどうしてもお昼ご飯を忘れたおばあちゃんのノリでセミコロンを忘れるので、

git statusの時についでにsyntax chackするように.gitconfigにaliasを追加しました。
結構ごりごりです。

gist21c13200bae7d489896b

内容としては、git status --shortで編集済みのファイルパスを取得して、
その中でphp拡張子がついているファイルがあればphp -lで文法チェックをしている流れです。

PHPの場合はphp -lで文法チェックができますが、コマンドを打っているだけなので他の言語でも使えます。
Rubyでもruby -wcとかで同じように表示されると思います。

ただ、.gitconfigにshellscriptを書く場合は記号をエスケープする必要があるので
普通に新しいファイルに同じ内容を書いて、それをaliasで読み込む方が正直やりやすいです。

[alias]
  st = "!f(){ . git_syntax_check.sh };f"

こんな感じ

ただ、設定ファイルをこれ以上増やすのが嫌だったので.bashrcに関数を追加してその関数を
.gitconfigから呼ぼうとして色々試してみたのですがなかなか上手くいかなかったのでこの方法にしました。

.gitconfigのaliasから他のshellscriptファイルの関数を呼ぶナイスな方法を知っている方がいたらぜひ教えてくださいスリスリ