Как я могу заставить Vim делать отступы для всех строк в элементе списка, а не только для второго?

17

nВариант Vim в formatoptionsнастройке будет отступ второй строки элемента списка в соответствии с отступом первой строки. Однако третья и последующие строки возвращаются без отступа, таким образом:

1. Doing a list. This is my list. I am writing
   a list. It's quite a long list. It's really
long. I can't believe how long it is. And
this just the first item!

2. Another list item.

Я бы очень хотел сделать отступ для всех строк, вот так:

1. Doing a list. This is my list. I am writing
   a list. It's quite a long list. It's really
   long. I can't believe how long it is. And
   this just the first item!

2. Another list item.

Возможно ли это, используя собственные параметры Vim, сценарий или внешнюю программу форматирования, такую ​​как par?

Богатый
источник

Ответы:

16

Я думаю, что установка 'autoindent' должна исправить это. Это для меня.

set ai
garyjohn
источник
2
У меня тоже работает, и я чувствую себя глупо из-за того, что сам не понял этого, особенно если посмотреть на это в документации по настройке 'n'! Благодарю.
Рич
@akira Да. Я идиот. Я думаю, что моя путаница заключалась в том, что, поскольку Vim делал отступ во второй строке, я предполагал, что уже autoindentвключил, и что поведение, описанное в вопросе, было разработанным поведением. Я думаю, что руководство можно сформулировать более четко, чтобы помочь идиотам, таким как я. :)
Богатый
Смотрите ответ @ akira для более глубокого решения.
Клинт Пахл
5

в вашем случае я бы сделал это:

 :set autoindent       " just for interactive indenting (see answer of @Rich) 
 :set fo+=2n           " :help fo-table
 :set tw=47            " your text shall wrap at xyz

( tw=47это важно для ..), а затем переформатировать абзац, нажавgqap

примечание: я не мог переиздать параграф с =кем-то, возможно кто-то еще понял это.

Акира
источник
Спасибо, что напомнили мне о a pдвижении по форматированию строк. Я всегда использую правильную скобку, которая похожа. Не забывайте , что вы можете добавить счетчик, например, форматировать следующие три абзаца: g q 3 }.
Клинт Пахл