Я использую Vim для написания текста, который не является кодом, просто пишу в свободной форме.Для этого мне бы хотелось, чтобы formatoptions
включал флаг w
и иногда флаг a
.
Предполагается, что флаг w делает его таким, что конец абзаца происходит, когда строка заканчивается непустым символом, а не первой пустой строкой (что является значением по умолчанию Vim).Вот фрагмент справочной документации:
w Trailing white space indicates a paragraph continues in the next line.
A line that ends in a non-white character ends a paragraph.
Флаг делает автоматическое переформатирование при вводе.Например, в документе с текстом ниже и w и флажками строки переформатируются, поскольку я печатаю только до «последней строки в абзаце», а не ниже.
This it the first line of the paragraph. <cr>
The text in it reformats properly as I type <cr>
up to the last line of the paragraph, which is <cr>
right after this line, that is, just below here: <cr>
This is the last line of paragraph.<cr>
This is the first line of second paragraph. <cr>
Even though there is no blank line between <cr>
it and first paragraph, any reformatting of <cr>
the first paragraph ends at the last line <cr>
of first paragraph.<cr>
<cr>
This the the first line after second paragraph<cr>
Теперь к моему вопросу: С флагами a
и w
переформатирование работает правильно, как я печатаю в первом абзаце, т. Е. Второй абзац остается нетронутым.Но иногда я хочу выбрать текущий абзац, используя vap
.Мне кажется, что с установленным флагом w
это должно выбрать только первый абзац.Но на самом деле, ввод vap
в первом абзаце также приводит к выделению второго абзаца, вплоть до пустой строки с <cr>
, по-видимому, игнорируя флаг w
formatoptions.
Это ожидаемое поведение?Я что-то пропустил?Почему vap
не выбирает только тот абзац, в котором я нахожусь, который заканчивается на первой строке без пробела?