Ada dua cara ini dapat dicapai, cara penulisan naskah murni dan wccara.
Cara vim murni
Anda dapat menggunakan perintah pencarian dan ganti untuk melakukan ini. Sebagai contoh:
:%s/\<\w\{-}\>//gn
Apa yang dilakukan adalah alih-alih mengganti pola yang diberikan dengan sesuatu, itu hanya menghitung kemunculan pola tersebut. Ini karena nbenderanya. Untuk menghitung kata-kata di bagian tertentu (dalam hal ini baris 5 hingga 15), Anda dapat melakukan sesuatu seperti ini:
:5,15s/\<\w\{-}\>//gn
Ini menghilangkan kebutuhan untuk menarik konten pilihan ke dalam register. Untuk melihat lebih banyak kemungkinan untuk apa yang dapat dilakukan 5-15, baca topik bantuan untuk cmdline-ranges. Jika Anda ingin sering melakukan ini, mungkin baik untuk membuat pemetaan (atau perintah) untuk itu. Juga, jika Anda telah hlsearchmengaktifkan, Anda mungkin ingin menjalankan :nohlsearchsesudahnya untuk menghapus sorotan.
The wccara
Hal yang sama dapat dicapai wc. Dengan cara yang sama Anda dapat menggunakan cmdline-rangesuntuk memilih area dengan :sperintah, Anda dapat menggunakannya dengan perintah eksternal. Sebagai contoh:
:5,15!wc -w
Ini menjalankan baris 5 hingga 15 melalui wcperintah. Kelemahan dari ini adalah bahwa ia mengganti rentang garis dengan output dari perintah. Anda dapat membatalkan perubahan ini dengan menekan u. Perhatikan juga bahwa solusi vimscript mungkin tidak berfungsi dengan bahasa yang berbeda, karena \wtidak cocok dengan apa yang biasanya menjadi karakter kata dalam bahasa lain. wcmungkin lebih baik dalam hal ini daripada \w. Juga, ini adalah perintah mewah untuk membuatnya lebih cepat untuk melakukan ini:
command -range=% -addr=lines WordCount execute '<count>!wc -w' | .y a | undo | echo @a
Perhatikan bahwa ini akan menghalangi aregister.
Catatan
Tampaknya ini juga dapat dilakukan dalam mode visual dengan g<C-g>kombinasi tombol. Lihat jawaban Carpetsmoker untuk penjelasannya.