タグ

hookに関するtmsanrinshaのブックマーク (9)

  • dein.vimでon_source処理を簡単に書けるようにした - Qiita

    dein.vim でプラグインが読み込まれた時に実行させたい処理は autocmd でユーザーイベントをフックして使うようになったようだ。NeoBundleでは独自のon_sourceオプションがあったが、dein.vimでは標準の機能を上手く使ってシンプル&高速化していこうっていうことだと思う。 で、そのsourceフックの書き方について、何か上手い書き方は無いかなーと色々模索してみた記録です。 結論を先に書いておくと、最終的にはTOML管理が一番良さそうという結論に落ち着きました。 普通の書き方 dein.vim ではプラグイン毎の設定や読み込み時の追加処理はこんな感じに書けば良いようだ。 " どこか最初の方に書いておく augroup MyAutoCmd autocmd! augroup END if dein#tap('deoplete-go') " プラグインの設定 let g:

    dein.vimでon_source処理を簡単に書けるようにした - Qiita
  • PHPで開発するためのgit hookを作った

    こんにちは。 久々の更新です。 最近Schemaというフレームワークを作っており、 PHPでの開発について色々と新たな知識を得る機会がたくさんあります。 そこでまずは開発環境の構築編として、最低限のお作法を担保する Gitのhook を作成してみました。 目的 – 5箇条 それくらいきちんとやれよ という話に尽きるのですが、 自動で確認してくれるに越したことはありません。 プログラマは得てして機械的な確認が苦手な生き物です。楽することに全力であるべきです。 (マジレスをすると、人的要素を排除することで、うっかりや人為的なミスが無くなるので、より確実にコードの品質を担保できます。 ただし、このチェックが通れば完璧というわけではないので、加えて動作確認やコードレビュー等の人的チェックも必要かと思います)。 と能書きはこのくらいにしておいて、具体的にやりたいことは以下の通りです。 PHPの構文チ

    PHPで開発するためのgit hookを作った
  • masterへのforce pushとdeleteを防ぐpre-pushフック // ktmtt //

    やるな、と言われればそうなんだけど うっかりmasterに git push --force とかやりそうになると背筋が凍る。 リモートがgithubだとリモート側で拒否とかできないので、クライアント側の pre-push フックを使って禁止したい。 調べてみると 良い感じ なフックがあったので少しいじって使うことにした。 .git/hooks/pre-push protected_branches=( production master ) for i in "${protected_branches[@]}" do protected_branch=$i policy='[Policy] Never push, force push or delete the '$protected_branch' branch! (Prevented with pre-push hook.)' cu

  • tbaggery - Effortless Ctags with Git

    08 Aug 2011 In case you’ve been living under a programming rock, Ctags (specifically Exuberant Ctags, not the BSD version shipped with OS X) indexes source code to make it easy to jump to functions, variables, classes, and other identifiers in (among other editors) Vim (see :help tags). The major downside to Ctags is having to manually rebuild that index all the time. That’s where the not-so-novel

  • ctagsと連携するように環境を構築する - Qiita

    でカレントディレクトリにtagsファイルが作成されます。 これをvimで読み込む設定にしておけばジャンプできたり補完できたりと便利になるしろもの。 今回考察すること 実践Vimの方ではプチまとめとしての考察の項では以下のように書かれている。 コミットするたびにコードベースのインデックスを再作成するのがちょうどよいところを突いている。確かに、作業中のローカルコピーと、tagsファイルが分離されるが、エラーはなんとかなる。アクティブに作業しているコードは、タグを使ってナビゲーションを行いたくなることはあまりないコードだ。 僕もそう思う。 しかしそれはバージョン管理を使っていて、なおかつ分散バージョン管理、例えばGitを使っているプロジェクトにしか適応されないという問題を抱えている。 バージョン管理使うようにしたりgit使うようにすればいいじゃんって、そう思うけどもそうじゃないじゃん?やりたいこ

    ctagsと連携するように環境を構築する - Qiita
  • quickrun.vim で make する - C++でゲームプログラミング

    この記事は Vim Advent Calendar 2012 106日目の記事になります。 もうすぐ煩悩の数に追いつきそうですね。 元ネタ:unite-buildとrepomanでebuild quickrun.vim でもやってみた。 って事で簡単に quickrun.vim でも make を試してみました。 と、言っても基的に quickrun.vim で行うことは make コマンドの呼び出しぐらいなんですけどね。 " :QuickRun make " で make する " outputter や runner はお好みで let g:quickrun_config = { \ "make" : { \ "command" : "mingw32-make", \ "exec" : "%c %o", \ "outputter" : "error:buffer:quickfix",

    quickrun.vim で make する - C++でゲームプログラミング
  • エラーのあるファイルはコミットしない(git編) - 肉とビールとパンケーキ by @sotarok

    あんま知られてないけど,PHP界隈でも Web Advent 2008 っていう,アドベントカレンダーやってたみたいです.ぜんぜんしりませんでしたそしてちらっと読んだけどあまりおもしろくn(r で,その中にちょっと面白げな記事を見つけたので,紹介. Web Advent 2008 / Don’t Commit That Error git の pre-commit hook を使って,エラーチェック だいたいはテスト走らせてコミットとか,実行させてからコミットとかするけど,ちょっとしたところの修正だから確認もせずにコミットしてしかもよりによってそれがエラー起こしてたりとか,まぁ,たまにありますよね. そのために,コミット直前の pre-commit にフックして,PHP Lintを走らせ,その結果次第でコミットをなかったことにしちゃったりしませんか,という趣旨の話. で,具体的には, コミ

    エラーのあるファイルはコミットしない(git編) - 肉とビールとパンケーキ by @sotarok
  • PuppetのSyntaxをvim(syntastic)とgit hooks(pre-commit)の2重でチェックするようにした - Glide Note

    puppetのmanifestを書いていて、我ながらtypo、構文ミスとかヘボいミスが多すぎるので、 vimとgit hooks(pre-commit)とで2重でsyntax checkをするようにした。 具体的なsyntax checkの方法 vimからはsyntasticを利用してsyntax check git hooks(pre-commit)からpuppet parser validateを利用して、commitのタイミングでsyntax check。問題がある場合はcommitが出来ないようにする puppetとpuppet-lintの導入 manifestを書いているマシンにpuppetが入っていないとSyntax Checkが出来ないので導入。 またsyntasticがpuppet-lintを利用するので併せて導入。 私は、最近はmac上でmanifestを書いているのでg

  • neobundle.vim でプラグインが読み込まれた時に処理を hook する - C++でゲームプログラミング

    neobundle.vim でプラグインが読み込まれた時に処理を hook することができるようになりました。 neobundle#get 関数を使用して hook することができます。 " vimshell だとこんな感じ let s:bundle = neobundle#get("vimshell") " hooks の初期化 let s:bundle.hooks = get(s:bundle, "hooks", {}) " source 後に呼び出される処理を記述する function! s:bundle.hooks.on_source(bundle) let g:vimshell_split_command = "split" " 表示形式 let g:vimshell_prompt = $VIMUSERNAME."% " MyAutocmd FileType int-* \ in

    neobundle.vim でプラグインが読み込まれた時に処理を hook する - C++でゲームプログラミング
  • 1