vim 自动给定文件名

vim 自动给定文件名,第1张

所有 vim 的内部命令都是不可编程的。所以可能没有办法让 :w 做咱们想做的事情

折衷的方法暂时想到两个:

一个是自己新建一个命令,比如 :W,让它做我们想做的事情,但缺点是之后每次存盘要想着用 :W 而不是已经习惯的 :w。我觉得这可能不会令人满意。

还一个办法是,让 vim 每次创建新缓冲区的时候看一下是不是给了名字,如果没给名字就自动赋一个名字。方法是在 .vimrc 里加上:

let s:defualtPath = escape('c:/temp/', ' \')

function GenerateFileName ()

    if !empty(expand("<afile>")) | return | endif

    let l:filename = strftime("%Y%m%d%H%M%S.txt")

    exec "f " . s:defualtPath . l:filename

endfunction

au BufAdd * call GenerateFileName() 

au VimEnter * doau BufAdd *

Vim确实没有单独重命名命令

可以自己写

:command! -nargs=1 Rename let tpname = expand('%:t') | saveas <args>| edit <args>| call delete(expand(tpname))

上面这句如果加到.vimrc里面就整体有效

使用

:Rename newFile.txt 就重命名为newFile.txt

试一试,如果有瑕疵可以反馈给我


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/bake/11710583.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存