【问题标题】:"Fuzzily" open a file in vim from the command line“模糊”从命令行在 vim 中打开文件
【发布时间】:2013-01-24 18:43:29
【问题描述】:

我已经使用 Vim 的 FuzzyFinder 插件有几个星期了,到目前为止我真的很喜欢它。我确实觉得烦人的一件事是,所有这些模糊查找的好处只有在 Vim 已经打开之后才可用。

有没有办法从命令行模糊查找文件,而不是输入整个路径?

【问题讨论】:

  • 这似乎更像是一个shell功能,试试Zsh它默认有这种行为。
  • 好的,完美。我已经在使用 Zsh;你知道如何使用这种行为吗?到目前为止,谷歌搜索 zsh fuzzy matching 并没有显示出任何有希望的东西。
  • 对我来说,它只需点击 TAB 就可以工作,这不是完全相同的行为,但它非常相似。例如,如果我只是输入 D*op,如果我在我的 HOME 文件夹中点击 TAB 时它会扩展为桌面,虽然我编辑我的 zshrc 已经有一段时间了,所以我不确定。
  • 您可能必须将autoload -Uz compinit; compinit 添加到您的~/.zshrc 才能使所有完成工作正常工作。它的模糊匹配不会与 FuzzyFinder 完全一样,但有一些方便的功能。一个例子:你可以做类似vim s/p/f<TAB>的事情,它会扩展src/projects/foo,假设没有不明确的匹配。
  • 该 scipt 将如何决定您是否想要 file_containing_somestring.foo 而不是 other_file_containing_somestring.foo?它如何表明还有其他匹配项?它会如何显示其他匹配项?

标签: vim fuzzyfinder


【解决方案1】:

您可以使用预填充的 FuzzyFinder 启动 Vim:

vim -c ":FufFile somefilepattern"

那么你只需要从控件中选择文件即可。

【讨论】:

  • 这似乎非常接近我想要的,谢谢。如果我输入vim -c ":FufFile **/somefilepattern",它可以工作,但是我必须按右箭头键直到我到达somefilepattern 的末尾,然后开始输入才能让FuzzyFinder 启动。我错过了什么吗?
  • 我会选择你的答案,即使它不是 100% 适合我。无论我的具体问题是什么,您的答案正是我想要的。谢谢。
【解决方案2】:

你可以用 zsh 做到这一点,检查这个demo

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-25
    • 1970-01-01
    相关资源
    最近更新 更多