在 Vim 中存储缩写

在 Vim 中存储缩写

我经常使用:ab它来节省编码期间的打字时间。例如,:ab mat matrix每次我输入 mat 时,用矩阵替换 mat。

有什么方法可以存储和加载我为给定文件创建的缩写吗? 我想要一些东西来存储我的缩写,当我声明它们时,并在我打开文件时重新加载它们。我希望缩写对于文件来说是“本地”的,而不是全局的,但如果有必要,我可以解决这个问题。

答案1

如果它是针对单个特定文件,您可以将自动命令(:help autocommand:help 40.3)添加到您的.vimrc

au BufRead,BufNewFile /path/to/foobar call FoobarSettings()
function FoobarSettings()
  ab mat matrix
  " ... more setup commands
endfunction

将“foobar”更改为对您更有意义的内容。

一种不太灵活、笨重的霰弹枪式方法是使用会话(:help sessions:help 21.4)。它很笨重,因为默认情况下会话会保存大量内容,包括窗口大小、打开的文件、选项、映射、折叠等。'sessionoptions'如果您愿意,可以使用选项更改此设置。

  • 创建后打开文件并设置缩写:mksession! sessionfile.vim
  • 要恢复会话,您可以从 shell 执行操作vim -S sessionfile.vim,也可以从 vim 内部执行操作:source sessionfile.vim

答案2

相关内容