问题标签 [vimgrep]
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.
regex - 如何设置 Vim 以搜索和排序包含某个字符串的所有行?
我正在使用 vim 管理待办事项列表,并想设置一个热键来执行以下操作:
查找包含光标下单词的所有行。世界总是一个标签,格式为:#mytaghere
按其中包含的另一个标签按字母顺序对所有这些行进行排序。该标签再次采用#mytaghere 格式。例如,所有带有标签#priorityA 的行都将按字母顺序排列并放置在所有带有标签#priorityB 的行之上,依此类推。
将所有这些行放入 Vim 的 quickfix 窗口。
通过将以下内容放入我的 .vimrc 文件中,我设法实现了 1 和 3 的有限版本:
每当光标下的单词包含 # 时,此设置就会失败,并且只要字符是其他字符(例如 _ ),它就会起作用。产生的错误是:“E682:无效的搜索模式或分隔符”,看起来像 # 正在干扰与 vimgrep。
另外,我不知道如何按优先级标签对行进行排序。
提前感谢您的帮助。我只是在学习 Vim,如果我能解决这个问题,我就可以将它用于我所有的组织工作。
vim - 如何递归地grep目录内的模式?
我想 grep 所有以以下开头的字符串模式: student_ ,然后 是任意数量的符号(字母和数字)并以.tcl 结尾
vim - Vimgrep 不打开在新缓冲区中找到的第一个匹配项
我曾经研究过ag.vim。目前它在第一次出现的缓冲区中打开文件,默认行为 vimgrep。我想知道是否有不这样做的选项,并且能够在搜索后直接导航到快速列表。
谢谢
search - 是否可以使用 vimgrep 来直观地选择当前文件?
我只想在当前文件的视觉选择中而不是整个文件中使用 vimgrep 进行搜索。这可能吗?怎么做?我在谷歌或 vim 帮助中找不到适合这种情况的东西。
我想要这个的原因是因为我需要快速列表 ( copen
) 中的结果,并且:g/FOO
在底部显示匹配行并没有做这项工作。
vim - vimgrep 通配符作为文件扩展名
如何使用vimgrep
命令在所有文件中递归搜索当前目录中的模式,无论它们具有什么扩展名。
在控制台中我可以这样做:grep -r <pattern> *.*
在谷歌上进行一些搜索后,我发现在 vim 中我可以在具有特定扩展名的文件中递归搜索模式,如下所示:
:vimgrep /<pattern>/g **/*.extension
在阅读了我在 vim 中:help starstar-wildcard
找到的帮助后,help vimgrep
我没有找到任何解释,除了**/*
来自 starstar-wildcard 帮助的文件扩展名之外,我如何匹配任何文件扩展名。
试过:
:vimgrep /<pattern>/g **/*
我得到这个错误:Cannot open file "**/*"
甚至试图像这样转义通配符:
:vimgrep /<pattern>/g **/\*
相同的结果Cannot open file "**/*"
我的 vim 版本是:VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Jan 10 2014 09:33:13)
我尝试使用没有任何 .vimrc 配置文件的新用户,结果是一样的。
有没有办法像 grep 一样进行搜索,但在 vim 中使用 :vimgrep?
regex - ag Silver Searcher:前瞻/后瞻模式的规则?
我ag
在 Vim 中使用字符串/文件搜索的结果很好。
但是,似乎没有太多文档是如何为 ag 构建模式的。
在 Practical Vim book 的示例中,我尝试使用 ag 而不是 vimgrep。
我想递归地在目录中的所有文件中找到“Pragmatic Vim”的每一个出现,并用“Practical Vim”替换这个字符串。某些文件中还有“实用书架”,该字符串必须保留。
这本书提出了这种方法:
在这一步之后,使用插件命令填充快速修复列表:Qargs
,最后:argdo %s//Practical/g
现在,如何/Pragmatic\ze
使用 指定模式ag
?
完全是ag
为我在这里想要做的事情而设计的吗?
vim - vimgrep 搜索已知字符字符串会产生 E480 错误消息
我正在尝试使用 vimgrep 对当前文件夹中所有文本文件中字符串“proj”的所有出现进行非常简单的搜索。该目录称为“logs”,所有文件都具有相同的命名方案:“log_yyyymmdd.txt”。
我正在:vimgrep /proj/g *.txt
以“日志”作为当前目录运行命令
我知道字符串出现在该文件夹中的多个文件中,但错误消息E480: No match: proj
继续出现。
帮助表示赞赏。
吉尔夫
windows - Windows 中的 GVIM vimgrep
我正在尝试在 Windows 上的 GVim 中的所有文件中复制 Notepad++ 查找。我找到了以下 vimgrep 脚本,它似乎在目录中找到了光标下的单词
我将其修改为始终在项目的根目录中搜索。但它不起作用。该项目位于“c:\lion”下
显示以下错误。
vim - (VIM) vimgrep 是否能够搜索 unicode 字符串
vimgrep 是否能够搜索 unicode 字符串?例如:
a.txt
包含宽字符串“hello”, vimgrep hello *.txt
什么也没找到,当然它在正确的路径中。
regex - VIM - 当前缓冲区中可视选择的 VIMGREP 热键
我将如何设置热键(例如:CTRL+ )以对当前缓冲区中的当前视觉选择g执行操作?VIMGREP
我的意图是在所有匹配搜索结果的“快速修复”窗口中显示一个行号列表。
现在,如果我想获得正则表达式搜索的结果列表,我可以像这样执行命令模式查询:
但是,这样做有两个问题:
- 我不想输入整个查询。我总是可以进行视觉选择,然后使用CTRL+ r,CTRL+w将当前视觉选择粘贴到命令缓冲区中,但我想要比这更简单的东西。
- 上述方法要求当前缓冲区已经保存到文件中。我希望能够在我粘贴到 VIM 的临时缓冲区上工作,而不是每次我想这样做时都必须保存文件缓冲区。
谢谢你。