插入时间戳的VIM函数

插入时间戳的VIM函数,vim,function,Vim,Function,在前面的问题中,有人建议在VIM中添加时间戳: nmap <F3> a<C-R>=strftime("%Y-%m-%d %a %I:%M %p")<CR><Esc> imap <F3> <C-R>=strftime("%Y-%m-%d %a %I:%M %p")<CR> nmap a=strftime(“%Y-%m-%d%a%I:%m%p”) imap=strftime(“%Y-%m-%d%a%I:%m%p”)

在前面的问题中,有人建议在VIM中添加时间戳:

nmap <F3> a<C-R>=strftime("%Y-%m-%d %a %I:%M %p")<CR><Esc>
imap <F3> <C-R>=strftime("%Y-%m-%d %a %I:%M %p")<CR>
nmap a=strftime(“%Y-%m-%d%a%I:%m%p”)
imap=strftime(“%Y-%m-%d%a%I:%m%p”)
我不想使用F3,而是想通过执行一个函数来插入时间戳。例如,键入:Now


不幸的是,我不喜欢VIM脚本。有人能帮忙吗?

:现在
不是一个函数,而是一个命令。可以使用以下代码从第一个映射中创建命令:

command -nargs=0 -bar Now execute "normal! a\<C-R>=strftime(\"%Y-%m-%d %a %I:%M %p\")\<CR>"
command-nargs=0-bar现在执行“正常!a\=strftime(\%Y-%m-%d%a%I:%m%p\”)

:现在
不是一个函数,而是一个命令。可以使用以下代码从第一个映射中创建命令:

command -nargs=0 -bar Now execute "normal! a\<C-R>=strftime(\"%Y-%m-%d %a %I:%M %p\")\<CR>"
command-nargs=0-bar现在执行“正常!a\=strftime(\%Y-%m-%d%a%I:%m%p\”)
“如果没有,则前5行中有“上次更改”
有趣!InsertChangeLog()
设l:flag=0
对于范围(1,5)内的i
如果getline(i)!~'.*上次更改。*'
设l:flag=l:flag+1
恩迪夫
外循环
如果l:标志>=5
正常(1G)
调用追加(0,“文件:”)
调用附加(1,“已创建:”.strftime(“%a%d/%b/%Y hs%H:%M”))
调用追加(2,“上次更改:”.strftime(“%a%d/%b/%Y hs%H:%M”))
调用append(3,“作者:”)
调用append(4,“站点:”)
调用append(5,“twitter:”)
正常gg
恩迪夫
结束
“映射F4以插入更改日志
映射:调用InsertChangeLog()
“更新更改文件日志
" http://tech.groups.yahoo.com/group/vim/message/51005
“自动更新上次更改,不包含更改跳转列表
“看:基普跳了起来
有趣!LastChange()
让我们=@/
设l=直线(“.”)
设c=col(“.”)
如果行(“$”>)=5
1,5s/\s*上次更改:\s*\zs.*/\=“”。strftime(“%Y%b%d%X”)/ge
恩迪夫
让我们
调用游标(l,c)
结束
autocmd BufWritePre*keepjumps调用LastChange()
“占位符片段-更改地图!!!
“文件模板
" --------------
“j跳到下一个标记
“iabbr用于:
函数!LoadFileTemplate()
“安静!0r~/.vim/templates/%:e.tmpl
syn match vimTemplateMarker“”containedin=ALL
hi vimTemplateMarker guifg=#67a42c guibg=#112300 gui=bold
端功能
功能!JumpToNextPlaceholder()
让old_query=getreg(“/”)
回声搜索(“”)
exec“norm!c/++>/e\”
调用setreg(“/”,旧查询)
端功能
autocmd BufNewFile*:调用LoadFileTemplate()
nnoremap j:调用JumpToNextPlaceholder()a
inoremap j:调用JumpToNextPlaceholder()a
“如果没有,则前5行中有“上次更改”
有趣!InsertChangeLog()
设l:flag=0
对于范围(1,5)内的i
如果getline(i)!~'.*上次更改。*'
设l:flag=l:flag+1
恩迪夫
外循环
如果l:标志>=5
正常(1G)
调用追加(0,“文件:”)
调用附加(1,“已创建:”.strftime(“%a%d/%b/%Y hs%H:%M”))
调用追加(2,“上次更改:”.strftime(“%a%d/%b/%Y hs%H:%M”))
调用append(3,“作者:”)
调用append(4,“站点:”)
调用append(5,“twitter:”)
正常gg
恩迪夫
结束
“映射F4以插入更改日志
映射:调用InsertChangeLog()
“更新更改文件日志
" http://tech.groups.yahoo.com/group/vim/message/51005
“自动更新上次更改,不包含更改跳转列表
“看:基普跳了起来
有趣!LastChange()
让我们=@/
设l=直线(“.”)
设c=col(“.”)
如果行(“$”>)=5
1,5s/\s*上次更改:\s*\zs.*/\=“”。strftime(“%Y%b%d%X”)/ge
恩迪夫
让我们
调用游标(l,c)
结束
autocmd BufWritePre*keepjumps调用LastChange()
“占位符片段-更改地图!!!
“文件模板
" --------------
“j跳到下一个标记
“iabbr用于:
函数!LoadFileTemplate()
“安静!0r~/.vim/templates/%:e.tmpl
syn match vimTemplateMarker“”containedin=ALL
hi vimTemplateMarker guifg=#67a42c guibg=#112300 gui=bold
端功能
功能!JumpToNextPlaceholder()
让old_query=getreg(“/”)
回声搜索(“”)
exec“norm!c/++>/e\”
调用setreg(“/”,旧查询)
端功能
autocmd BufNewFile*:调用LoadFileTemplate()
nnoremap j:调用JumpToNextPlaceholder()a
inoremap j:调用JumpToNextPlaceholder()a

这可能会有帮助:是的,Daenyth,这是我提到的“上一个问题”,没有回答我的问题。@Munchin:那么链接到它会是个好主意。这可能会有帮助:是的,Daenyth,这是“上一个问题”我提到了,但没有回答我的问题。@Munchin:那么链接到它会是一个好主意。谢谢“keepjumps”的提示谢谢“keepjumps”的提示