不能在gvim(windows)中用Cscope插件使用CTRL- <Space>

组态

  • Windows 7 Service Pack 1(64位)
  • VIM 7.4(2013年8月10日),32位GUI版本
  • 来自www.vim.org的2.0.0版的cscope_macros.vim插件

问题

该插件使用'CTRL-spacebar'或<CTRL-@>将几个cscope查找函数映射为水平或垂直分割,因为这是VIM如何根据插件文档识别的。 这里是插件的一个片段:

 " Using 'CTRL-spacebar' (intepreted as CTRL-@ by vim) then a search type " makes the vim window split horizontally, with search result displayed in " the new window. " " (Note: earlier versions of vim may not have the :scs command, but it " can be simulated roughly via: " nmap <C-@>s <CW><CS> :cs find s <CR>=expand("<cword>")<CR><CR> nmap <C-@>s :scs find s <CR>=expand("<cword>")<CR><CR> nmap <C-@>g :scs find g <CR>=expand("<cword>")<CR><CR> 

但是,“CTRL空格键”不起作用。 当我查看已经映射的内容时, <C-@>实际上被翻译为<nul> 。 例如,如果我使用命令:map ,这是cscope插件映射键的结果。

 n <nul>d :scs find d <CR>=expand("<cword>")<CR><CR><Tab> n <nul>i :scs find i <CR>=expand("<cfile>")<CR><CR><Tab> n <nul>f :scs find f <CR>=expand("<cfile>")<CR><CR><Tab> n <nul>e :scs find e <CR>=expand("<cword>")<CR><CR><Tab> 

我唯一能find的“CTRL-spacebar”/ <CTRL-@>:help index )是

 tag char action in Insert mode ~ ----------------------------------------------------------------------- i_CTRL-@ CTRL-@ insert previously inserted text and stop insert 

但这不是我观察到的行为。

当我尝试在插入模式下使用“CTRL-spacebar”时,发生的一切就是在光标处插入一个空格。 当我在正常模式下使用它时,它似乎将光标移动到下一个单词的开头,或者下一行(如果它是空的)。

那么,如何在VIM中在Windows上映射“CTRL-空格键”?

Solutions Collecting From Web of "不能在gvim(windows)中用Cscope插件使用CTRL- <Space>"