背景
作为一个VIM党,日常工作开发中,会经常利用grep进行关键词搜索,以快速定位到文件。如图:
利用grep进行文本搜索
但是,这一过程会有两个效率问题:
- 展示的结果无法进行直接交互,需要手动粘贴文件路径在打开
- 展示的结果没有进行分组,直接将结果罗列出来
可想而知,当搜索的内容结果集比较大时,可谓痛苦。
那可以用Vim中的Ag插件进行搜索啊?
是的,但他只解决了交互的问题。仍然没有解决结果集分组分类的痛点。
在vim下利用ag进行文本搜索
思路
在使用Eclipse等IDE进行文本全局搜索时,在加载效果(懒加载)可视化方面有很大优势。
在Eclipse下进行全局文件搜索
那么,期望基于linux系统,提供一个类似的搜索工具。优点(功能)如下:
- 结果集可以直接交互
- 结果集可以进行分组展示
- 结果集通过“懒加载”方式装载
基于文本图形界面的类库是什么呢?网上大致了解了下VIM、htop类似的软件,其都是基于一个叫ncurses的类库实现的。
项目
项目的名称:ncgrep
为什么?因为有ngrep、egrep等。(注:ncgrep没有引用grep源码)
项目的Demo
ncgrep demo
代码
http://github.com/ncgrep/ncgrep
类似项目
NGP youtube ->https://www.youtube.com/watch?v=MesYBY8271s
总结
工具为效率而生,期望能够带来收益。
原文地址:http://blog.ihuxu.com/ncgrep-based-on-ncurses-global-regular-search-tool/
基于文本图形(ncurses)的文本搜索工具 ncgrep的更多相关文章
-
[linux] grep 文本搜索工具
grep [option] pattern file Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.grep全称是Global Regular ...
-
grep文本搜索工具详解
############grep命令############这个命令属于文本处理三大命令之一,强大的文本搜索工具(贪婪模式)全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达 ...
-
Chinese-Text-Classification,用卷积神经网络基于 Tensorflow 实现的中文文本分类。
用卷积神经网络基于 Tensorflow 实现的中文文本分类 项目地址: https://github.com/fendouai/Chinese-Text-Classification 欢迎提问:ht ...
-
NLP实现文本分词+在线词云实现工具
实现文本分词+在线词云实现工具 词云是NLP中比较简单而且效果较好的一种表达方式,说到可视化,R语言当仍不让,可见R语言︱文本挖掘——词云wordcloud2包 当然用代码写词云还是比较费劲的,网上也 ...
-
基于Text-CNN模型的中文文本分类实战 流川枫 发表于AI星球订阅
Text-CNN 1.文本分类 转眼学生生涯就结束了,在家待就业期间正好有一段空闲期,可以对曾经感兴趣的一些知识点进行总结. 本文介绍NLP中文本分类任务中核心流程进行了系统的介绍,文末给出一个基于T ...
-
基于Text-CNN模型的中文文本分类实战
Text-CNN 1.文本分类 转眼学生生涯就结束了,在家待就业期间正好有一段空闲期,可以对曾经感兴趣的一些知识点进行总结. 本文介绍NLP中文本分类任务中核心流程进行了系统的介绍,文末给出一个基于T ...
-
Java 在PPT中创建SmartArt图形、读取SmartArt图形中的文本
一.概述及环境准备 SmartArt 图形通过将文字.图形从多种不同布局.组合来表现内容和观点的逻辑关系,能够快速.有效地传达设计者的意图和信息.这种图文表达的视觉表示形式常用于PPT,Word,Ex ...
-
基于jquery的bootstrap在线文本编辑器插件Summernote
Summernote是一个基于jquery的bootstrap超级简单WYSIWYG在线编辑器.Summernote非常的轻量级,大小只有30KB,支持Safari,Chrome,Firefox.Op ...
-
CentOS 默认进入图形界面与文本界面
查看/etc/inittab文件,得到以下信息: # inittab is no longer used when using systemd.## ADDING CONFIGURATION HERE ...
随机推荐
-
c#实现分组服务器,单一无重复生成ID
class Program { static void Main(string[] args) { List<Thread> threads = new List<Thread> ...
-
C语言中const的正确用法
今天看<Linux内核编程>(Claudia Salzberg Podriguez等著)时,文中(p39)有一个错误,就是关于const的用法. 原文中举例说明:const int *x中 ...
-
向MySql中插入中文时出现乱码
这个因为字符集编码问题.在连接字符串中加上CharSet=gbk
-
嵌入式系统烧写uboot/bootloader/kernel的一般方法
嵌入式系统烧写uboot/bootloader/kernel的一般方法 本文介绍了在嵌入式系统中烧写uboot/bootloader/kernel 的一般方法,以及如果uboot或者内核出现错误, ...
-
C#Linq的使用
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
-
Could not find qmake configuration file win32-g++
D:\Source>c:\Qt\Qt5.3.2_static\bin\qmake -makefile -o Makefile my.proCould not find qmake configu ...
-
hdu5238 calculator (线段树+crt)
(并不能)发现29393不是质数,而是等于7*13*17*19 于是可以用四个线段树分别维护模意义下,对x进行一个区间的操作后的值 最后再把这四个的答案用crt拼起来 也可以不crt,而是预处理0~2 ...
-
使用Tenorshare iCareFone for mac为iPhone做系统修复
tenorshare icarefonemac中文版采用一键式方法来保护,修理,清洁,优化并最终加快您的iPhone,iPad和iPod的速度.它可以帮助您轻松解决所有iOS问题,并让您的iPhone ...
-
select2插件设置选中值并显示的问题
在select2中,要想设置指定值为选中状态并显示: $("#select2_Id").val("XXXXX").select2() 或者 var obj= $ ...
-
C#中使用WeiFenLuo.WinFormsUI.Docking.dll实现窗口停靠效果
很酷的效果,很值得好好去学习的哈. 重置工具箱: 新建一个WinForm程序,项目名称为TestDockPanelControl.选中Form1窗体后选择工具箱--->>新建个添加选项卡命 ...