开发了一款离线笔记软件《书立》,有富文本、表格、双链、WebDav,可编辑超过 100M 的 MarkDown 单文件。

19 天前
 xcodeartel

这是一款操作简单,功能强大的笔记软件,支持富文本编辑,支持 markdown 语法,支持 / 唤起块编辑菜单,支持 WebDav ,并且性能卓越。

体验网址: https://slinote.com/

关键词:离线,免费,高性能,富文本,双链,表格,富目录树,WebDAV ,自由导出。

富目录树

顾名思义,目录树也是富文本,文档的标题与大纲会自动生成目录树,并且保留富文本。通过编辑文档标题与大纲,可以生成各种样式的目录树,比如图文目录、表情目录、任务目录。

表格

书立的表格有全功能的富文本编辑能力,支持一些基本的 Excel 操作,支持单元格内嵌表格,表格的嵌套可用于页面布局,类似于无代码搭建网页,可以借此编排出各种自己想要的页面。

比如编排一个四象限任务模板

或者一个由嵌套表格搭建的产品说明书

表格在交互上借鉴了 Excel ,可以使用相同的方式操作单元格和选区,具体功能细节请参考软件内的帮助文档。

双链与链接

书立的双链和其他双链笔记软件不太一样,书立双链的灵感来自 IDE 的查找引用功能,查找引用在理解和管理代码方面至关重要,双链与查找引用有相似性,书立在文字层面实现了一套查找引用的能力,并且能双向数据同步。点击双链弹出的面板是一个全功能的编辑区,支持嵌套和多开,可以随意编辑整理双链关联的笔记。

书立的链接分为外链、正链和反链,外链即普通的超链接,正链和反链是内链的两种表示,是一种支持内部跳转的链接,正链和反链对于内容快速定位很有帮助,而且图片也能作为链接载体,点击图片可定位到文档任意区域。

富文本编辑器

编辑器是笔记软件的核心,在接触了众多开源富文本编辑器后,我自己写了一款。我希望编辑器有很高的性能,能轻松渲染大型文档并且流畅编辑;我希望选区更受控,能适应多模态场景并且跨平台一致。开源社区中有许多优秀的编辑器,但满足笔记软件需求的编辑器较少,且稳定性和扩展性无法预期,难以作为笔记软件的底层支柱,为了软件的长远发展,我从头写了一个富文本编辑器。

Web 领域将富文本编辑器分为三个阶段 L0 、L1 、L2 ,其中 L2 阶段的特征是自绘选区和自定义排版,书立的编辑器应该在 L1.5:自绘选区 + DOM 排版。

需要特别说明的是 DOM 渲染并不意味着低性能。

这里有一份 MarkDown 格式的维基语料 https://github.com/artelcoder/wikipedia/blob/main/维基语料.md.zip ,大约 100M ,有 3800 多万字,包含 3000 个子目录,大家可以下载下来(记得解压缩)导入到书立,体验大文件的编辑、滚动、定位、搜索。

DOM 排版还有一个优势是亲和互联网,可以把互联网内容拷贝到编辑器内,并且最大限度的保留排版信息,如下图是将微信公众号内容拷贝到书立后的样子,原文网址可供参考 https://mp.weixin.qq.com/s/lopwSbBNqmV3FnB4JluKWw ,你也可以自己试试。

自研编辑器花费了大量时间和精力,总体来说是值得的,自研让软件更可控,未来产品演化也有了一个坚实的基础。

块编辑菜单

在编辑区输入 / 即可唤起块编辑菜单,使用方法和普通块编辑器一致,书立的块编辑菜单能力可以相互叠加,为一个块添加无序列表样式后,还可以继续为这个块附加一个折叠列表的样式,生成一个可折叠的无序列表。大纲也是一种块类型,支持叠加样式,按照上面的方法可以生成一个可折叠的任务大纲,做一些简单的任务管理。

本地优先

书立提供网页和客户端两种产品形态,并且都可以离线访问。客户端数据落盘在本地文件夹,网页端数据存放在 IndexDB 中,双端都提供导入导出功能,目前提供以下三种文档格式 .sli (已完成),.md (导入已完成,导出开发中),.html (开发中)。导入导出的粒度可自由控制,单次导出的内容可以是文档的一个章节,也可以是整篇文档,也可以是多篇文档,导入同理。

WebDAV

不同于大部分笔记软件对 WebDav 的简单适配,书立在产品层面内置了 WebDAV ,提供多笔记空间管理和多 WebDAV 配置管理,可以为一个笔记空间配置多个 WebDAV ,也可以为多个笔记空间配置一个 WebDAV ,还可以按照各自的同步需求选择实时同步、手动同步、定时同步等。多笔记空间多 WebDav 配置能够最大限度利用云端空间,也可通过多重备份确保数据安全可召回。

书立仿照 git 模式为笔记空间添加了一些简单的更新提示,按不同端的更新时机,有三种不同的更新状态:上传、下载、更新。上传即本地有改动需上传,下载即远程有改动需下载,更新则表示本地和远程同时出现了变更,针对冲突场景目前策略是选择最近的更新。

为什么要开发书立

我曾就职于一家公司的效率工具开发团队,多年来常思考一个问题:为什么文档团队要维护一个孱弱的表格,而表格团队又要维护一个孱弱的文档,为什么文档里的小表格不能是一个表格,表格里的小文档不能是一个文档。由此延伸出更多的问题:为什么文档里的导图不能继续加表格,为什么文档里的代码不能继续写文档......

我希望开发出一款架构统一的笔记软件,拥有出众的性能,强大的编辑能力,文档里的表格不输表格,表格里的文档不输文档,可以在文档里写真正的导图,可以在代码里写真正文档。

计划

书立目前规划到 2.0 ,1.0 版本工作重心是编辑和跨平台,2.0 版本工作重心是信息处理和智能生产,长期目标是打造一款个体知识管理助手。

欢迎大家多多使用,多提意见。当前推出的功能永久免费使用。关于书立的产品路线和商业计划可去官网查看。

感兴趣的小伙伴可以加入社群交流,QQ 群号:435023648 ,群二维码:

3842 次点击
所在节点    分享创造
65 条回复
xiaoz
19 天前
目前只有 Windows 端吗?多平台和移动端大概什么时候能上线呢?
xiaoz
19 天前
markdown 支持好像不是很好,比如插入代码:
```bash
xxx
```

或者代码块的时候`code`,编辑器无法自动识别?
xcodeartel
19 天前
@xiaoz 代码块还在开发中,暂时可以先拷贝 VSCode 里的代码进来,书立可以识别 VSCode 的代码高亮。
xcodeartel
19 天前
@xiaoz Mac Window Linux 都支持的,会根据不同平台下载指定安装包
liuweifeng
19 天前
支持一下~
xiaoz
19 天前
@xcodeartel #3 ,好的,希望尽快支持代码块,对程序员来说是刚需。OP 加油,看好书链。
我写文章帮你推一推。
xcodeartel
19 天前
@liuweifeng 我的天,你竟然在看 😂
cunjieliu
19 天前
不错,挺厉害的
xcodeartel
19 天前
@xiaoz 软件名字叫 “书立”,感谢支持 😁
xiaoz
19 天前
反馈一个 BUG ,添加 WebDAV 的时候,服务器地址栏那里,我手动输入,如果域名带有字母 f ,会自动触发搜索框,导致无法输入,估计是和软件内置的什么快捷键冲突了。
keethebest
19 天前
挺不错的 希望能尽快支持移动端
xcodeartel
19 天前
@xiaoz 感谢反馈,我修复一下
xcodeartel
19 天前
@keethebest 今天过后就着手开发移动端了,敬请期待!
V4Exp
19 天前
支持,一直想找个软件替换 MyBase
iFlicker
19 天前
提一个建议,可不可以给笔记空间设置密码(变相实现多用户)这样在存在 nas 上的时候可以多人使用
jonsmith
19 天前
相比 Obsidian ,有什么特色功能?
royalknight
19 天前
输入/后的菜单,按方向键不好使
fengbjhqs
19 天前
不是说好,富文本是前端的天坑吗,
xcodeartel
19 天前
@royalknight 你好!是按上下两个方向键无法定位子菜单吗?请问用的是什么浏览器和系统?
xcodeartel
19 天前
@iFlicker 👌🏻我记一下这个需求

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1075866

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX