All Articles

Evernote: The Knowledge Database

1. 前言

之前在如何管理个人笔记里也提到了知识管理我选的是Evernote这款软件。这里就聊下,知识管理主要指什么,要做什么,以及Evernote这款软件的功能等。

2. 知识管理

所谓知识管理,核心功能需要以下几点:

  • 方便简洁的知识收集能力,操作要简单,渠道覆盖要全面
  • 基本的知识分类管理能力,按category和tag对一条知识进行组织和管理(核心是tag,category可选非必要)
  • 强大和高效的搜索能力,1-2秒内快速搜索指定的tag对应的知识条目,需要支持复合搜索
  • 数据导出和工具迁移能力,知识条目可以导出,并可以迁移到其他软件

即:收集、管理(标签)、搜索,三个步骤。这里编辑功能是非必要的,至少不是核心功能,编辑功能可以做得很糟糕(就比如Evernote,极其糟糕的编辑功能)。

一般的流程为:

  • 看到合适的知识内容(微信公众号、网页等),使用Evernote的剪藏工具剪藏收集到Evernote中
  • 更新Evernote里的剪藏post,移动到合适的category并附上合适的tags
  • 后续如果有任何搜索需求,使用Evernote的搜索功能进行查询

3. Evernote使用

3.1 网页剪藏

剪藏的官方插件列表在这里:印象笔记剪藏·下载。Chrome插件在这里,如果是墙内的话可以自己打开前面的链接找里面的下载包。

关于如何切换国际版和国内版,参见:如何切换印象笔记国内帐户和 Evernote 国际版帐户登录入口?

使用:点击插件列表里的Evernote图标或键盘”`“呼出剪藏面板,然后简单操作即可:

evernote webclipper

3.2 微信剪藏

官方文档:我的印象笔记@微信。按步骤操作即可。

因为很久之前的一次微信改版,现在都需要手动拷贝链接贴到微信公众号的聊天框内才能收藏,实在是很麻烦。

3.3 Tag管理

Tag的管理建议:宁滥毋缺

因为你在使用/搜索的时候,不一定能精确记起每个你命名的tag,有的时候可以多留几个近义词来保证后续搜索的稳定性。

两个个人习惯:

  • 为那些高质量,在搜索某个tag/概念的时候肯定想要搜到的条目附加BestPractice标签,作为后续过滤高质量条目的tag
  • 为某些概念的条目添加CN/EN双重tag,防止某些时候想不起来:e.g DistributedSystem / 分布式系统

3.4 搜索

搜索语法参见官方文档(EN):Search Grammar

常用搜索:

  • notebook:"golang",根据category/笔记本来搜索
  • tag:"TagNameXX*",根据tag来搜索条目,搜索可以带通配符
  • -tag:"TagNameYY",不包含某个tag
  • created:"20210704",搜索在2021-07-04或之后创建的条目
  • sourceurl:"https://www.google.com/*",根据条目url进行搜索
  • content,根据字符串来搜索条目内容
  • -content,根据条目内容搜索不带content字符串的条目
  • 关于复合条件搜索

    • 任何多条件的搜索默认都是and关系,e.g criteria1 criteria2 也就是 both criteria1 and criteria2
    • 如果需要按or关系进行搜索,需要在所有的criteria之前带上any,e.g any: criteria1 criteria2

AND

evernote search and

OR

evernote search or

4. Evernote缺陷

4.1 Editor

Evernote说实在的,在使用上还是有相当多的问题。最主要的是它的编辑能力实在是非常孱弱,基本上除了随手写点笔记之外,结构性的和系统性的文章编辑就别指望它了,任何一款主流的基于Markdown的编辑软件都比它好用。

虽然Evernote的新版本也支持markdown,但还是明显和传统笔记分割了开来,在Evernote里创建笔记只会创建出TXT笔记,而Markdown语法支持的笔记需要特定选择才可以:

evernote markdown create

4.2 Export

Evernote的导出也不是特别友好,因为刚才说的,其支持Markdown比较晚,所以大量的历史存量笔记肯定都是TXT格式(从使用者角度来说)的,所以导出的时候的选项一般只有HTMLENEX这个Evernote专用格式(后续测试了下,即便新版本里可以创建Markdown笔记,导出的时候也只有HTML和ENEX这两个选项)。

也就是说,如果后续用户希望转到其他的平台或其他的工具,那只有祈祷转入方能够支持ENEX格式的文件了。我之前有做过一些简单research,从结果来看不太乐观,一般来说即便宣称支持的那些软件做得也不太好,会有各种各样的导入问题或展示格式问题。而且有很多软件虽然支持导入ENEX文件,但不支持批量导入,所以当你需要整个转过去的时候就基本上没办法了。

因此,使用Evernote是有壁垒的,用户要有心理准备,后续将会很难将自己的数据导出或转移到其他服务。当然这也并非Evernote一家的问题,我相信MS的OneNote应该也差不多,或者其他的软件也是如此。

4.3 Sync

Evernote还有一个问题就是同步,最早的版本会完整同步所有你账户里的数据落地到本地磁盘,但后续的更新废除了这个同步。在新版本中,每次在新的机器上进行账号登录,只会同步最近一年的数据,更早的数据不会丢失,但并不会自动下载到你本地磁盘上,而是当你点击该条目的时候,再按需从Evernote的服务器上实时下载。

这对数据完整性和数据安全敏感的用户来说极不友好,因为一旦Evernote的服务暂时不可用或永久停止服务的时候,你将没有任何手段将你的数据库完整下载下来,难道几万条条目一个个点过来吗,不现实的。

所以如果数据量不大的话,记得尽量将你目前所拥有的本地数据做好备份,比如说用好TimeMachine,保证至少有一份完整的数据存在于你本地。然后比如说当你更换新机器的时候,记得将整个本地文件夹都拷贝到新的机器上去,然后再进行账户登录和同步,这样你的本地数据就一直都是完整的了。

目前版本的Evernote在MAC上的数据存储在:

/Users/XXX/Library/Application Support/com.yinxiang.Mac/accounts/app.yinxiang.com/XXXX
$ cd ...
$ du -sh *
4.0K	ContactExtractorFetchDate.plist
4.0K	CoreNote-CheckPoint
 16K	SyncState
112K	announcements
 40K	atlas
760M	backupPreMigration
4.0K	checkpoint
  0B	chunks
 48G	content
  0B	eb-up-sell
  0B	external-edits
428K	localMessageStore
142M	localNoteStore
 11M	localNoteStore.metadata
335M	note-personal.index
203M	note.index
157M	note.index.old
8.0K	plugins
 80K	puppetmaster
 46M	purgatory
4.0K	quick-search.store
 32K	quick-search.store-shm
 12K	quick-search.store-wal
  0B	temp_relatedContent
4.0K	tierSelectionEligibility.state
265M	typeAhead-personal.index
182M	typeAhead.index
158M	typeAhead.index.old
4.0K	version

条目数据全部都存放在content文件夹下,务必保证该文件夹得到妥善的备份。

EOF