问题标签 [ack]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - Windows上的Ack.vim“没有这样的文件或目录”错误
不久前,我在我的 Windows XP 机器上安装了 Ack 并使用 Vim 正常工作。不知道我最近做了什么,但现在它不起作用。
这是我在 Vim 中遇到的问题的一个例子:
返回此错误消息:
如果我尝试在 Vim 中“手动”运行命令:
这将打开一个 cmd.exe 对话框,其中包含以下消息:
仍然没有运气。
奇怪的是,如果我去START > Run
然后输入这个命令:
它工作正常,Ack 愉快地搜索searchterm
我不明白。Vim 调用 cmd.exe 的方式与我调用它的方式有何不同run
- 结果应该与我想的一样。
有任何想法吗?
更新:
我现在知道消息“没有这样的文件或目录”是因为 Ack 认为我正在运行这种格式的 ack 命令:
其中文件名是您要搜索的文件。问题是我没有提供文件名 - 所以我不确定为什么它认为我的搜索词实际上是要搜索的文件。
vim 以某种方式错误地将参数传递给 cmd.exe - 但我只是看不出它是如何做到的
更新 2
Vim 不是问题。一定是我的 Ack 版本以某种方式被窃听了。
如果我打开 cmd.exe 并输入:
然后我也收到错误消息:
如果我只输入 ack:
然后它开始搜索……寻找一些东西……谁知道呢
这不是我在这两个例子中所期望的。不过,我一定越来越近了……
ack - 使用 ack 的 .ackrc 忽略目录
我不确定它的用途,但我正在处理的代码有一堆名为“save.d”的文件夹,看起来它们用于某种版本控制(我们也有 .svn 文件夹) .
如何更新我的 .ackrc 文件以默认忽略这些目录?
我的 .ackrc 目前是
我们的文件夹结构可能如下所示:
filenames - ack 可以仅根据文件名查找文件吗?
使用ack(有时打包为 ack-grep)我知道我可以通过执行以下操作找到包含特定字符串的路径:
ack -g somestring
但是,如果我只想要文件名中包含“somestring”的文件怎么办?
ack - 忽略 .ackrc 中的子目录
我想配置我的 .ackrc ,这样 ack 就不会查看我的测试/覆盖文件夹。到目前为止,我已经结束了这个:
--ignore-dir=coverage
这行得通,但感觉不如:
--ignore-dir=test/coverage
问题是后者不起作用并且搜索测试/覆盖内容。
我是否遗漏了什么或者 ack 不准备处理子目录?
jquery - 如何让 Ack 忽略 jQuery 文件?
我正在使用 Vim + Ack.Vim 并且对如何忽略 Jquery 文件中的命中感到困惑。我已经定义了一个 .ackrc 文件(见下文),但我在黑暗中刺伤。
经验丰富的 ack + ack.vim 用户将如何解决这个问题?
emacs - 如何将 ack 与 Mx find-grep 一起使用?
在这里留下问题以供参考。只有主知道为什么,但从前这对我不起作用,促使我问这个问题,但今天它确实起作用了。典型的血腥emacs。同样通常,一旦您与它搏斗了一下,这将是一种完全的快乐。YMMV。
这两个命令:
和
在我看来,在终端上会产生非常相似的结果。
然而,当我尝试M-x find-grep
在 emacs 中使用第二个作为命令时,它只是打印结果,而不是像第一个那样超链接和突出显示它们。
有谁知道发生了什么?在命令行中使用 ack 的初步实验表明,它使 find 和 grep 被淘汰了,所以如果能在 emacs 中使用它也很好。
regex - 使用 ACK 作为过滤器
我一直在使用ACK搜索我的代码库,它是一个很棒的工具。然而,它(在我看来)有一个重要的限制——它不允许正则表达式的多行匹配。
为了克服这个限制,我想过滤一组包含某个表达式的文件,然后再次过滤它们以寻找第二个表达式(假设两个表达式很可能不在同一行)。我尝试运行以下命令,但没有成功(它什么都不返回):
而且我宁愿不使用grep
,因为我想将搜索限制在 java 文件中,忽略 .cvs 目录、.svn 目录等(ack
默认情况下会这样做)有什么想法吗?
string - 如何使用 ack 搜索字符串“--branch”?
在 ack 中,您可以使用 -Q 选项来转义搜索字符串中的所有字符,但如果您使用的搜索字符串看起来像 ack 的选项,这似乎不起作用。
我正在尝试在一组文件中搜索字符串“--branch”。所以我试试这个 ack 命令
它响应Unknown option: branch
。它将我的搜索字符串视为要解释的选项。有谁知道我可以使用哪些转义字符将 --branch 用作字符串?
grep - Ack:权限被拒绝输出以及结果
当我确认某些事情时,我经常会得到这样的输出:
这是什么,我该如何修复它/让它消失?
编辑:这仅在我使用 Ack 插件时发生在 MacVim 输出中。普通确认不这样做。
grep - grep/ack -o 带有上下文字符(不是行)
我试图找到一种方法
grep -o "somepattern"
这给了我类似的东西
但真正好的是在那场比赛之前和/或之后有几个字符(可能是 20 个)。
我知道有一种方法可以在(上下文)之前和之后显示行,但是有什么方法可以按字符显示上下文吗?例如
我问的原因是,如果我递归地 grep 并匹配一个缩小的文件,它会打印整个文件,这非常烦人。