
Photo Courtesy:mint imperial
Artikel ini adalah bagian dari seri Tips dan Trik Vi / Vim yang sedang berlangsung. Sebagai pemrogram atau administrator sistem, Anda akan terus menelusuri kode sumber dan skrip shell.
Berikut adalah beberapa aktivitas umum yang mungkin Anda lakukan saat menjelajahi file kode sumber:
- Menavigasi ke definisi fungsi dengan menentukan nama fungsi.
- Menavigasi ke definisi fungsi dari 'panggilan fungsi'.
- Kembali lagi ke fungsi panggilan dari definisi.
- Melihat prototipe/tanda tangan fungsi atau variabel.
- Melihat jumlah fungsi dalam file, dll.,
Dalam artikel ini, mari kita tinjau cara melakukan aktivitas di atas secara efisien di editor Vim menggunakan plugin ctags dan taglist.
Teknik yang disebutkan dalam artikel ini menggunakan editor Vim dapat digunakan untuk bahasa pemrograman apa pun.
Aku. Instal dan Konfigurasi Paket Ctags
Langkah 1:Menginstal Paket ctags
# apt-get install exuberant-ctags (or) # rpm -ivh ctags-5.5.4-1.i386.rpm warning: ctags-5.5.4-1.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e Preparing... ########################################### [100%] 1:ctags ########################################### [100%]
Langkah 2:Membuat ctag pada kode sumber Anda
Buka direktori tempat kode sumber Anda berada. Pada contoh di bawah ini, saya telah menyimpan semua kode sumber pemrograman C saya di bawah direktori ~/src.
# cd ~/src # ctags *.c
Perintah ctags akan membuat tag nama file yang akan berisi semua informasi (tag) yang diperlukan tentang file program *.c. Berikut ini adalah sebagian output dari entri tag dalam file ctags.
# cat tags AddAcl dumputils.c /^AddAcl(PQExpBuffer aclbuf, const char *keyword)$/;" f file: ArchiveEntry pg_backup_archiver.c /^ArchiveEntry(Archive *AHX,$/;" f AssignDumpId common.c /^AssignDumpId(DumpableObject *dobj)$/;" f
II. 4 Penggunaan Ctag yang Kuat di dalam Vim Editor
1. Arahkan ke definisi fungsi dengan menentukan nama fungsi menggunakan :ta
Pada contoh di bawah ini, :ta main akan membawa Anda ke definisi fungsi utama di dalam mycprogram.c
# vim mycprogram.c :ta main
Dengan menggunakan fasilitas ini, Anda dapat menavigasi ke definisi fungsi apa pun dengan menentukan nama fungsi.
2. Menavigasi ke definisi fungsi dari 'panggilan fungsi' menggunakan Ctrl + ]
Saat kursor berada di bawah pemanggilan fungsi, tekan CTRL + ] untuk membuka definisi fungsi. Dalam contoh berikut, ketika kursor berada dalam pemanggilan fungsi ssh_xcalloc, menekan Ctrl + ] akan membawa Anda ke definisi fungsi ssh_xcalloc.
# vim mycprogram.c av = ssh_xcalloc(argc, sizeof(char *));
Catatan: Jika ctags tidak dapat menemukan fungsi itu, Anda akan mendapatkan pesan berikut di bilah status vim di bagian bawah:E426 tag not found ssh_xcalloc
3. Kembali lagi ke fungsi panggilan dari definisi menggunakan Ctrl + t
Tekan CTRL + t yang akan mengembalikan panggilan fungsi lagi.
4. Menavigasi daftar nama fungsi yang memiliki nama yang mirip
Dalam contoh ini, :ta akan menuju ke definisi fungsi yang namanya dimulai dengan get, dan juga membuat daftar untuk menavigasi dengan fungsi yang relevan.
# vim mycprogram.c :ta /^get
Perintah vim berikut dapat digunakan untuk menavigasi melalui fungsi yang relevan
- :ts – menunjukkan daftar.
- :tn – pergi ke tag berikutnya dalam daftar itu.
- :tp – pergi ke tag sebelumnya dalam daftar itu.
- :tf – pergi ke fungsi yang ada di daftar pertama.
- :tl – pergi ke fungsi yang ada di daftar terakhir.
III. Plugin Taglist:Editor Vim sebagai Browser Kode Sumber Utama
Ctag di atas mungkin tidak memberikan perasaan penjelajahan kode sumber, karena didorong oleh perintah alih-alih menelusuri kode secara visual. Jadi jika Anda ingin menavigasi melalui sumber seperti menavigasi di browser file, Anda perlu menggunakan plugin taglist vim yang menjadikan vim sebagai browser kode sumber.
Penulis plugin daftar tag vim Yegappan Lakshmanan, mengatakannya sebagai
Plugin “Tag List” adalah plugin browser kode sumber untuk Vim dan memberikan gambaran umum tentang struktur file kode sumber dan memungkinkan Anda menelusuri file kode sumber secara efisien untuk bahasa pemrograman yang berbeda.
Langkah 1:Unduh plugin Vim Taglist
Unduh dari situs web vim.org seperti yang ditunjukkan di bawah ini.
$ cd /usr/src $ wget -O taglist.zip http://www.vim.org/scripts/download_script.php?src_id=7701
Langkah 2:Instal Plugin TagList Vim
$ mkdir ~/.vim # if the directory does not exist already $ cd ~/.vim $ unzip /usr/src/taglist.zip Archive: /usr/src/taglist.zip inflating: plugin/taglist.vim inflating: doc/taglist.txt
Langkah 3:Aktifkan plugin di ~/.vimrc
Tambahkan baris berikut ke ~/.vimrc untuk mengaktifkan plugin untuk editor Vim.
$ vim ~/.vimrc filetype plugin on
Prasyaratan: ctags harus diinstal untuk menggunakan plugin taglist. Tetapi tidak harus membuat daftar tag secara manual dengan perintah ctags untuk menggunakan plugin daftar tag.
IV. 5 Fitur Kuat dari Plugin Taglist Vim
1. Buka Jendela Daftar Tag di Vim menggunakan :TlistOpen
# vim mycprogram.c :TlistOpen
Dari editor vim, jalankan :TlistOpen seperti yang ditunjukkan di atas, yang membuka jendela daftar tag dengan tag dari file saat ini seperti yang ditunjukkan pada gambar di bawah.
Gbr: Vim – Kode Sumber Tag/Daftar Fungsi Windows
2. Langsung ke Definisi Fungsi di dalam kode sumber
Dengan mengklik nama fungsi di panel kiri, Anda akan dapat pergi ke definisi fungsi seperti yang ditunjukkan pada Gambar di bawah.
Gambar: Lompat ke definisi fungsi dengan cepat
Selain melompat ke nama fungsi dengan cepat, Anda dapat melompat ke kelas, struktur, variabel, dll., dengan mengklik nilai yang sesuai dari browser tag di sisi kiri.
3. Lompat ke definisi fungsi yang ada di file sumber lain
Saat Anda menelusuri fungsi dalam file sumber dan ingin membuka definisi fungsi yang ada di file lain, Anda dapat melakukannya dengan dua metode berbeda.
Metode 1:
Jika Anda memiliki ctag yang dihasilkan untuk file itu, saat kursor berada dalam panggilan fungsi menekan CTRL + ] akan membawa Anda ke definisi fungsi. Dan secara otomatis jendela daftar tag akan menampilkan tag untuk file yang baru dibuka tersebut.
Metode 2:
Buka file lain juga di sesi vim yang sama yang akan memperbarui jendela daftar tag dengan informasi tentang file itu. Cari nama fungsi tersebut di jendela daftar tag, dan dengan menekan
4. Melihat prototipe/tanda tangan fungsi atau variabel.
Tekan 'spasi' di nama fungsi atau nama variabel di jendela daftar tag untuk menunjukkan prototipe (tanda tangan fungsi) di bilah status VIM seperti yang ditunjukkan di bawah ini. Pada contoh di bawah, klik fungsi selectDumpableTable dari jendela Tag dan tekan bilah spasi, yang menampilkan tanda tangan fungsi untuk fungsi selectDumptableTable di bilah Status Vim bawah.
Gambar: Tampilkan tanda tangan Fungsi di Bilah Status Vim
5. Melihat jumlah total fungsi atau variabel dalam file kode sumber
tekan 'spasi' di jenis tag di jendela daftar tag, yang menunjukkan jumlah itu. Pada contoh di bawah ini, saat kursor berada di ruang tekan 'fungsi', yang akan menampilkan jumlah total fungsi dalam kode sumber saat ini.
Gambar: Menampilkan jumlah total fungsi yang tersedia dalam kode sumber
Untuk menulis file kode sumber baru secara efektif menggunakan Vim, silakan merujuk ke artikel kami sebelumnya:
- Jadikan Vim sebagai IDE Perl Anda Menggunakan Plugin perl-support.vim
- Jadikan Vim sebagai IDE C/C++ Anda Menggunakan Plugin c.vim
- Jadikan Vim sebagai Bash-IDE Anda Menggunakan Plugin bash-support.
Bacaan yang Disarankan
Peretasan Vim 101, oleh Ramesh Natarajan . Saya seorang pecandu baris perintah. Jadi, tentu saja saya penggemar berat editor Vi dan Vim. Beberapa tahun yang lalu, ketika saya menulis banyak kode C di Linux, saya biasa membaca semua tips dan trik editor Vim yang tersedia. Berdasarkan pengalaman editor Vim saya, saya telah menulis eBook Vim 101 Hacks yang berisi 101 contoh praktis tentang berbagai fitur canggih Vim yang akan membuat Anda cepat dan produktif dalam editor Vim. Bahkan jika Anda telah menggunakan Editor Vi dan Vim selama beberapa tahun dan belum membaca buku ini, bantulah diri Anda sendiri dan baca buku ini. Anda akan kagum dengan kemampuan editor Vim.
Artikel Editor Vim Keren
Berikut adalah beberapa tutorial editor Vi / Vim yang mengagumkan yang mungkin berguna bagi Anda.
- 12 Contoh Cari dan Ganti yang Kuat untuk Editor Vim
- Tutorial Makro Vi dan Vim:Cara Merekam dan Memutar
- Peramban Firefox Turbocharge Dengan Fungsi Editor Vim Menggunakan Add-on Vimperator
Catatan: Silakan berlangganan The Geek Stuff dan jangan lewatkan tips dan trik editor Vi dan Vim di masa mendatang .