结合grep/ack和vim快速查找和编辑包含模式的文件

fvi的Python项目详细描述


给定模式和文件列表,fvi首先在给定的 查找包含该模式的文件,然后仅打开 vim。在vim中,使用n移动到下一个出现的模式和ctrl-n 移动到下一个文件。vim在设置了autowrite的情况下运行。任何目录, 不可读文件或文件列表中的二进制文件将被忽略。

如果命令行上没有给出文件列表,fvi则使用ack而不是 找到包含模式的文件。通常ack会 在当前工作目录和所有子目录中的所有常规文件中, 但是,这可以使用.ackrc文件来控制。

参数

fvi[选项]pattern[file[file..]

选项

-h, --helpShow this help message and exit.
-w, --wordMatch a word.
-i, --ignore-case
Ignore case.
-m, --magicTreat pattern as a vim magic or grep basic regular expression.
-v, --very-magic
Treat pattern as a vim very magic or grep extended regular expression.
-g, --gvimOpen files in gvim.

安装

仅在Unix系统上运行。需要Python3.5或更高版本。它还需要 python的docutils。如果可用,也使用ack。安装时使用:

pip install fvi

安装两个程序及其手册页。安装后,您可以获得更多 信息使用:

man fvi

配置

您可以使用vim、gvim、grep和ack环境变量来控制 应该使用这些程序的版本。默认情况下,vim=vim,gvim=gvim, grep=grep,ack=ack。例如,如果您希望将ack替换为silver 搜索者,将以下内容添加到.bashrc文件中:

export ACK=ag

在ubuntu上,ack是用非标准名称安装的,因此您需要 放置:

export ACK=ack-grep

进入你的~/.bashrc文件。

如果您希望使用silver searcher替换ack,请使用: . 您需要修改fvi文件并用^{tt3}替换ack。$ 来解决这个问题。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Swing会在减少Windows时间后忽略第一次单击   java使用Jsoup从网页获取价格   JavaSpringbeans,使它们可用于其他类?我的组件为空?   java如何实现Servlet的渐进响应?   java使3个视图可见,然后根据条件隐藏其他视图   列出如何根据Java中ArrayList的大小为变量分配字符?   将p5js草图转换为处理的javascript问题   java如何在推送时对mongodb中的数组元素进行排序?   Java中基于字段将csv文件拆分为多个文件   java boolean onClickEventListener返回的目的   java开关和if/else的哪种组合更快?为什么?   java在其他静态方法中调用局部变量?   编码风格Java枚举应该在它们自己的文件中定义吗?   java绘制jtable单元格编辑器(位于jtable上方)   java是否可以在tomcat中编辑类文件并重新编译单个文件?   java使用基类中泛型方法的方法引用,这给了我NoSuchMethodError   Java泛型与使用参数化类有关   Java类型转换的加密输出   我对eclipse上的以下Java代码有一个问题(无法访问的代码)