【问题标题】:zsh function to create open new file in vimzsh 函数在 vim 中创建打开的新文件
【发布时间】:2013-08-07 08:04:52
【问题描述】:

我的 zsh 配置中有以下功能可以在 vim 中编辑文件。

function note() {
  vim "~/.notes/$1.md";
}

因此,如果我输入“note linux”,它应该打开~/notes/linux.md(如果存在)或创建一个新文件。

但是,使用上述功能,当我执行时,Vim 抱怨 linux.md 是新目录?如何强制将此名称假定为文件名,而不是目录名?

谢谢

【问题讨论】:

  • ~/.notes/ 存在吗?也许在你的函数或 .zshrc 中添加一个 `mkdir -p "~/.notes"。
  • ~/.notes 已经存在,所以我在函数中不需要它。

标签: zsh


【解决方案1】:

~ 似乎没有扩展。 Vim 认为你的意思是./~/.notes/,这是一个新目录。只引用文件名,而不是这样的目录:

function note() {
    vim ~/.notes/"$1.md"
}

或使用$HOME:

function note() {
    vim "$HOME/.notes/$1.md"
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-28
    • 2017-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多