问题标签 [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.
vim - 如何转义 Vim 命令中的 % 和 # 字符?
我正在使用带有标志的 Ack ( https://github.com/mileszs/ack.vim )--literal
来搜索 Vim 中的项目。我注意到,每当我搜索带有%
or#
字符的字符串时,搜索结果与我期望的不匹配。我做了一些研究,发现这是因为 Vim 会在命令中扩展这些字符(%
是当前文件还是其他文件#
,不确定是什么)。
考虑到这些符号在代码中经常出现,这在执行搜索时是非常烦人的行为。有没有办法逃避它们,最好是自动的,以便搜索按预期工作?我当前的映射是:nnoremap <leader>al :Ack --literal<space>
.
例子
假设我#body
在某处的 CSS 文件中有一个选择器,我想找到它。这些是我尝试过的东西(没有奏效):
任何想法为什么转义在这里不能像往常一样工作,或者这甚至在寻找什么?我没有让这些例子匹配任何东西。
解决方案
我已经通过双重转义字符来实现它。例如,:Ack --literal "\\#body"
将显示:ack -H --nocolor --nogroup --column --literal "#body"
在结果窗口的状态行中并调出预期的结果。引号似乎也是必需的。
ack - 获取 ack 以排除类型为“.min.js”的文件
我即时缩小 javascript 文件并在现有文件旁边生成一个 .min.js 文件。这是一个问题,但在使用 ack 时,它会将这些文件视为 .js 文件并搜索它们,并使用缩小的 javascript 在我的结果屏幕上乱扔垃圾。
我尝试将其添加到我的 .ackrc 中,但没有成功:
有没有办法让 ack 忽略这种类型的扩展?
PS 我没有简单地将 .min.js 重命名为 .min_js 或任何其他变体的选项。
mysql - 什么通常更快,通过文件搜索或通过 blob 运行 SQL LIKE %x% 查询?
假设我正在设计一个将代码片段保存在 PostgreSQL/MySQL 数据库或文件系统中的工具。我想搜索这些片段。使用像 Sphinx 这样的搜索引擎似乎并不实用,因为我们在搜索代码时需要代码的精确文本匹配。
grep
并且ack
一直工作得很好,但是将内容存储在数据库中会使大量内容在某些方面更易于管理。我想知道在grep
目录树上递归运行的相对性能与在具有 TEXT blob 的同等数量的记录上运行 SQL 的 LIKE 或 MySQL 的 REGEXP 函数之类的查询相比。
regex - ack-grep 的多种模式?
是否有可能(以及如何)使用 ack(在某些 Linux 发行版上为 ack-grep)链接模式,就像我习惯使用 grep 一样?
例如
...匹配所有带有“foo”但没有“bar”的行。
vim - 如何从 vim 中的项目中排除文件和目录(使用 janus)?
我正在从 Textmate 迁移到 vim(使用 janus),并希望特别从 Ack 中排除一些目录,以及 NERDTree。
我想这样做的原因是 Ack 对我的一个大型项目是无用的(需要几分钟才能运行,并且不会产生任何结果),该项目包含一个充满编组数据库数据的目录(包含许多子目录和数十万个文件)。
我知道如何从 NERDTree 中排除文件(而不是目录),以及从 CommandT 中排除模式。这些都不能解决我的 Ack 问题。
我是一个完整的 vim n00b。谢谢阅读。
regex - Ack with regex - 与简单查询混淆
我正在尝试将ack-is-better-than-grep (ack) 与正则表达式一起使用来在我的代码存储库中查找行和片段。我的理解是 ack 使用Perl 衍生正则表达式,对吗?
但是,我不确定这些查询将如何工作:
他们能给出不同的输出吗?如果是这样,为什么?
编辑:在我的测试中,它们输出不同的结果(例如,第一个输出的匹配比其他的多)。它们还突出显示同一行的不同部分。
编辑2:输出的差异显然与突出显示(输出的颜色)有关。我注意到,如果我使用上述命令的输出运行ack
,--nocolor
则它们是相同的。显然ack
使用默认颜色运行会使部分输出在我的机器/配置中不可见。我在 Ubuntu 11.04 的 bash 的 GNOME 终端上运行它。
windows - 如何在 Windows 的 powershell 中使用 ack 在文件中搜索“<”?
我不知道如何转义“<”字符,并且对“系统找不到指定的文件”错误感到困惑。任何人都可以帮忙吗?
我在 Windows XP 的 powershell 中使用 ack。
问题ack-grep: chars escaping与我的非常相似,但是为该问题提供和接受的解决方案对我不起作用。
git - Ack 与 git hook 脚本中的模式不匹配
我编写了一个 git pre-commit 钩子,目的是禁止包含本地文件路径的提交。通常 git 用户在提交和推送之前忘记用与服务器相关的路径替换本地路径,每次发生这种情况都会浪费很多时间。
当使用指定文件在 CLI 上调用 ack 时,我的正则表达式工作正常,但在我的钩子脚本中调用它时拒绝匹配文本。我认为也许回声是罪魁祸首,或者问题与换行符/换行符有关。
我的脚本:
这应该防止在添加了新路径的地方提交,就像这样,在 git diff 中显示,如下所示:
但应接受注释掉的路径,例如:
为什么我的脚本没有正确检测到未注释的本地路径?
objective-c - 如何使 ack 包含 .pbxproj 文件?
在 Xcode 项目中搜索时如何制作ack
包含文件?project.pbxproj
search - 在 Vim 中使用 ack 搜索时显示搜索状态
在vim中使用ack搜索时,有没有办法显示搜索状态?也许百分比?