[英]Vim function won't respond in terminal vim
我偶然发现了一个与Textmate中的功能相似的功能。
这将显示当前单词的突出显示组。
一切在gvim中都可以正常运行,但是在使用vim时不会得到输出,这让我感到困惑。
这是相关的部分:
nmap <C-S-P> :call <SID>SynStack()<CR>
function! <SID>SynStack()
if !exists("*synstack")
return
endif
echo map(synstack(line('.'), col('.')),
\ 'synIDattr(v:val, "name")')
endfunc$
我的问题是,为什么它会这样,以及如何解决(如果可能)-.-
感谢您能提供的任何帮助。
问题是这一行:
nmap <C-S-P> :call <SID>SynStack()<CR>
它要求VIM到呼叫控制小号 HIFT p映射到SynStack
宏。 但是,最终使用ASCII字符和ECMA-48控制序列的诸如xterm之类的终端无法将它们区别对待:
它们全部作为控件 P进入(忽略大小写)。 gvim在不同的环境中工作,在该环境中,可以将大多数修饰符组合区分开。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.