2015-04-27 3 views
1

Когда я печатаю «1. blah blah blah», VIM признает «1.», префикс и отступы остальной части абзаца.Отступ с надписью "#." начало абзаца

Я хотел бы настроить VIM, чтобы сделать то же самое с "#." литеральный префикс, поскольку файлы REST автоматически заполняют абзацы при запуске с помощью «#.».

Справка !.

+0

Вы можете получить ответы более быстро в [Vi.SE] (http://vi.stackexchange.com/) – Kevin

ответ

1

Это управление опцией 'formatlistpat'. От его :help 'formatlistpat':

Шаблон, используемый для распознавания заголовка списка. Это используется для флаг «n» в «formatoptions».

Итак, вам просто нужно добавить ветку для #. к нему в вашем ~/.vimrc, например, как это (используя :let вместо :set, чтобы избежать вытекание всех обратной косой черты):

let &formatlistpat = '^\s*\%(\d\+\|#\)[\]:.)}\t ]\s*' 

Кроме того, вы, конечно, нужно иметь n флаг в 'formatoptions':

setlocal formatoptions+=n 
+0

Я делаю это в своем «.vimrc»: «autocmd BufRead, BufNewFile * .rst let & formatlistpat = '^ \ s * \% (\ d \ + \ | # \) [\]:.)} \ t] \ s * '". Он не работает – jcea

+0

Применимо ли значение? Вы можете проверить с помощью:: verbose setl formatlistpat? '. Чтобы увидеть эффект, попробуйте переформатировать такие строки с помощью 'gq'. –

+0

Да, '' ': verbose''' показывает правильное значение,' '' Last set from ~/.vimrc'''. Выглядит неплохо. Но это не сработает, ни при наборе, ни при переформатировании с '' 'gq'''. – jcea

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