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

114 天前
 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 ,群二维码:

4482 次点击
所在节点    分享创造
65 条回复
N032138
114 天前
支持,去看看
xcodeartel
114 天前
@royalknight 你好!是方向键聚焦到菜单边界无法自动将视口外菜单滚动到视口的问题吗,已经修复并上线了,感谢反馈!
bequt
114 天前
建议增加 git
xiaoz
114 天前
已推荐,作者加油。

https://blog.xiaoz.org/archives/21356
AlanBrian
114 天前
请问下支持 mermaid 吗?
ldlywt
114 天前
@jonsmith #16 ob 的 ui 感觉设计的很不符合我的审美,不知道是不是只有我一个人这样,每次提不起打开的兴趣
vegetableswim
114 天前
英文网址太像 silly 了
asilin
114 天前
支持付费吗?我愿意付费

之前在 Linux 桌面使用 Cherrytree 作为笔记,迁移到 Windows 后,发现 Cherrytree 并不是原生开发的,而是运行在 Cygwin 上,体验很不好。

而且 Cherrytree 不支持远端部署+浏览器交互,而是一个本地软件,多年来一直想找相关的树状结构笔记软件,奈何没一个能打的。

我觉得目前的“书立”就很满足我的所有需求了!
NavsSite
114 天前
左边即是菜单,又是目录么?用的我怪怪的,时常点进去不知道是一个新的页面还是某个页面中的目录
xcodeartel
114 天前
@asilin 你好,目前推出的功能都是永久免费的,付费功能在官网有列出来,分别是:官方云存储,剪藏,还有 AI 。
asilin
114 天前
@xcodeartel 后期可以支持自建部署+浏览器操作吗?我比较期待这个功能
xcodeartel
114 天前
@NavsSite 这个和普通的笔记目录不太一样,需要适应一下,目录左侧会有标识,直角箭头表示页面,小圆点是大纲,空心圆是没有大纲的页面,三角行箭头表示当前大纲存在子大纲
byc4i
114 天前
出私有化的网页版计划吗?
封装进 docker 里,再加个 oss 定期备份 markdown 的功能。
现在这两年,公司电脑都装了监控软件,不想用本地的。
byc4i
114 天前
@byc4i #33 SaaS 也行,但是我猜可能费用和审查不太好 cover 。
Gotchaaa
114 天前
看着不错,关注一下
zhouyg
114 天前
这个编辑器看起来不错~~
regent
114 天前
加油,希望能成为中国的 Obsidian
iMusic
113 天前
有无只读模式?
xcodeartel
113 天前
@asilin 可以,我在路线图里加一下私有部署
xcodeartel
113 天前
@byc4i 私有化可以搞,我规划规划

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

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

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

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

© 2021 V2EX