2012-01-17 4 views
12

При использовании Vim в визуальном режиме выбор текста, а затем вызов команды двоеточия показывает : '<,'> вместо :, поскольку он будет показывать, когда я делаю другие вещи (например, открытие файла).Что такое "<,'>"?

Что означает '<,'> означает?

Использование linux (debian), gnome-terminal, vim7.2

ответ

26

Это означает, что команда, которую вы набираете после :'<,'> будет работать на той части файла, который вы выбрали.

Например, :'<,'>d удалит выбранный блок, тогда как :d удаляет строку под курсором.

Аналогичным образом, :'<,'>w fragment.txt записывает выбранный блок в файл с именем fragment.txt.

Две части, разделенные запятой ('< и '>), являются метками, которые соответствуют началу и концу выбранной области. Из справочных страниц (:help '<):

             *'<* *`<* 
'< `<     To the first line or character of the last selected 
         Visual area in the current buffer. For block mode it 
         may also be the last character in the first line (to 
         be able to define the block). {not in Vi}. 

                 *'>* *`>* 
'> `>     To the last line or character of the last selected 
         Visual area in the current buffer. For block mode it 
         may also be the first character of the last line (to 
         be able to define the block). Note that 'selection' 
         applies, the position may be just after the Visual 
         area. {not in Vi}. 

Когда используются таким образом, метки просто указать диапазон для команды, которая следует (см :help range). Конечно, их можно смешивать и сопоставлять с другими спецификаторами номера строки. Например, следующая команда удалит все строки из начала выбранной области до конца файла:

:'<,$d

ВИМ Wiki имеет more information на Vim диапазонов.

+1

Для получения дополнительной информации ': help range'. – Benoit

Смежные вопросы