曾经的我一向使用 Evernote + 马克飞象来记载笔记和文档。不过感觉这两个东西越来越不思进取,几年都没什么变化。所以,一年多曾经,我就把一切笔记迁移成本地 Markdown 文件,合作 Dropbox 来实现云端同步。

在新方法下,我用的 Markdown 编辑器是 Markeditor,这个编辑器有许多长处:渲染好看、格局支撑多等等。但也有不少缺陷,比方技能架构陈旧,功用欠安。不过这些毛病都是次要的,MarkEditor 最大的问题是:没有全文检索才能。

之前使用 Evernote 时,它的文档查找功用很强壮。而相比之下, Markeditor 的查找功用只能充当个 grep 指令行东西用:

macOS 为 Markdown 文件开启全文检索方法

Markeditor 尴尬的查找功用

跟着本地文档越来越多,我对全文检索的需求也越来越强。在第 N 次无法快速找到我要的文档后,我预备自己用 Python + jieba 实现一个支撑中文分词的本地文档检索东西。

不过,在着手前,我俄然想到: macOS 自带的 Spotlight 不是支撑全文检索吗?为什么不直接用 Spotlight 来检索 Markdown 文档呢?

调整 Spotlight 来检索 Markdown 文档

Spotlight 是 macOS 自带的查找东西,提供查找和快速跳转功用。但在默认装备下,Spotlight 不会索引以 .md 后缀名完毕的 Markdown 文件。不过经过一些装备,咱们能够改变这点:

下载这份 Spotlight 使用的 importer 文件 文件来历在文章结尾
解压后放置到 ~/Library/Spotlight/ 目录
履行 mdimport -r ~/Library/Spotlight/Markdown.mdimporter 来让 Spotlight 手动加载 importer 文件
由于 Spotlight 并不会实时更新索引,所以你需求触发强制更新:

翻开 System Preferences -> Spotlight
点击 Privacy Tab 页面
将你的文档所在目录添加到列表中,随后删除
之后 Spotlight 便会重建索引。等一会后,你就能够用 Spotlight 搜到你的 Markdown 文件了。

约束目录进行全文检索

Spotlight 默认会查找一切目录的一切文档,如果你只想查找某个特定的文件夹,能够使用 Spotlight 的指令行东西:mdfind

$ mdfind "django postgresql ORM" -onlyin ~/Dropbox/Documents/MDDocuments
~/Dropbox/Documents/MDDocuments/技能笔记/数据库/PostgreSQL Sharding 方案研究.md
如果你是 Alfred 用户,那你能够基于这个指令做一个 Workflow,专门用来检索你的 Markdown 目录,就像这样:



我装备的 Alfred Workflow

装备完这些后,终于能够闲适的闲适的快速查找文档了。感谢 Spotlight,让我又少造了一个轮子。(擦汗)

macOS 为 Markdown 文件开启全文检索方法的更多相关文章

  1. [python]自动化将markdown文件转成html文件

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  2. [原创]使用Pandoc实现Markdown文件转PDF文件

    Markdown写法简单明快,我十分喜欢,以至于我最近都想使用Markdown快速的进行测试说明书的写作,但是考虑到这文档是要进行交接的,一个.md的文件在内部传输还是有不便,于是就想到了能不能把Ma ...

  3. 初遇Git与MarkDown 文件

    新年好! 昨晚熬夜在学Git,稍微会了一些命令. 推荐大家去try.github.io上学习,这是GitHub提供的网页,它在网页提供了一个“伪”模拟器,根据网页的提示学习命令.网页上说15分钟就能学 ...

  4. 自制 Python小工具 将markdown文件转换成Html文件

    今天看到了一个Python库,名为markdown.瞬间就给了我一个灵感,那就是制作一个将markdown文件转换成html文件的小工具. 我的实验环境 操作系统: Windows 7 64位 旗舰版 ...

  5. 在前端页面展示Markdown文件

    常我们都会在GitHub上浏览很多的readme文件,这些都是Markdown语法写成的Markdown文件,HTML中并没有用于展示Markdown文件的元素,那么为什么可以在前端展示呢? 有别于G ...

  6. Markdown文件导出为HTML的小程序

    Markdown文件导出为HTML的小程序 为什么做 最近把一些学习经验记下来,总结成MarkDown文件,不知不觉已经有12篇了. Sublime Text 的 MarkDown Preview 插 ...

  7. Atom编辑Markdown文件保存后行尾的空格自动消失的问题解决

    Markdown文件的行尾增加两个空格表示一行结束需要换行. 但保存文件后,行尾的空格自动消失,导致不换行. 解决方法: 1.[Edit]->[Preferences]->[Package ...

  8. dedeampz 套件关于PHP开启curl方法

    php开启curl方法主要用到三个文件libeay32.dll,php_curl.dll,ssleay32.dll 打开dede的安装目录,更改对应版本PHP中的php.ini文件,在 ; exten ...

  9. Markdown语法及使用方法完整手册

    欢迎使用 Markdown在线编辑器 MdEditor Markdown是一种轻量级的「标记语言」 Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容 ...

随机推荐

  1. 关于时间:UTC/GMT/xST/ xDT

    UTC ,Coordinated Universal Time GMT ,Greenwich Mean Time GMT和UTC 一般来说是意义几近相同的, 不过 UTC Coordinated Un ...

  2. HTML学习-2标记标签-1

    大致可以分为以下6类学习: 1.通用标签. 2.常用标签. 3.表格标签. 4.表单元素. 5.框架. 6.其他. 一.通用标签.及属性 1.<body></body>标签,主 ...

  3. UI5-学习篇-1-Eclipse开发工具及环境搭建

    最近研究SAP-UI5好几个月了,将相关学习经历及问题点做个记录. 1.先了解学习资料相关站点 SAP官网:https://www.sap.com/china/index.html SAP开发工具:h ...

  4. Nginx缓存配置以及nginx ngx_cache_purge模块的使用

    web缓存位于内容源Web服务器和客户端之间,当用户访问一个URL时,Web缓存服务器会去后端Web源服务器取回要输出的内容,然后,当下一个请求到来时,如果访问的是相同的URL,Web缓存服务器直接输 ...

  5. servlet编码问题

    建议每个servlet都写上    request.setCharacterEncoding("UTF-8")

  6. TRANSFORM YOUR HABITS

    TRANSFORM YOUR HABITS3rd EditionNote from James Clear:I wrote Transform Your Habits to create a free ...

  7. WEB前端问题——img标签的onclick事件无法响应问题【转载】

    一个纠结了一下午的问题,img标签里面的onclick事件无法响应.最终找到了错误原因,是因为img标签的id与onclick事件的方法名相同. 于是接着又测试了一下,发现name名和方法名相同也会导 ...

  8. ubuntu去除带锁文件的锁 sudo chown 用户名 目标文件夹/ -R

    sudo chown 用户名 目标文件夹/ -R sudo chown han dir/ -R

  9. LINUX系统一一CentOS6.5之tomcat安装

    一 准备工作建立好文件夹 tomcat文件夹地址  二 下载并解压 当然是下载了 1.centos6.5系统里面下载 解压 2.本机下载 然后利用Xftp复制到目标文件加载解压(我用的是这种,随意啦) ...

  10. Structs复习 Action传递参数

    Structs传递参数通常有三种方式 下面我来一个个介绍 1.属性 Jar包 web.xml <?xml version="1.0" encoding="UTF-8 ...