Ответ 1
Вы можете использовать поддержку Vim Session:
:mksession
вы можете загрузить его либо с помощью vim -S Session.vim
, либо с помощью source Session.vim
Есть также vim addons для автоматизации загрузки/сохранения сеанса
Есть ли способ сохранить состояние настроек vim с помощью документа?
Чтобы уточнить: я редактирую документ, и я меняю кучу настроек. Я не обязательно вспоминаю, что; и я не хочу использовать эти настройки снова, кроме текущего документа. Я не хочу вручную пытаться запомнить, что я изменил; или какие волшебные аббревиатуры для настроек, которые я изменил. Я просто хочу иметь, скажем, "mydoc.txt", файл "mydoc.vim", который возвращает меня туда, где я остановился, и файл настроек будет автоматически сохранен на основе настройки vim, скажем, или, может быть, ctrl-key делает это до моего выхода. Было бы удобно, если бы vim мог автоматически искать такой файл.
И было бы предпочтительнее не изменять настройки в самом документе и из него.
Вы можете использовать поддержку Vim Session:
:mksession
вы можете загрузить его либо с помощью vim -S Session.vim
, либо с помощью source Session.vim
Есть также vim addons для автоматизации загрузки/сохранения сеанса
Да, настройки vim могут быть включены в документ.
В основном они встречаются в комментариях, поэтому они не испортили исходный файл. Пример для конкретных настроек табуляции:
/* ex: set tabstop=8 expandtab: */
Обратите внимание, что эта команда работает в большинстве случаев, однако серверы часто настраиваются без включения modeline
по соображениям безопасности. Чтобы включить эту функцию, добавьте следующее в свой файл $HOME/.vimrc или систему $VIM/vimrc:
set modeline
Вы можете сохранить свои настройки во всем мире, отредактировав файл . vimrc.
Vim также позволяет сохранять настройки для каждого файла с помощью modelines
Здесь вы сохраняете все свои текущие настройки в файле:
:redir > textfile.txt
:set all
:redir END
Если вам нравится, просто переименуйте этот файл в ~/.vimrc
и уходите.
Возможно, вы сохранили файл как определенный тип, например. специальный формат файла или расширение, а затем определить автокоманду в вашем .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