Как вы можете контролировать сгибы с помощью внешнего файла в Vim? - PullRequest
1 голос
/ 17 апреля 2009

Я искал решение, которое помещает метки сгиба и коды во внешний скрытый файл. Таким образом, вы можете иметь постоянные сгибы без дополнительных признаков сгиба.

Как вы можете контролировать сгибы с помощью внешнего файла в Vim?

Ответы [ 3 ]

4 голосов
/ 17 апреля 2009

Это очень общий вопрос. Что такое "внешний файл" в vim? В конце концов, Vim - это коллекция «внешних» файлов. Так что, если я определю свои параметры фальцовки в моих vimfiles, это решение «внешнего файла»?

Вы можете ссылка , например, определить механизмы свертывания регулярных выражений и получить их из внешнего файла.

Но я думаю, что вы имеете в виду: «Могу ли я определить внешний файл, чтобы я мог иметь проектное пользовательское свертывание, чтобы у всех, кто использует vim после того, как я передал им мои файлы, будет такое же свертывание»? Да, я думаю, вы могли бы сделать это, экстраполировав метод, описанный выше.

Но помните, у vim есть несколько методов фолда:

  • manual - где вы вручную определяете сгибы (это хорошо, но это оставляет ваш код с множеством фигурных скобок, но это «переносимо»)
  • отступ - где независимый определяет сгибы
  • выражение (которое я упомянул)
  • синтаксис - определяется подсветкой синтаксиса
  • маркер - вы уже знаете, что

... в конце концов, все сводится к нескольким настройкам в вашем vimrc.

Мой совет: НЕ ИЗМЕНЯЙТЕ файлы отступов, синтаксиса и т. Д. Vim. Обычно вам даже не нужно их менять (если вы не используете язык, в котором vim не поддерживает, в чем я сомневаюсь). Итак, определите ваши настройки и предпочтения в ваших каталогах vimrc и vimfiles, и просто задайте предпочтения вашим коллегам (обычно это только те из vimrc), чтобы иметь такое же поведение сворачивания.

3 голосов
/ 25 декабря 2009

Vim можно сделать так, чтобы он автоматически запоминал сгибы в файле, поместив эти две строки в ~ / .vimrc

au BufWinLeave? * Mkview au BufWinEnter? * тихий loadview

2 голосов
/ 17 апреля 2009

Используйте manual метод изготовления складок. Это не то же самое, что marker, как указано выше. Используйте :mkview для сохранения складок и :loadview для их перезагрузки.

...