Vim - считать строки в выбранном диапазоне - PullRequest
71 голосов
/ 31 августа 2011

Я хочу считать строки в диапазоне, независимо от того, какой диапазон, но пусть это будет, скажем, визуальный блок. Какой самый короткий способ сделать это. Все, что приходит мне в голову, это что-то вроде: '<,'>s/.//n но я не верю, что это самый короткий путь.

Итак, кто-нибудь может дать мне подсказку? Заранее спасибо.

Ответы [ 3 ]

121 голосов
/ 31 августа 2011

В визуальном режиме нажмите g C-g

Типичный выход:

Selected 7 of 22 Lines; 8 of 32 Words; 201 of 491 Chars; 201 of 497 Bytes-- VISUAL LINE --


Источник : :he count-items ( обнаруживается как: :he Tab Tab ... )

19 голосов
/ 01 сентября 2011

Установите параметр showcmd (:h 'sc'), и вам никогда не нужно будет ничего вводить, чтобы узнать, сколько строк выбрано - сначала, поскольку я забыл, что я установил этот параметр, я не сделал не понимаю суть вашего вопроса. ^^

В противном случае, если вы хотите получить это число программно, это просто:

:echo line("'>") - line("'<") + 1

Из функции диапазона также можно получить a:lastline-a:firstline+1. (:h function-range-example)

7 голосов
/ 31 августа 2011

'<,'>s///n на один символ короче.: -)

Если я просто хочу узнать количество строк в визуальном выделении, я обычно просто дергаю его (нажмите y).В зависимости от типа выбора будет написано «5 строк сняты» или «блок из 5 строк снят».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...