Recoll-文本搜索工具

随着知识的积累,平时下载的PDF文件,各种txt文档和html文档逐渐增多,如果再遇到同样的问题,如何去寻找当初已做的记录和相应收藏的文件呢?这个时候需要一个文本搜索工具,来解决快速知识的搜索,从而定位到以前做过笔记文件。

由于本博客的所有内容均使用markdown文本来做本地备份,所以随着平时写的博客的数量的增多,寻找曾经的解决方案变得越来越困难,这样曾经的博客就会随着时间的推移而失去作用。对于文本搜索本具的需求也就出现。

本来我是想找一个终端的搜索工具,但是grep和ack-grep都是基于行匹配的,不能进行全文匹配,也就做不到似乎搜索引擎那种效果。后来转向桌面版本,找到这个软件Recoll。

一、Recoll简介

Recoll 基于 Xapian 这个成熟的开源搜索引擎而构建,能够处理无格式文本、HTML 网页、OpenOffice.org 办公文档、Mozilla Thunderbird 及 Evolution 电子邮件信息、Lyx、Scribus 等文件格式。在助手程序的支持下,Recoll 可以支持更多的文件格式,如 PDF1
虽然是一个十多年前的产品了,可是一直有所更新,最近的版本为Recoll 1.23.1(截止到2017/03/19),经过十多年发展,产品的质量很不错,值得一用。官网为:
http://www.lesbonscomptes.com/recoll/

二、Recoll安装

一般情况下可以试试看看源里面有没有这个软件,如果有的话,直接搜索安装即可。如果没有或者源里的软件比较老,可以采用下面方法安装:

# ubuntu/debian用户
sudo add-apt-repository ppa:recoll-backports/recoll-1.15-on
sudo apt-get update
sudo apt-get install recoll

而其它发行版本的用户则可以去参考官方页面:http://www.lesbonscomptes.com/recoll/download.html

三、Recoll的使用

首次打开Recoll的时候,它会问你需要设置和直接更新index文件,这个时候应该选择不要更新设置,因为默认添加的目录为$HOME文件夹,也就是说会建立整个home目录下的所有文件的index,这样不仅会消耗大量的时间(注意这个过程是不可逆的,一旦开始更新,无论怎么设置都不会停下来),而且还会建立大量没用的索引(index)。

当然,如果你选择了直接更新索引,那么直接删除~/.recoll/目录,重新打开Recoll就可以了。

3.1 建立索引目录

由于只需要在自己的数据文件夹下建立索引,查询范围自然也不要超出这些文件夹。选择”preference->index configuring”,会出下面的界面:
Alt
按照上图配置好相应的路径之后,即可更新一下index:”File->update index”,即可完成数据库的索引更新。这时候你可以搜索了。搜索总的提供四种模式:

  1. Any terms:“或”匹配模式,即搜到有关键词A或者关键词B的的文件;
  2. All terms : “与”匹配模式,同时含有关键词A和B的文件;
  3. filenames : 文件名搜索
  4. query languages: 不知道是干嘛的

3.2 设置界面

原始的界面一般情况下是不太满意的,设置一下才好看!

“Preferences->Query configuretion”即可看到设置界面,如下所示:
Alt
至于界面设置都是关于html和CSS设置,鄙人也懂得不多,不过如想要修改一下还是可以的。
点开”Edit result paragraph format string”,将里面的内容替换为如下的内容:

<table><tr>
<td><img src='%I' width='64'></td>
<td><font color="red"><b>%R</b> </font> %S%L  
<font color="#008252"><b>%U</b></font>
<br>%D<font color="red">%T</font>%i
<br>%A %K</td></tr></table>

点开”Edit result page html header inseart”,将里面内容改为:

<html>
     <head>
         <link rel="stylesheet" type="text/css" href="file:///home/xxx/.recoll/csstest1.css" >
     </head>
 </html>

注意要将xxx替换你自己的用户名!,然后在对应的文件夹下创建css文件:~/.recoll/csstest1.css,内容为:

p { background-color:#EFE7D6; border: 1pt solid black; }

再重启下recoll,搜索即可看到效果。

四、最终效果

Alt

References


  1. Recoll:Linux 桌面全文搜索引擎.LinuxToy.2007-04-25.https://linuxtoy.org/archives/recoll.html 
此条目发表在LINUX, 软件安装分类目录,贴了标签。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。