在vim中保存 :map 命令的输出

15
Q1:有没有方法可以保存命令输出的内容?
:map

如何将内容写入文件?

Q2:在一个相关的问题中,我在我的vimrc文件中有以下地图:

map <f1> :wa<cr>

我使用 vim-latex 插件打开 LaTeX 文件时,按 F1 键会调用帮助页面。
有没有一种方法可以更改这个行为而不必手动重新键入映射?

4个回答

21

A1:将:map的输出重定向/保存:

:redir >> ~/mymaps.txt
:map
:redir END
A2: 正如kemp所说,您可以使用verbose找到它并修改插件文件。或者您可以在插件目录中创建一个vim文件,最后运行它,例如:~/.vim/plugin/zzzmyremaps.vim (通过运行scriptnames进行检查)。编辑:rampion在评论中是正确的。因为这是一个文件类型问题,所以应该在after目录中处理~/.vim/after/plugin/latex.vim,因为有问题的latex.vim文件不是在启动时加载,而是在缓冲区输入时加载。注意,.vimrc首先被调用,因此插件经常会覆盖它们。 :scriptnames将显示顺序。

3
确保您的设置最后读取的标准方法是使用您的“after”目录:~/.vim/after/plugin/latex.vim。这将在标准 vim-latex 插件之后被读取,您可以修复任何您不喜欢的内容。 - rampion

4

如果你的问题是<F1>被重新映射了,你可以使用:verbose map <F1>来查看它的定义,并相应地进行更改。


1
也许你可以再次获取 .vimrc 文件。类似这样的操作:
map <f2> :source /path/to/.vimrc

1

我不知道如何保存单独的:map,但是:mksession filename会将编辑器的当前状态保存在一个文件中,其中包括所有的map定义。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接