Wiem, że mogę używać wc
do liczenia znaków, słów i wierszy plików w wierszu polecenia .
Czy jest jakiś sposób, aby obliczyć liczbę słów w vimie ?
Możesz policzyć słowa i linie w środku vi
za pomocą vi
własnego licznika:
Naciśnij, ga następnie CTRL- g. Następnie dolna linia wygląda na przykład tak:
Col 1 of 11; Line 1 of 106; Word 1 of 344; Byte 1 of 2644
Lub użyj vi
metody do wywołania poleceń powłoki:
:w !wc -w
To wywołuje :w
najpierw komendę save ( ), a następnie wc -w
wyświetla wynik. Przykład:
:w !wc -w
344
Press ENTER or type command to continue
Naciśnij, Enteraby wrócić do vi
.
:w !<cmd>
konstruktu. Zapisuje bieżący bufor w potoku podłączonym do polecenia. Nie obiecuje się oddzielnego zapisu bieżącego bufora do pliku. Niemniej jednak robi to, o co pytano.Możesz także spróbować
:!wc %
w Vimie, choć liczy on rozmiar pliku na dysku, a nie to, co znajduje się w buforze Vima. To może być lub nie być to, czego chciałeś.źródło
-w
flagi, aby ograniczyć wynik tylko do słów) do odpowiedzi na usunięcie z 2014 r. Autorstwa D_Bye (który najwyraźniej sam ją usunął).Wtyczki takie jak vim-Airlines mogą zapewniać liczbę słów dla pliku (i wybranych elementów) jako część paska stanu.
źródło
Dla tych, którzy chcą policzyć liczbę słów w danym fragmencie tekstu (nie w całym pliku), użyj
\S\+
wyrażenia regularnego.:s/\S\+//gn
Wynik. Vim pokaże ci coś takiego:
10 matches on 1 line
Kiedy naciskasz
:
w trybie wizualnym, vim przygotowuje polecenie,'<,'>
które oznacza zastosowanie polecenia do zaznaczonego tekstu.\S\+
przechwytuje słowa, to znaczy grupy znaków oddzielone spacją.źródło