Используя vim, что такое "'<,'>"? - PullRequest
12 голосов
/ 17 января 2012

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

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

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

1 Ответ

27 голосов
/ 17 января 2012

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

Например, :'<,'>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

Вики Vim содержит дополнительную информацию о диапазонах Vim.

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