我想从taglist中删除不需要的滚动条。我创建了一个函数和这样的命令:
function s:TlistWaToggle()
normal :TlistToggle<cr> " <- this does not work
set guioptions-=r
endfunction
command! -nargs=0 -bar TlistWaToggle call s:TlistWaToggle()
我想将调用包装:TlistToggle与命令一起删除右滚动条(我当然有这个设置,但它总是重新出现,所以这是一个解决方法)。目前我的:TlistWaToggle什么都不做。我怎样才能使它发挥作用?
答案 0 :(得分:4)
Vim脚本使用ex命令,显然:TlistToggle
是ex命令......
function! s:TlistWaToggle()
TlistToggle
set guioptions-=r
endfunction
答案 1 :(得分:3)
除了@ sidyll的回答::normal
不是:*map
,它只接受原始字符串。正确的命令将是execute "normal! :TlistToggle\<CR>"
(或execute "normal! :TlistToggle\n"
)。请注意,您不应在脚本中使用非禁止版本。
我认为你不会使用:normal!
执行ex命令,但是当你想要传递任何其他特殊字符时,我的答案会很有用。它也适用于feedkeys()
来电。
顺便说一句,注释和其他命令将被视为传递给:normal
命令的字符串的一部分。