我现在已经尝试了大约一个小时,我似乎根本无法让它工作!哈哈
这就是我所拥有的:
function! Tabber()
let l2=getline(".")
if l2[:2] == 'To:'
if len(l2) > 4
exe "silent! normal 5Gi"
else
exe "silent! normal 2Gi"
endif
endif
startinsert
endfunction
基本上当我在VIM中写一封电子邮件用于mutt时,我希望能够在写完To:地址时点击Tab键,并且我希望它能够决定我所在的行是否具有To:on it ,如果它超过4个字符意味着我输入了一个地址,如果不是那么就留在那里。如果主题行有超过4个转到第5行。
一旦完成,我想要复制那个如果是主题行,以确保我是否在主题行转到第9行写电子邮件。所以我可以选择哈哈。
对于我的生活,这是行不通的。当然我还没有将它连接到标签,我只是<Esc>
然后:
:call Tabber()
但这应该有效。 :S
谢谢! :)
答案 0 :(得分:1)
你的功能对我有用,所以我不确定为什么你在没有更多信息的情况下遇到麻烦。我确实修改了它以符合您的规格:
function! Tabber()
let line=getline(".")
if line[:2] == 'To:'
if len(line) > 4 | 5 | endif
elseif line[:7] == 'Subject:'
if len(line) > 9 | 9 | endif
endif
startinsert!
endfunction
inoremap <Tab> <Esc>:call Tabber()<cr>