こいつはRubyの学習にはもってこいと思い、コードリーディングしてみたヘ(^o^)ノ
Arrayクラスのeachがどんな処理をしているのか調べてみる。
コードリーディングにunite-grepを使ってみる。
パターン検索にはagを使います(早いらしい???)
agのインストール
$ brew install ag
Vimプラグインのunite.vimとvimproc.vimをインストール
unite-grepでagを使いたいので
.vimrc
" unite grep let g:unite_enable_start_insert = 1 let g:unite_enable_ignore_case = 1 let g:unite_enable_smart_case = 1 nnoremap,g : Unite grep:. -buffer-name=search-buffer nnoremap ,cg : Unite grep:. -buffer-name=search-buffer nnoremap ,r : UniteResume search-buffer if executable('ag') let g:unite_source_grep_command = 'ag' let g:unite_source_grep_default_opts = '--nogroup --nocolor --column' let g:unite_source_grep_recursive_opt = '' endif
vimを開いて,gとたたくとこんな感じで検索パターンを入力できる
結果がuniteで表示される
kernel/bootstrap/array.rb:1:class Array ← Enterでファイルを開く
eachメソッドを見てみる
要素の数だけループして、ブロックに要素の値を渡してる
引数にブロックがないときはなんか返してる
to_enumとは
そんな時はctagsヘ(^o^)ノ
rubiniusのルートディレクトリで
$ ctags -R
さっきのto_enumで<C-]>定義先へ
定義先から戻る場合は<C-o>
( ̄(エ) ̄)彡☆
参考ページ
unite.vimの使い方まとめ
ackを捨てて、より高速なag(The Silver Searcher)に切り替えた
0 件のコメント:
コメントを投稿