我为什么选择Wiki.js记笔记?
很长一段时间里,我都被困扰着,感觉陷入了笔记的泥潭,而积累的如此多的笔记也没有形成我自己的知识体系。
之前的记笔记方式
笔记的来源
- 微信公众号
- 技术博客
- 纸质书籍
- 官网文档
- 自己的零散想法
- 网页
之前的笔记软件
有好几个:
- 为知笔记
- 浏览器书签
- MarkDown 文档
- Calibre 电子书库
- 文件夹
- Git 仓库
- 个人博客
- ...
之前记笔记的方式有什么缺点
- 零散,散落在各处
- 没有关联,笔记与笔记之前是相对独立的,没有形成一个完整的双向链接的体系
- 用到的时候想不起来在哪儿,又得重新搜索
- 剪藏收录的笔记,大概率后面是永远不会再看了
- 笔记格式五花八门,不统一
- 为知笔记是专有的格式,只能用它来看,迁移难度大
- MarkDown 的图片是一大问题,有时候用的是本地电脑的绝对链接,有时候是相对链接,有时候又是原文链接(会导致防盗链或者图片挂掉),有时候又上传到自己图床
- Calibre 电子书库的使用成本高,几乎没有为了看书而打开过
- 个人博客有时候就会懒得更新。
我的新一代记笔记的需求
- 格式统一:都是MarkDown + 图片(个人图床) + 附件(可以是PDF,其他文档,音视频等)
- 双向同步方便:可以通过Git,同步文件夹,WebDAV,S3等形式双向同步或单向备份
- 双向链接:通过
[[双向链接]]和![[]]双向图片链接的这种格式,为所有文档建立关联,形成知识网络 - 可以生成在线网页,方便在线浏览和编辑
- 文档齐全,中文翻译,方便使用
Wiki.js 优势
- 美丽、直观、现代的界面
- 详细丰富的文档
- 支持 Docker 部署
- 管理功能强大
- 定制化程度高
- 可以选择将 wiki 公开化或者保密
- 在线 MarkDown 编辑器很好用
- 支持中文
- 历史记录,版本最终,版本对比
- Git 双向同步
- 查询功能自定义程度高且强大,可以对接 ES
- 云存储,支持:AWS S3,兼容的S3,个人云盘
- 本地存储和备份
- 开源
- 集成丰富
- 未来会有插件
对于 Wiki.js 的更多期待
当然,我的需求 Wiki.js 并没有完全满足,期待后续它能够在这些方便予以补足:
- 支持双向链接语法,和 Obsidian 高度兼容
以上。
我的寻找过程
本文由博客一文多发平台 OpenWrite 发布!
我为什么选择Wiki.js记笔记?的更多相关文章
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Vue.js学习笔记(2)vue-router
vue中vue-router的使用:
- js读书笔记
js读书笔记 基本类型的基本函数总结 1. Boolean() 数据类型 转换为true的值 转换为false的值 Boolean true false String 任何非空字符串 "&q ...
- React.js入门笔记
# React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的 ...
- JS 学习笔记--9---变量-作用域-内存相关
JS 中变量和其它语言中变量最大的区别就是,JS 是松散型语言,决定了它只是在某一个特定时间保存某一特定的值的一个名字而已.由于在定义变量的时候不需要显示规定必须保存某种类型的值,故变量的值以及保存的 ...
- node.js系列笔记之node.js初识《一》
node.js系列笔记之node.js初识<一> 一:环境说明 1.1 Linux系统CentOS 5.8 1.2 nodejs v0.10.15 1.3 nodejs源码下载地址 htt ...
- JS面向对象笔记二
菜单导航,<JS面向对象笔记一>, 参考书籍:阮一峰之<JavaScript标准参考教程> 一.构造函数和new命令 二.this关键字 三.构造函数和new命令 四.构造函 ...
- WebGL three.js学习笔记 使用粒子系统模拟时空隧道(虫洞)
WebGL three.js学习笔记 使用粒子系统模拟时空隧道 本例的运行结果如图: 时空隧道demo演示 Demo地址:https://nsytsqdtn.github.io/demo/sprite ...
- WebGL three.js学习笔记 法向量网格材质MeshNormalMaterial的介绍和创建360度全景天空盒的方法
WebGL学习----Three.js学习笔记(5) 点击查看demo演示 Demo地址:https://nsytsqdtn.github.io/demo/360/360 简单网格材质 MeshNor ...
- WebGL three.js学习笔记 创建three.js代码的基本框架
WebGL学习----Three.js学习笔记(1) webgl介绍 WebGL是一种3D绘图协议,它把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的 ...
随机推荐
- [Linux ] 编译 ffmpeg 使用 AV1 编码 svt_av1 编码器
编译带 AV1 编码器的 ffmpeg 安装 aom git clone --depth 1 https://aomedia.googlesource.com/aom mk build cmake - ...
- C++ 深拷贝浅拷贝
C++ 深拷贝浅拷贝 C++默认生成的拷贝构造函数,他的行为就是浅拷贝,他只会复制一个一模一样的的指针,并不会操作指针指向的东西. 要想实现我们的逻辑需求,就要自定义拷贝构造函数,实现深拷贝. 我们来 ...
- Java多线程转账
Java多线程转账 关键词:多线程,Java 以前的一道面试题,要求是使用Java多线程,实现一个转账业务.不考虑数据库,不考虑其他第三方系统.只考虑当前Java程序内各个账户进行转账,保证转账金额正 ...
- 『Java 语法基础』面向对象有哪些特性
面向对象编程(OOP) 是一个将现实世界抽象为一系列对象的编程范式,这些对象通过消息传递机制来互相交流和协作. OOP 的主要特性包括四个基本概念:封装(Encapsulation).继承(Inher ...
- JVM(一)-内存结构
我们都知道,我们写的Java程序需要先经过编译,生成了.class文件(字节码文件).然而,计算机并不能直接解释.class文件里面的内容,这时候就需要一个能加载.解释.class文件并且能按.cla ...
- k8s标签的增删改查和选择器
在 Kubernetes(K8s)中,标签(Label)是与资源对象相关联的键值对,用于实现多维度的资源分组管理功能.下面是关于 Kubernetes 标签的增删改查操作的简要说明: 查询标签 (查) ...
- AirPlay、DLNA、Miracast三大无线应用协议科普
作为经常玩wifi的,wifi的应用层协议就要好好分析一下,做一些特殊的应用,还是非常有必要的.这里,就给学习一下wifi的三大无线传输技术. AirPlayAirPlay 是苹果开发的一种无线技术, ...
- JavaXMail发送邮件功能实现
原文:JavaXMail发送邮件功能实现 | Stars-One的杂货小窝 好久之前实现的邮件发送功能,一直没整理出来,考虑到之后有个项目需要,先整理一波 提示: 本文代码例子是使用Kotlin语言编 ...
- 使用元类实现Django的ORM
一.ORM基本介绍 ORM 是 python编程语言后端web框架 Django的核心思想,"Object Relational Mapping",即对象-关系映射,简称ORM. ...
- Spring Boot框架中针对数据文件模板的下载总结
1.前言 在我们的日常开发中,经常会碰到注入导入Excel数据到系统中的需求,而在导入Excel数据时,一般的业务系统都会提供数据的Excel模板,只有提交的Excel数据满足业务系统要求的模板时,数 ...