打造程序员本身的“云笔记”

由于工做关系常常在台式机/笔记本,家里/单位切换来切换去,但愿可以有一种不用那么费神的保持工做连贯性的方式。git 很好,但太繁琐了,下班走的时候忘记push了,到家就续不上了。固然我指的不是开发的代码,而是一些文档性的东西,譬如一些计划、一些学习心得,在网站上查东西的时候也会有一些随笔的记录什么的,由于太零碎,又随时但愿可以查到,因此以为也许云笔记是一个不错的选择。css

在使用了一年左右的“xx云笔记”后,感受本身愈来愈难以忍受了,首先的问题是搜索,云笔记的搜索是 word 式的,须要一个一个搜,不支持内容列表、不支持F3,对于程序员来讲彻底是废物。其次是我曾经在一个 .md 文件中贴了一大段的代码,结果下次打开的时候足足卡了七、8秒,上下翻页也是卡的不行。文档上说md支持不少流程图、甘特图...,结果作好的 .md 文件发到 github 上不少都显示不了,大都是本身的扩展,离开了“xx云笔记”后就是一堆谁都看不懂的东西。git

那么有没有更加符合程序员需求的“云笔记”呢,由于平常开发上常用 vscode 作开发,vscode 不管在编辑仍是搜索上,都彻底符合要求。因而就考虑可否用 vscode 打造一个符合本身的“云笔记”,咱们都知道 vscode 里面有大量的插件,并且可订制化很是强,那么可否把 vscode 改形成符合本身要求的“云笔记”呢,抱着这个想法开始了对 vscode 的研究工做。程序员

云服务器的选择

若是想作到跨设备同步,一个云存储后台是必需要有的,那么第一个问题就是选择什么样的云后台服务器。这里我又回到了 git 的怀抱,毕竟 git 服务器是很是成熟的解决方案,并且 vscode 与 git 的配合是天生的。并且即便没有“云笔记”的垃圾桶功能也不怕误删除文档,git 用来干这个事彻底是大才小用。github

我能够选择 github 或 “码云”,反正都是免费的,彻底够用了,在国内选择“码云”会比 github 快一些。如何去注册 github 或 “码云”的帐户就不在这里说明了,不了解的朋友能够自行搜索。json

自动化的同步

下一个问题是 git 的操做问题,git 的设计目标是为了作代码管理的,但我但愿的效果是像云笔记那样的彻底无感的自动化同步,若是每次都要记着 push/pull 就还不如用云笔记了。在插件仓库里面各类查找和测试,终于找到一个基本符合须要的插件 -- Auto-Git,这个插件能够定时自动从仓库里面 push/pull 数据,正是我须要的。服务器

这个插件装完了,会在我当前的文档工程下创建一个 .autogit 目录,里面有一个 autogit.json 文件,这个文件是 Auto-Git 的配置文件,例如个人配置:markdown

{
  "updateInterval": 1800,
  "logging": false,
  "silent": true
}
  • updateInterval
    是这个插件同步代码的时间,我设定为 1800 秒,也就是半小时,固然你能够设定的更短一些,但半小时对我来讲足够了,由于我单位的电脑历来不关机,从单位到家也不止半小时。
  • logging
    指是否要在上传下载的时候生成 log,彻底不须要,我只要结果,不关心过程。
  • silent
    静默模式,固然了,要不我装你干吗。

插件装好后,你能够在下面的状态栏左侧看到相似:编辑器

Next Auto-Git in... 1265

的显示,这就是告诉你在 1265 秒后开始自动同步数据。学习

最后还有一个比较麻烦的问题,我只想在个人文档项目中使用 Auto-Git,不想在真正的开发项目中作这种自动化的同步,容易把其余人搞晕。这个问题的解决办法是给个人文档工程创建一个工做区,而后全局禁用 Auto-Git,而后再在这个工做区上单独开启 Auto-Git,这样就让这个插件只在这个工做区开启了。测试

像 github 同样显示 .md 文档

首先个人文档基本都是 .md 格式的,有时候写好的文档会上传到 github 这样的代码平台上。vscode 是自带 .md 的显示支持的(Ctrl-K V),但它默认的显示效果跟 github 上显示的 .md 的显示效果并不同,那么有没有办法可以让我在 vscode 里面看到跟 github 上同样的显示效果呢?好在并非只有我有这样的需求,网上已经有人作过了:

https://github.com/raycon/vscode-markdown-style

这个项目 preview 目录下的 github.css 就是我须要的。把这个文件下载回来,放到文档项目的 .vscode 目录下(为了不干扰正常的文档文件),而后打开 .vscode 目录下的 setting.json 文件,加入:

"markdown.styles": [
    ".vscode/github.css"
]

如今再预览 .md 文件就跟在 github 上看到的一致了。

像“xx云笔记”同样编辑 md 文件

由于用了一年的“xx云笔记”,已经习惯了绿色的标题、蓝色的代码,在用 vscode 写 md 后,编辑环境的颜色就各类不习惯,本人又是轻度强迫症患者,必定要把 vscode 的编辑环境也搞得跟“xx云笔记”同样才行。
原本觉得有插件能帮我搞定这个事,但测试了一圈各类插件后,发现没有符合我须要的插件,我不相信 vscode 没法搞定这个事,在网上搜到一篇《VSCode 修改编辑器配色》的文章后,才豁然开朗,原来 vscode 自己就支持订制化。

这个就不能在当前工做区的设置里面改了,必需要改全局的 setting.json,

  1. 按 Ctrl+Shift+P打开 vscode 控制台
  2. 输入 Open Settings(JSON) 打开全局的 setting.json
  3. 在后面加入:

    "editor.tokenColorCustomizations" : {
        "textMateRules" : [
            {
                "scope" : "markup.heading.markdown",
                "settings" : {
                    "foreground" : "#8bcc8b",
                }
            },
            {
                "scope" : "markup.fenced_code.block.markdown",
                "settings" : {
                    "foreground" : "#6699cc",
                }
            },
            {
                "scope" : "punctuation.definition.list.begin.markdown",
                "settings" : {
                    "foreground" : "#a0a0a0",
                }
            }
        ]
    }

    如今就能看到熟悉的绿标题,蓝代码了,若是没看到请重启 vscode。

结束语

虽然花了很多时间去研究,一旦成功了仍是很是有成就感的。在这里把本身趟过的坑跟你们分享一下,但愿有更多的程序员朋友可以跟我同样订制出最符合本身的“云笔记”,也但愿可以跟我一块儿分享你的订制心得。

相关文章
相关标签/搜索