如何在vim中找到未映射的控制键?

时间:2012-11-22 09:45:51

标签: vim

我想做点什么

map <C-k> :e#<CR>

在我的.vimrc中。

但是,我最近发现<C-k>用于有向图。

如何在vim中获取未映射的控制键列表?

3 个答案:

答案 0 :(得分:2)

Vim有很多命令,因此找到映射的(令人难忘的和简短的)键序列可能是一个挑战。

我的方法是使用推荐的<Leader>前缀来处理我不经常使用的内容,但对于基本内容,使用 Ctrl 进行映射确实很有用。

了解如何在帮助中表示命令(例如,CTRL-O在正常模式下,i_CTRL-X_CTRL-N用于插入模式),想一个好的映射候选者,然后尝试通过{{1如果没有匹配项,您可以通过:help CTRL-...确保映射是免费的;如果有匹配(好的是这也包括提供文档的插件),你可以阅读描述,至少发现了一个新的Vim命令,然后可以决定是否需要它(然后用不同的映射重试候选人),或者是否覆盖命令。

(请注意,您还可以:nmap C-...内置其他键的命令,但请注意,这会让您在vanilla Vim安装或其他应用程序的vi仿真模式中越来越无助。)

答案 1 :(得分:2)

我只是为了使用vim 7.4 debian / ubuntu软件包的文档目录来查找使用过的控制键。

我使用的命令是

ack ctrl- | perl -ne 'm/(CTRL-.?)/g; print $1."\n";' | sort| uniq

输出低于

CTRL-^
CTRL-<
CTRL-_
CTRL--
CTRL-;
CTRL-?
CTRL-(
CTRL-[
CTRL-]
CTRL-{
CTRL-@
CTRL-\
CTRL-6
CTRL-a
CTRL-A
CTRL-B
CTRL-C
CTRL-D
CTRL-E
CTRL-F
CTRL-G
CTRL-H
CTRL-I
CTRL-J
CTRL-K
CTRL-L
CTRL-M
CTRL-N
CTRL-O
CTRL-P
CTRL-Q
CTRL-R
CTRL-s
CTRL-S
CTRL-T
CTRL-U
CTRL-V
CTRL-W
CTRL-x
CTRL-X
CTRL-Y
CTRL-Z

基本上没有免费的ctrl键。 。 。好极了! :)

答案 2 :(得分:1)

已有<C-…个快捷方式:<C-^>(或某些情况下为<C-6>)。