要求:
综合编辑器和扩展对比,优先vscode,次优emacs
特色 | vscode | emacs | vim | 备注 |
---|---|---|---|---|
交互体验 | 优 | 良 | ||
标识语言 | markdown | org | markdown | |
Latex公式 | 支持实时预览 | 预览支持不太好 | 重点功能 | |
TAG | 优 | 优 | 重点功能 | |
多级TAG | 支持 | 不支持 | ||
块引用 | ![[filename]] |
不支持 | 重点功能 | |
backlink | 支持Foam | 支持Roam | 重点功能 | |
链接图谱 | 良 foam | 优 roam-ui | 重点功能 | |
链接方式 | 文件名 | 标题id属性 | ||
链接名 | 文件内一级标题名 | 自己定义 | ||
文件内标题 | 用#分割的多级标题 | 每个标题都可设置ID | ||
链接更新 | 文件名改变可自动更新 | ID不能变,变需要手工更新 | 重点功能 | |
属性 | 不支持 | 优 | ||
TODO | 差 | 优 | ||
扩展语言 | javascipt | emacs-lisp | ||
总结 | 最前最佳选择 | 次佳选择 |
整体看,emacs的org标记语言比markdown更灵活,但emacs编辑器较vscode体验差些。
路径链接形式:[name](./doc/filename.md)
wiki链接形式:[[filename]]
wiki链接形式markdown默认不支持,只有VS的Foam可预览;路径链接形式为正常形式,但改文件夹不支持。
wiki链接的支持方案:
修改Foma配置:
"foam.edit.linkReferenceDefinitions": "withExtensions"
这会在文件底部自动生成对应的引用链接,由于wiki链接是双中括号,引用链接是用单括号解析,链接最终显示效果用被中括号包裹
Foam通过 YAML Front Matter
配置TAG,在YFM中配置的tags可以在TAG EXPLORER中查看。
---
title: 知识库落地方案
date: 2018-01-01
type: kbase
tags: 永久笔记, 知识库
---
tags
属性定义这条笔记的标签。多个标签之间用空格或半角逗号分隔。另外也可以通过在笔记正文中使用 #tag
来添加标签。
Foam 支持多级标签即 #tag/sub-tag
,但笔者并不使用,个人认为这还是在按树状结构来组织笔记。
安装扩展
修改settings: [1dn-ide-vscode-setting]
assets/${fileName}-${now}.png
"workbench.editorAssociations": {
"*.md": "default"
},
"vscode-office.pasterImgPath": "assets/${fileName}-${now}.png"
如果使用vim扩展,windows需要设置一下关闭vim的Crtl相关快捷键,否则会和复制粘贴等快捷键冲突,添加如下配置:
"vim.useCtrlKeys": false
列模式使用vscode的Shift+Alt+(拖动鼠标)或上下箭头