gpt4 book ai didi

vim - 在 Vim 中保存时自动将当前日期附加到文件名

转载 作者:行者123 更新时间:2023-12-01 09:56:42 25 4
gpt4 key购买 nike

我在阅读学术文章时使用 vim 做笔记。我更喜欢为我记下的每条笔记创建一个新的文本文件,但是组织它们变得乏味。

我想做的是设置一个自动命令来检测我是否在某个目录中,写入一个新文件,然后将当前日期和时间附加到我写的任何文件名。

如果我有:

:pwd
/path/to/projects

当我输入时

:w Notes

我希望 vim 将文件另存为"Notes - <CURRENT DATE - TIME >.txt "

我相信这涉及在我的 vimrc 中声明如下内容:

autocmd BufNewFile,BufWrite "/path/to/projects/*" <command involving strftime("%Y-%m-%d_%H-%M")>

但我不知道是什么。有任何想法吗?我在 Debian Linux 上使用 Vim 7.3。

最佳答案

你很亲密。我认为最好在创建文件时重命名它;在写入过程中弄乱文件名会使这变得更加困难(例如,如果您重新打开现有笔记,或者只是再次写入缓冲区怎么办?)

:file 命令可用于重命名当前文件;当前文件名在 % 特殊标识符中。当一个新文件被创建时触发,它完成了这项工作:

autocmd BufNewFile /path/to/projects/* execute 'file' fnameescape(expand('%') . strftime(" - %Y-%m-%d_%H-%M.txt"))

如果您不想考虑原始文件名,这会变得更容易:

autocmd BufNewFile /path/to/projects/* execute 'file' fnameescape(strftime("Notes - %Y-%m-%d_%H-%M.txt"))

关于vim - 在 Vim 中保存时自动将当前日期附加到文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25163347/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com