"Sertakan pencarian" adalah salah satu alat tersebut:
[I and ]I " search current buffer and included files for
" the word under the cursor, skipping comments
:ilist foo " same as above but for 'foo'
:ilist /foo " same as above but for a word containing 'foo'
Terkait dengan "sertakan pencarian", "pencarian definisi" juga menarik:
[D and ]D " search current buffer and included files for
" the definition of the symbol under the cursor
:dlist foo " same as above but for definition of 'foo'
:dlist /foo " same as above but for a definition containing 'foo'
:dlist / " list all definitions from the current buffer
" and included files
Kedua alat bergantung pada berbagai opsi yang mungkin atau mungkin tidak diatur oleh plugin tipe file Anda.
Lihat :help include-search
.
Anda juga dapat menggunakan gd
dan gD
sebagai versi ringan dari [D
dan ]D
.
Lihat :help gd
.
Dalam buffer saat ini, perintah di bawah ini akan mencantumkan setiap definisi fungsi dan nomor barisnya:
:g/func/#
Lihat :help :g
.
:grep
dan :vimgrep
juga bermanfaat, jika hanya karena hasilnya dimasukkan ke dalam daftar perbaikan cepat yang dapat dinavigasi dengan :cn
, :cp
... dan ditampilkan di jendela perbaikan cepat yang sangat berguna.
Lihat :help :grep
, :help :vimgrep
dan :help quickfix
.
Berbicara tentang daftar quickfix / jendela, saya menulis fungsi ini (berdasarkan karya orang lain) untuk menampilkan hasil [I
, ]I
, :ilist
, [D
, ]D
dan :dlist
dalam daftar quickfix / jendela. YMMV tentu saja.
Meskipun tidak sepenuhnya alat navigasi, saya menemukan jendela pratinjau sangat berguna untuk melihat tanda tangan dari fungsi yang saya kerjakan.
Lihat :help preview-window
.
Yang mengatakan ...
Vim tidak tahu apa-apa tentang kode Anda di luar beberapa pola regex yang mungkin cocok atau tidak cocok dengan gaya pengkodean Anda atau apa pun. Ini berarti bahwa navigasi kode lebih baik dilakukan dengan bantuan alat eksternal seperti ctag, cscope atau GNU GLOBAL.