分页: 1 / 1

如何更改 vim 使用冒号命令时的组合键

发表于 : 2010-11-13 0:45
自由建客
bash 默认 \C-p \C-n 分别为 previous-history next-history ,我习惯将其改为 history-search-backward history-search-forward 。
现 vim 使用冒号命令时,\C-p \C-n 行为同 bash 默认的 previous-history next-history ,如何更改其为 history-search-* ?

Re: 如何更改 vim 使用冒号命令时的组合键

发表于 : 2010-11-13 11:50
lilydjwg
bash 和 vim 有什么关系? :em20 :em20

Re: 如何更改 vim 使用冒号命令时的组合键

发表于 : 2010-11-13 12:24
onelynx
自由建客 写了:bash 默认 \C-p \C-n 分别为 previous-history next-history ,我习惯将其改为 history-search-backward history-search-forward 。
现 vim 使用冒号命令时,\C-p \C-n 行为同 bash 默认的 previous-history next-history ,如何更改其为 history-search-* ?
不好意思,没看明白你的意思

Re: 如何更改 vim 使用冒号命令时的组合键

发表于 : 2010-11-13 13:30
lilydjwg
fzq5012 写了:
自由建客 写了:bash 默认 \C-p \C-n 分别为 previous-history next-history ,我习惯将其改为 history-search-backward history-search-forward 。
现 vim 使用冒号命令时,\C-p \C-n 行为同 bash 默认的 previous-history next-history ,如何更改其为 history-search-* ?
不好意思,没看明白你的意思
我终于看明白了他的意思。但 Vim 里没 history-search-* 这种功能啊。最多就是上下方向键那个了。

Re: 如何更改 vim 使用冒号命令时的组合键

发表于 : 2010-11-13 14:54
xhy
你输入命令的前几个字符,然后按向上的箭头,就能搜索了

Re: 如何更改 vim 使用冒号命令时的组合键

发表于 : 2010-11-13 14:56
xhy
或者用q:,会出现一个历史命令的列表,然后用/搜索,定位好后直接回车

Re: 如何更改 vim 使用冒号命令时的组合键

发表于 : 2010-11-13 20:00
自由建客
对,上下光标键的功能就是 bash 的那个 history-search 功能,但 Ctrl + p Ctrl +n 不是,想把这两组更顺手的改成那功能。

Re: 如何更改 vim 使用冒号命令时的组合键

发表于 : 2010-11-13 20:12
xhy
cnoremap <C-p> <up>
cnoremap <C-n> <down>

Re: 如何更改 vim 使用冒号命令时的组合键

发表于 : 2010-11-15 22:04
自由建客
多谢楼上!
不过,还是不明白 vim 的键绑定,为什么不能用类似 map <按键> <命令> 的方式,而是 map <新按键> <老按键>,这不就是复制按键吗,要是老按键的功能变了怎么办?
inputrc 的 "\C-p": history-search-backward 就显得好多了,而且易读易维护。

Re: 如何更改 vim 使用冒号命令时的组合键

发表于 : 2010-11-15 22:11
xhy
所以才有map和noremap之分

Re: 如何更改 vim 使用冒号命令时的组合键

发表于 : 2010-11-15 22:14
xhy
map主要用于normal和insert,
这个时候command实际上也是通过按键序列实现的,
所以只要能map keys keys,就能map keys commands