1 个不稳定版本
0.1.8 | 2022年3月26日 |
---|
#5 in #vscode
1MB
2K SLoC
Zeta Note
Markdown 中令人愉快的笔记...
免责声明: Zeta Note 是一个 正在进行中的项目。对我来说它运行良好,但测试并不多,因此稳定性不能保证。
Zeta Note 是一个语言服务器,可以帮助你编写和管理笔记。主要重点是支持 类似 Zettelkasten1, 2 的笔记,通过提供一种简单的方式来 交叉引用笔记(有关功能的更多信息请见下文)。
但您不必完全采用 Zettelkasten 方法才能从 Zeta Note 中受益
-
用您喜欢的方式写笔记。
-
使用 引用 链接交叉引用笔记
[:another-note]
- 另一篇笔记的引用。[:another-note@##Subsection]
- 笔记子部分的引用。[:@##Inner subsection]
- 当前笔记子部分的引用。
Zeta Note 提供的自动完成功能使此过程快速且简单。
-
转到定义,悬停预览,代码透镜和诊断简化了笔记的导航和维护。
现有编辑器集成3
- 通过 Zeta Note VSCode 在 VSCode 中。
- 通过 nvim-lspconfig 在 Neovim 0.5+ 中。
如何安装
选项 1:使用预构建的二进制文件
- 转到 发行版 页面:每个发行版都为 Linux、MacOS 和 Windows 提供预构建的二进制文件。下载适合您操作系统的二进制文件。
- 重命名二进制文件并使其可执行
- MacOS:
mv zeta-note-macos zeta-note && chmod +x zeta-note
- Linux:
mv zeta-note-linux zeta-note && chmod +x zeta-note
- Windows: 将
zeta-note-windows.exe
重命名为zeta-note.exe
。
- MacOS:
- 将二进制文件放置在您的
PATH
中的某个位置。- XDG 推荐使用
$HOME/.local/bin/
(确保该文件夹位于您的PATH
中)。
- XDG 推荐使用
选项 2:从源码构建
- 通过 rustup 安装 Rust 和 Cargo。
- 克隆仓库:
git clone https://github.com/artempyanykh/zeta-note.git
- 在
zeta-note
文件夹内运行cargo install --path .
- 二进制文件将被安装到
$HOME/.cargo/bin
(确保该文件夹位于您的PATH
中)。
屏幕截图
- 悬停预览:
- 完成(笔记):
- 完成(标题):
- "显示引用" 代码透镜:
- 对断开引用的项目级诊断:
功能和计划
✅ - 完成;🗓 - 计划。
- ✅ 引用完成。
- ✅ 引用定义跳转。
- ✅ 引用的悬停预览。
- ✅ 断开引用的诊断。
- ✅ 标题上的“#引用”代码透镜。
- ✅ 支持标题中的引用。
- ✅ 支持多文件夹工作空间。
- 🗓 重命名重构。
- 🗓 支持 Jupyter 笔记本。
- 🗓 更细粒度的笔记结构自定义解析器。
- 🗓 支持标题别名。
- 🗓 添加“检查”命令以进行独立工作空间检查。
- 🗓 添加“构建”命令,将所有交叉引用重写为正确的相对 Markdown 链接,以便进一步嵌入到静态站点生成器(如 Jekyll 或 Hakyll)中。
- 🗓 添加对 常规 链接的支持(诊断、完成、跳转)。
- 🗓 添加对图像的支持(诊断、完成、跳转)。
[1]:你可能听说过Roam Research。这是Zettelkasten方法的商业实现,也是Zeta Note的一个参考点。然而,与专有Roam Research不同,Zeta Note是免费的、开源的,并且集成到了你最喜欢的编辑器中(尽管功能不如Roam Research丰富)。
[2]:有一个优秀的VSCode扩展名为Markdown Memo。如果你主要使用VSCode,你绝对需要检查它,因为它有一些Zeta Note和Zeta Note VSCode扩展中缺少的功能。然而,Markdown Memo是针对VSCode的,而Zeta Note是一个通用语言服务器,因此可以与任何具有LSP支持的编辑器一起使用:Emacs、Vim、Neovim等。
[3]:由于Zeta Note是一个常规语言服务器,大多数功能都无需额外操作即可与任何LSP客户端一起使用。唯一需要自定义处理的是“代码透镜”,因为这些在LSP规范中的定义方式。
[4]:rust-analyzer是实施Rust中LSP服务器各个部分的巨大灵感来源。谢谢!
依赖项
~14–23MB
~318K SLoC