【问题标题】:How do I exclude files and directories from a project in vim (using janus)?如何从 vim 中的项目中排除文件和目录(使用 janus)?
【发布时间】:2015-05-22 14:12:29
【问题描述】:

我正在从 Textmate 迁移到 vim(使用 janus),并希望从 Ack 中排除一些目录,尤其是 NERDTree。

我想这样做的原因是 Ack 对我的一个大型项目来说是无用的(需要几分钟才能运行,并且不会产生任何结果),其中包含一个充满编组数据库数据的目录(有许多子目录和数十万个文件)。

我知道如何从 NERDTree 中排除文件(而不是目录),以及从 CommandT 中排除模式。这些都不能解决我的 Ack 问题。

我是一个完整的 vim n00b。感谢阅读。

【问题讨论】:

  • Ack 使用哪些选项? --ignore-dir=nameOfDirectory 将忽略 nameOfDirectory

标签: vim macvim ack janus


【解决方案1】:

默认情况下,ack 只检查你的 ~/.ackrc 文件是否为默认值 开关。如果将其添加到,您可以拥有每个目录的确认设置 你的 .bash_profile:

export ACKRC=".ackrc"

http://www.rustyrazorblade.com/2012/03/making-better-use-of-your-ackrc-file/

【讨论】:

  • 实际上 ack 在 多个 位置查找 .ackrc。不仅仅是~/.ackrc。请参考确认文档beyondgrep.com/documentation/…。它查看所有位置、全局、用户和项目。
【解决方案2】:

对于 NerdTree,请使用 NERDTreeIgnore setting

至于 Ack - 您可以在 .ackrc 中设置 --ignore-dir 标志(如 Ack 手册页中所述)

【讨论】:

  • 谢谢。所以不可能在每个项目的基础上从 Ack 中排除目录?
  • 您可以创建一个包装脚本,根据项目设置 ACK_OPTIONS,因此它类似于ACK_OPTIONS=--ignore-dir=lolwut ack $1 并使用它而不是ack 命令。
  • 我认为这是我能得到的最好的。谢谢!
【解决方案3】:

我只需要在我的顶级目录中创建一个.ackrc,并使用以下内容:

--ignore-dir=log/

【讨论】:

    猜你喜欢
    • 2010-12-11
    • 2019-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-18
    • 2020-06-12
    • 2022-01-08
    • 1970-01-01
    相关资源
    最近更新 更多