






















因为工作原因,我必须同时使用 MacOS 和 Windows 操作系统。我曾重度使用 Mac Quiver 笔记软件,但它无法与 Windows 10 上的笔记同步,这给我带来了麻烦。于是,我开始寻找可以跨平台同步的笔记软件,市场上有很多不错的软件。其中包括 Evernote、有道笔记、小熊、Notion 等。每款应用都有其独特的功能,对于我们在学习和记录重要内容的工具中捕捉零散的知识碎片非常有用。但是,它们都不能完全满足我的需求。经过一番摸索尝试后,我的解决方案是使用 VSCode + Git 来管理笔记。接下来,我将与大家分享我是如何基于 VSCode 打造个人笔记工具。
介绍方案前,我先说下自己理想中的笔记软件应具备的功能:
在工作中,我需要随时随地记录重要的事情和灵感,并在闲暇时将它们整理到自己的知识管理系统中。在流行的笔记软件中这些功能基本都有,但是多少存在令我不太满意的地方,并且还需付费。比如数据是以厂商的格式保存成json或xml等,一旦出现更优秀的笔记工具,迁移就特别麻烦甚至无法迁移;我在系统整理笔记时,需要批量替换、随意移动笔记位置(文件夹整理);查看笔记变更历史(Git Diff)等等。
使用 VSCode 编辑器 + Git 版本管理,实现一个简单但功能强大的纯文本存储个人笔记工具。以下挂2篇相关的文章,方便大家了解这2个工具。
经长期使用后,该方案沉淀的最终效果:
tags: Flink,Sharing,FlinkSQL 自定义内容模版(自己总结的模版才是最香的)TODO,FIXME 等标识以上只列出部分功能,更多玩法等你探索。感觉自己就像笔记软件开发者,自己解决需求,没事就到插件市场翻翻解决方案,或新奇玩法,VSCode编辑器的强大这里就不多说了。整体使用体验就是免费、灵活、高效、无尽可能。
接下来我会介绍下整套方案的搭建过程,并罗列出我常用的插件和快捷键,以及一些个人配置。
为了不占用文章篇幅,通用的安装教程我提供了更详尽的文章教程,可做参考:
我习惯将笔记放在一个单独的文件夹中 Notebook,并按照自己的想法分级管理笔记。
Notebook % tree
.
├── .vscode
│ ├── markdown.code-snippets
│ └── settings.json
├── Archive
│ ├── 2023
│ ├── Xxx_WorkSpace
│ └── Yyy_WorkSpace
├── Awesome_Work
│ ├── Standard
│ ├── _便签
│ │ └── 思考重要问题.md
│ └── 宝藏收藏
├── Code_Snippet
├── Develop
├── Diary
├── Schedule
├── Source
│ ├── img
│ └── svg
├── Temp
└── WorkSpace_
├── WeeklyWork
└── 分享
├── README.md
├── .gitignore
├── .markdownlint.json下面分别介绍各个目录的作用:
markdown.code-snippets 常用模板、settings.json vscode和插件配置文件
markdownlint 是一个 markdown 语法检查工具,可以用来检查 markdown 文件的语法错误。以下是常用操作:
Command + . Quickly fixF8 遍历warningsmarkdownlint:fix all Quickly fix 全局问题不想要的规范约束可以在笔记更目录.markdownlint.json文件中配置。
{
"default": true,
"MD041": false,
"MD025": false,
}
基础必备插件,提供了全面而便捷的Markdown编辑和预览功能。以下是我常用功能:
给各级标题自动添加序列号,如1.1、2.1等。使用 Command Shift P > section number
有个地方和markdownlint冲突:lint语法检查需要禁用规则:一个md文件只能出现一个一级标题
Markdown All in One: Add/Update section numbersMarkdown All in One: Remove section numbers


一键生成文档目录,并自动更新。使用 Command Shift P > content
Markdown All in One: Create Table of ContentsMarkdown All in One: Update Table of Contents
当要注明文章引用来源时,只需要copy文章网页地址,然后键入文章标题并选中, 接着ctrl + V就会自动生成link [文章标题](文章链接地址)


调整图片显示大小
 ,路径后跟一个空格,设置长宽

该插件导出PDF、Html效果更好。打开指定文件后,可以 command shift p 再输入 export 或者右键选中 Markdown PDF: export(pdf) 都能到处PDF文件,同理也能导出Html/图片。

Draw.io 是一款免费的专业强大的作图工具,可用于原型图、UML、BPMN、网络拓扑图等多种图形绘制。
有使用过在线画图软件的可能有了解过 ProcessOn 在线流程图思维导图,不过他是付费的不然有使用限制,虽然我也是它的付费用户,但是通过该插件可以在我的笔记中画图,非常方便,还是免费的。
使用也简单,在新建文件时指定文件后缀,如xxx.drawio,xxx.drawio.svg, 或者 xxx.drawio.png 然后打开文件时,会是drawio的编辑界面。 文件为png或svg类型时可以直接引入笔记中当作图片显示。这样就可以在vscode中画图,且画好的图维护在笔记中。
还可以安装Draw.io Integration: Mermaid plugin插件,如果有使用Mermaid的话,方便在drawio操作界面中调试 mermaid 脚本。


插入Table,可设置几行几列。
Markdown:new tableMarkdown:new table with alignment

格式化Table, 可通过MD table generator创建表格后,不管格式快速填入数据,然后格式化。
使用时,可鼠标右键或> Markdown Table:format all table。
也支持表格中内容居左、居右、居中,以及csv data 转换成 table。

通过截图软件截取图片到剪贴板后,command shift p > paste image, 图片的路径()就会自动填充到光标所在的位置。
在自动生成路径前,会弹框提示更改默认路径,这可以让我修改文件名称或文件路径。
默认保存图片的位置,通过该项目的settings.json文件配置({projectRoot}/.vscode/settings.json):
// path, 文件实际保存的位置
"pasteImage.path": "${projectRoot}/source/img",
// 以下2项,可以将文件全路径剪裁成 /source/img/auto_filename.xxx
"pasteImage.basePath": "${projectRoot}",
"pasteImage.prefix": "/",
// 为了可以再[]框中自动填充文件名称
"pasteImage.insertPattern": "",
// 以下2项,弹出文件名称确认框,可修改
"pasteImage.showFilePathConfirmInputBox": true,
"pasteImage.filePathConfirmInputBoxMode": "fullPath",考虑到后期笔记内容多了之后,图片等媒介也会越来越多,通过git管理图片不是个好方式。 可以在
.gitignore文件中将Source目录排除。使用云盘托管并自动同步Source目录。
All Autocomplete 插件的作用:可以在当前文件编辑文本时,智能提示所有打开文件中出现过的内容,非常nice,比如我在编写sql时,非常依赖已有的内容,如字段名、表名、关键词、注释等等。
注意:如果效果不佳,提示慢或靠后的话,需要关闭其他智能提示。比如我关了
"database-client.complectionTriggerKey": [],database-client 的智能提示。
通过键盘在工作区中的任何位置创建文件。可通过以下两种方式使用:
Command palette > "Advanced New File"cmd+opt+n
AutoCorrect 用于「自动纠正」或「检查并建议」文案,给 CJK(中文、日语、韩语)与英文混写的场景,补充正确的空格,同时尝试以安全的方式自动纠正标点符号等等。
类似 ESlint、Rubocop、Gofmt 等工具,AutoCorrect 结合 VS Code,它提供 Lint 功能能便捷的检测出项目中有问题的文案,起到统一规范的作用。
支持各种类型文件支持,能自动识别文件名,并准确找到字符串、注释做自动纠正。
1.1.1,不能出现1.1.1.1。
---
date: 2024-01-01 17:34:26 # 自动填充
tags: # 标签按需添加,尽量添加,如果明确的话。方便在`TAG TREE`中快速定位
- 工具
- Standard
- 分享
---${projectRoot}/source/img下即可。我的原则是不给自己限制太多,从简处理。以上是我能想起来的,后面有机会再慢慢补充,作为大家的参考,也欢迎大家给我提意见。

目前为止,这套方案对我而言还是非常满意的,无论是工作还是生活,都能够快速记录,并且能够快速检索,而且觉得整理合并过往笔记时也相当高效。总之,免费、可拓展、自由掌控是我始终喜欢这套方案的原因。加之依赖于Microsoft的VSCode,研发实力强大、社区活跃、版本迭代更新快,后续会持续享受VSCode带来更好的体验。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。