Подтвердить что ты не робот

Сохранение настроек vim с помощью документа

Есть ли способ сохранить состояние настроек vim с помощью документа?

Чтобы уточнить: я редактирую документ, и я меняю кучу настроек. Я не обязательно вспоминаю, что; и я не хочу использовать эти настройки снова, кроме текущего документа. Я не хочу вручную пытаться запомнить, что я изменил; или какие волшебные аббревиатуры для настроек, которые я изменил. Я просто хочу иметь, скажем, "mydoc.txt", файл "mydoc.vim", который возвращает меня туда, где я остановился, и файл настроек будет автоматически сохранен на основе настройки vim, скажем, или, может быть, ctrl-key делает это до моего выхода. Было бы удобно, если бы vim мог автоматически искать такой файл.

И было бы предпочтительнее не изменять настройки в самом документе и из него.

4b9b3361

Ответ 1

Вы можете использовать поддержку Vim Session:

:mksession

вы можете загрузить его либо с помощью vim -S Session.vim, либо с помощью source Session.vim

Есть также vim addons для автоматизации загрузки/сохранения сеанса

Ответ 2

Да, настройки vim могут быть включены в документ.

В основном они встречаются в комментариях, поэтому они не испортили исходный файл. Пример для конкретных настроек табуляции:

/* ex: set tabstop=8 expandtab: */

Обратите внимание, что эта команда работает в большинстве случаев, однако серверы часто настраиваются без включения modeline по соображениям безопасности. Чтобы включить эту функцию, добавьте следующее в свой файл $HOME/.vimrc или систему $VIM/vimrc:

set modeline

Ответ 3

Вы можете сохранить свои настройки во всем мире, отредактировав файл . vimrc.

Vim также позволяет сохранять настройки для каждого файла с помощью modelines

Ответ 4

Здесь вы сохраняете все свои текущие настройки в файле:

:redir > textfile.txt 
:set all 
:redir END

Если вам нравится, просто переименуйте этот файл в ~/.vimrc и уходите.

Ответ 5

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

Я делаю это для своих make файлов, чтобы убедиться, что у меня есть различные настройки, которые мне нужны для определенных файлов.

Например, здесь мой автокоманд dec.

if has("autocmd")
  autocmd BufRead,BufNewFile Makefile*  :set noexpandtab
  autocmd BufRead,BufNewFile mirror.conf    :set noexpandtab
  autocmd BufRead,BufNewFile *.html*    :set shiftwidth=2
  autocmd BufRead,BufNewFile diff_files :set autowrite
  autocmd BufRead,BufNewFile lbnamed*   :set ft=perl
  autocmd BufRead,BufNewFile *.t        :set ft=perl
endif