Хотя Vim поддерживает автоматическое отступление в списках, настройка по умолчанию охватывает только упорядоченные списки, начиная с цифр, например:
1. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
2. veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
commodo consequat.
Я не смог выяснить, как распространить это на неупорядоченные, маркированные списки, такие как:
* Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
* veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
commodo consequat.
Изменение formatlistpat
RegEx не привело к желаемым результатам (действительно, оно даже сломало упорядоченные списки).
[]
это быстрее использования[[:digits:]*]
или[\d*]
вместо[0-9*]
let
вместо тогоset
, например:let &formatlistpat='^\s*\(\d\+[\]:.)}\t ]\|[*-][\t ]\)\s*'
. (Это добавляет поддержку*
и-
как маркеры, в дополнение к числам.)comments
переменной, несмотря на то, что он является средней частью комментария, состоящего из трех частей, vim путает звездочку с строчным комментарием.В дополнение к тому, что написал jamessan (в частности, его
formatlistpat
предложение по работе со * списками), важно, чтобы опция 'c' (форматирование комментариев) была отключена вformatoptions
:в противном случае Vim запутается между форматированием * маркированных списков и форматированием комментариев. Вы получите дополнительный * на 2-й и последующих строках.
источник
q
(разрешить форматирование комментариев с помощьюgq
)formatoptions
может вызвать проблемы при форматировании с помощьюgq
. +1У меня были некоторые проблемы с получением списков, таких как
a)
распознанные, поэтому я опубликую свое решение здесь:источник
Я пишу новый ответ на этот вопрос, потому что мне пришлось объединить несколько ответов из этого вопроса и этого другого вопроса, чтобы сделать эту работу. Вот моя окончательная конфигурация.
источник