如何<;c-r>;=在vim中工作
在vimrc中添加代码如何<;c-r>;=在vim中工作,vim,Vim,在vimrc中添加代码 "E488: Trailing characters: <c-r>=12+34<cr>" “E488:尾随字符:=12+34” 总是出现 <c-r>=12+34<cr> =12+34 那里发生了什么事 我的原始代码: function! CleverTab() if strpart( getline('.'), 0, col('.')-1 ) =~ '^\s*$' return "\<
"E488: Trailing characters: <c-r>=12+34<cr>"
“E488:尾随字符:=12+34”
总是出现
<c-r>=12+34<cr>
=12+34
那里发生了什么事
我的原始代码:
function! CleverTab()
if strpart( getline('.'), 0, col('.')-1 ) =~ '^\s*$'
return "\<Tab>"
endif
if pumvisible()
return "\<C-N>"
endif
let s:codecompl = CodeComplete()
"<c-r>=s:codecompl<cr>
<c-r>=12+34<cr>
"exec " " .s:codecompl. "\<enter>"."."
"if g:swith_region_flag == 1
" return SwitchRegion()
"else return s:codecompl
return ''
endfunction
函数!克利夫塔布()
如果strpart(getline('.'),0,col('.')-1)=~'^\s*$'
返回“\”
恩迪夫
如果可见()
返回“\”
恩迪夫
设s:codecompl=CodeComplete()
“=s:codecompl
=12+34
“exec”“.s:codecompl。"\"."."
“如果g:swith_region_flag==1
“返回开关区域()
“否则返回s:codecompl
返回“”
端功能
该
是一个插入模式命令,您不能简单地将其放入执行Ex命令的Vimscript函数中。相反,您必须使用:normal!i
发出正常模式命令i
以重新进入插入模式。使用:execute
以使用
键符号,您将获得:
:execute "normal! i\<c-r>=12+34\<cr>"
你给vimrc添加了什么代码?你想实现什么?谢谢你的回复。实际上,我只是想了解它是如何工作的。例如,如果“某事是真的”“执行上面的命令,否则什么也不做。但是,该错误E448始终会弹出。这很烦人!!!您希望.vimrc中的
=12+34
做什么?这似乎没有任何意义。似乎“=”总是与映射一起工作,那么在没有映射的情况下它是如何工作的呢?实际上,我想做的是,如果某个东西是真的,运行=CodeComplete(),否则做其他事情。真的希望有任何提示。
:return "\<c-r>=12+34\<cr>"