vimmerに捧げるgitプラグイン集

Vi

この記事はMikeTOKYO Advent Calendar 2013の7日目です。「メリーvimリマス!」vimと過ごすvimリマスの季節が今年もやって来ました(人´∀`) 今日は僕がgitをvimで使用する際のオススメプラグイン3点を紹介したいと思います。1. vim-fugitive 定番の fugitive…

vim-powerlineをもっとカッコ良くする

Vi

皆さん、vimってますか? なかなか pathogen から移行できない yanaken です。以前から vim-powerline を導入していましたが、更にカッコ良く出来るとのことでやってみました。結果、以下になりました。 やり方・失敗談(w)は以下。 以前はこんな感じ。 1. fo…

git log で変更ファイル一覧を取得する

git

忘れないようにメモメモ // 最新と一つ前の変更ファイルを取得する git diff --stat --color HEAD^ HEAD app/controllers/TestController.php | 85 ---------------------------- app/models/UserTest.php | 37 ------------ app/views/test.html.php | 2 +-

PHP5.4 alpha1 - 配列(array)について

PHP

ずいぶん久々に投稿します。 今回はPHP5.4で追加された配列に関する内容を記述。・配列で[]による初期化が可能 $a = [1,2,3,['hige'=>'higehige']]; print_r($a); //Array //( // [0] => 1 // [1] => 2 // [2] => 3 // [3] => Array // ( // [hige] => higeh…

std::vector - erase 時に std::remove を活用する

std::vector で特定を消去したい時に便利な方法があったので記載。 とりあえず今までのコードを記述。 std::vector<int> hige; hige.push_back(2); hige.push_back(5); hige.push_back(2); hige.push_back(6); ... std::vector<int>::iterator it = hige.begin(); whil</int></int>…

std::map - erase の戻り値を活用する

またまた std::map の記事です; std::map で erase してみた。 std::map<int, char> hige; hige.insert(std::make_pair(1, 'a')); ... std::map<int, char>::iterator it = hige.find(1); if (it == hige.end()) { // キーが重複している } else { hige.erase(it); } 「erase 時に</int,></int,>…

戻り値の型が異なる関数をオーバーロードする

C++

「戻り値の型が異なる関数をオーバーロードしたい!」 ってことがよくある。 とりあえずパッと思いついたのはこれ。 ※Traits(=特性)というテクニックらしい 追記:2010-03-14 template<class T> T getValue(); template<> int getValue<int>() { return 1; } template<> cha</int></class>…

Visual Studio プラグイン ViEmu をいじってみる

辺りを見渡してもあまりいない Vi 使い。通称「Vimmer」 仕事上、Visual Studio を使用することもあり、そろそろ GVim + ctags コンビも辛くなってきたので ViEmu を購入してみた。 http://www.viemu.com/ Eclipse や Netbeans のViライクなプラグインにはど…

std::map - insert 時の無駄な find を防ぐ

std::map 使用時に、 「挿入させたいキーが既に登録されているかチェックしたい」 ってことがよくある。 そんな時は insert の戻り値を使用する。 std::map<int, char> hige; hige.insert(1, 'a'); ... std::map<int, char>::_Pairib pib = hige.insert(1, 'b'); if (!pib.second) </int,></int,>…

std::map - erase 時の iterator の無効化を防ぐ

std::map を使用していると、 「ある条件を満たし(た|てない)要素を削除したい」 ってことがよくある。 そんな時はこんな感じにしてみる。 std::map<int, bool> hige; std::map<int, bool>::iterator it = hige.begin(); while (it != hige.end()) { if (it->second == true) { </int,></int,>…