Я знаю, что могу использовать wc
для подсчета символов, слов и строк файлов в командной строке .
Можно ли как-то подсчитать количество слов в vim ?
Вы можете считать слова и строки внутри, vi
используя vi
собственный счетчик:
Нажмите, gа затем CTRL- g. Тогда нижняя строка выглядит, например, так:
Col 1 of 11; Line 1 of 106; Word 1 of 344; Byte 1 of 2644
Или используйте vi
метод для вызова команд оболочки:
:w !wc -w
:w
Сначала вызывается команда save ( ), а затем wc -w
выводятся выходные данные. Пример:
:w !wc -w
344
Press ENTER or type command to continue
Нажмите, Enterчтобы вернуться к vi
.
:w !<cmd>
конструкции. Он записывает текущий буфер в канал, подключенный к команде. Отдельная запись текущего буфера в файл не обещана. Тем не менее, он делает то, что задал вопрос.Вы также можете попробовать
:!wc %
в Vim, хотя он подсчитывает размер файла на диске, а не размер буфера Vim. Это может или не может быть то, что вы хотели.источник
-w
флага, ограничивающего вывод только словами) на ответ на удаление от 2014 года от D_Bye (который, по-видимому, сам удалил его).Плагины, такие как vim-aviation, могут предоставлять счетчики слов для файла (и выбранных) как часть строки состояния.
источник
Для тех, кто хочет посчитать количество слов в данном фрагменте текста (а не в целом файле), используйте
\S\+
regexp.:s/\S\+//gn
Результат. Vim покажет вам что-то вроде этого:
10 matches on 1 line
Когда вы нажимаете
:
в визуальном режиме, vim добавляет команду к'<,'>
что означает применение команды к выделенному тексту.\S\+
захватывает слова, то есть группы символов, разделенные пробелом.источник