链滴笔记路线图

设计原则

v1

第一版主要目标是完成笔记应用基础功能,实现单机离线可用。

用户界面

分为三栏,参考有道云笔记:

功能导航

通过 double shift 弹出功能搜索导航对话框:

不做菜单导航,所有功能入口均通过搜索导航实现。

图片/文件

使用本地绝对路径,文件由用户自己组织管理。

配置项

元数据

v2

第二版的主要目标是更好看的界面以及接入 B3log 分布式社区,实现分享互动。

用户界面

多主题切换,实现暗黑主题。

接入社区

作为 B3log 分布式社区的笔记端节点接入社区网络,实现文章推送和评论互动。

导出站点

支持生成导出静态站点,包含多款主题。

编辑器

实现 Typora 保留 Markdown 标记符的实时渲染模式。

架构设计

欢迎参与讨论,让我们一起来打造一款好用的 Markdown 笔记应用!

4 操作
88250 在 2020-01-30 11:24:43 更新了该帖
88250 在 2020-01-30 11:18:43 更新了该帖
88250 在 2020-01-24 14:28:26 更新了该帖
88250 在 2020-01-24 14:27:56 更新了该帖

赞助商 我要投放

优质回帖
  • HaujetZhao 1 2 赞同

    (以下评论已经同步到 vditor 和 链滴 的 issue,希望采纳)

    对图片管理问题,可以使用 textbundle(它是基于文件系统的,不是私有格式封装)。

    一直以来,md 文档插入图片都是问题:

    • 用图床链接,不稳定
    • 用本地文件链接,容易丢

    这也是我在用 md 做记录时候的烦恼。

    不过,Marked 开发者和 Ulysses 团队开发出了一种解决方法,就是 TextBundle,简要解释一下,它是这样的结构:

    一个叫 文档.textbundle 的文件夹,内包含:

    • 一个 assets 文件夹,用于存放图片等附件
    • 一个 info.json 文件,用于存放相关的元数据
    • 一个 text.md 文件,用于存放文档内容。文档通过相对路径引用 assets 文件夹内的图片和其它媒体文件。

    可以实现一个文包内,既包含 md 文档,也包含图片,预览时无需询问权限,同时又方便直接编辑,非常便捷。

    每一个文档都存储在一个 textbundle 中,这样,即便导出,复制到其它设备、平台上,都可以用各种 Markdown 编辑器打开文档,正常浏览里面的图片。

    Ulysses, Bear 这样的流行的写作工具,甚至是 Mindnode 等思维导图工具,都支持 textbundle。

    如果支持 textbundle 格式。那么我们在快速写作的时候,就可以更加安心。因为我们确认所有的创作内容都可以方便导出带格式、带图片资源版本,轻松在其他专用工具中进一步加工。

    这里是 TextBundle 的 官网详细细节

  • DASHU 1
    1. 比起使用数据库来存储数据,文件确实轻量很多。但是使用文件存储的话,以后如果要做复杂业务(团队笔记等方向)就尴尬了。
    2. 文件存储确实爽,但是怎么做高可用?
    3. 笔记系统是不是可以考虑搞个的版本控制。
  • yoss 1

    WebDAV 感觉很强大啊,以前没怎么接触过,等你产品上线我一定试试看,真令人期待!

49 回帖
请输入回帖内容 ...
  • scvoet

    几天前才吐槽完编辑器,现在大 D 又打算自己写了(兵贵神速啊

    1 回复
  • 88250

    哈哈,随着 Vditor 的日趋完善,该着手实现应用了,估计第一季度可以完成 v1。

  • DASHU 1
    1. 比起使用数据库来存储数据,文件确实轻量很多。但是使用文件存储的话,以后如果要做复杂业务(团队笔记等方向)就尴尬了。
    2. 文件存储确实爽,但是怎么做高可用?
    3. 笔记系统是不是可以考虑搞个的版本控制。
    1 回复
  • 88250

    链滴笔记的定位是给个人使用,不做格式封装也是考虑到要让用户可以随时选择其他笔记应用。版本控制暂时没有考虑,如果以后有人需要了再看下 WebDAV 相关扩展,实现版本控制应该不是大问题。

  • yoss

    请问支持多端同步吗?比如公司电脑和家里电脑如何保持数据同步,另外是否有计划出个手机 APP?

    1 回复
  • 88250

    数据同步方面不用考虑,因为 WebDAV 本身就是为分布式文件存取而生的。用户只要搭建一个支持 WebDAV 的服务端来托管笔记文件就 OK 了,链滴笔记作为客户端连上了以后就可以直接用,不存在同步数据的概念,因为对于数据的操作是面向 WebDAV 接口的,数据本身是 WebDAV 服务端管理的。

    比如多台设备连接到同一个 WebDAV 服务,在一台设备上的操作结果其他设备也可以获取到。另外,对于 WebDAV 的服务端支持是非常广泛的,比如 NGINX、Apache、Cady 这类 HTTP 服务器可以通过简单配置就能够支持伺服,所以对用户来说要搭建一个多端同步的笔记服务不是难事。

    可以这样来看,用户需要的“数据同步的结果”,所以只要数据是集中管理的,也就不存在非要分发同步了。客户端连接上服务端后,天然就是“同步”的,这也是链滴笔记要基于 WebDAV 来实现的原因 😄

    1 回复
  • yoss 1

    WebDAV 感觉很强大啊,以前没怎么接触过,等你产品上线我一定试试看,真令人期待!

  • Hawkpool

    话说,有个叫 gitnote 的玩意,好像也挺不错的

    1 回复
  • 88250

    感谢分享,GitNote 使用 Git 仓库作为存储的思路确实不错,解决了版本管理问题。

  • zc

    有么有可能加上思维导图的功能

    1 回复
  • 88250 1

    收到,我们会尽量增加编辑器特性的。

  • PeterChu 1

    说下我自己用的笔记吧,基本上就是简单的这个浏览器插件自带的一个笔记工具,能够通过 Google 账号、插件账号可以实现云存储,且个人感觉基本够用,而且简单方便。至于其他云笔记都有申请过账号,但是几乎不用,甚至下载到手机上的 app 也没咋打开过,可能是个人习惯。

    因为,一个是没什么需要郑重其事用手机去如此去记录,如果有,一般都会还是直接用纸笔记录,方便整理思路、画图示意,且可观性较小屏幕、显示器等方便,然后如有需要,可以在进行整理记录到电脑上的文件中。

    二是,这个插件笔记,自己习惯上比云笔记此类产品简洁方便,更加随意记录,重点还是轻量。重量的应用暂时用不到。

    个人的一点思考:

    1. 轻量向:可以参考该模式,浏览器插件、新标签入口,方便快捷,可离线,可上云。个人比较喜欢不需要进入某个线上平台。
    2. 重量向:看了下有道云笔记、已经用过点的语雀,都有挺好的功能设计,挺不错,不过没深入探讨过。

    插件链接:Infinty(Pro)

    1 回复
  • 88250

    感谢思路扩展,浏览器插件确实也是跨平台的哦。链滴笔记应该是重量向,后期会考虑接入社区分享讨论。

  • hefeng

    习惯了在 Typora 上写 Markdown 后就再也回不去了,感觉其他编辑器都太弱了。期待 D 大早日实现 Typora 类似的编辑方式,估计会很难吧,否则早有大把大把的开源实现了,加油加油。

    1 回复
  • 88250 1 1 赞同

    今年内 Vditor 会实现类似 Typora 的实时渲染模式,难是有点难,但使点劲还是能做到的 😅

    关于所见即所得 Markdown 编辑器的讨论

    1 回复
  • PhzCode

    w 文章摘要书写有 bug,就如你现在看到的这个一样诶,。eiezhe'ge'yi'yzhe'ge'yi'yzhe'ge'yizhe'ge'yzhe'gezhe'ge'yzhe'ge'yizhe'ge'yizhe'ge'yzhe'gezhe'ge'yzhe'gezhe'gzhezhzdedkan'daokan'dakan'dkankakxian'zaixian'zaxian'zxianxiaxixxian'zi'anxian'ziaxian'zixian'zxianxiaxixninjiu'rujiu'rjiujijjujbu'gbubyouyoyshu'xieshu'xishu'xshushszhai'yaozhai'yazhai'yzhaizhai'xzhai'xizhai'xiezhai'xizhai'xzhaizhazhzwen'zhangwen'zhanwen'zhawen'zhwen'zwenwe

    1 回复
  • 88250

    你说的是哪个项目?

    1 回复
  • PhzCode

    没有特定哪个项目吧,正好主页看到你的帖子了,就进来问你啦。solo 博客后台编写文章后的时候写摘要就出现了这个问题。wen'twenwewzhe'gezhe'gzhezhzchu'xian'lechu'xian'lchu'xianchu'xiachu'xichu'xchuchcjiujijzhai'yaozhai'yazhai'yzhaizhazhzxiexixshi'hshishsdeddedhouhohwen'zhangwen'zhanwen'zhawen'zhwen'zwenwewbiabn'xiebia'b'n'xibiabn'xbiabnbia'bbiabibhou'taihou'tahou'thouhohbo'kebo'kbobbbibiobibsolosolsoswen'ni'lawen'ni'lawen'ni'lwen'niwen'nwenwewjin'laijin'lajin'ljinjijjiujijmm'jm'jim'jium'jim'jmleltie'ztie'zatie'zaitie'zatie'ztietitni'deni'dninkan'daokan'dakan'dkankakzhu'yezhu'yzhuz'hzzheng'haozheng'hazheng'hzhengzhenzhezhzbabxiang'muxiang'mxiangxianxiaxixna'gena'gnante'dingte'dinte'dite'dtetmei'youmei'yomei'ymeimemmum

    1 回复
  • 88250

    感谢反馈,请问你用的浏览器是 Chrome 么?

    2 回复
  • PhzCode

    我刚刚用的是 Safari,现在用的 Chrome

  • PhzCode

    Chrome 不会存在追加一些字符的情况,但是两个浏览器在进行回复编辑的时候,编辑框的光标显示,都右移了接近十个字符的距离。

    1 回复
  • 88250

    嗯,编辑器目前暂时仅支持 Chrome。两边留白是正常的,因为所见即所得模式不需要分屏,这样设计感觉更舒服一些。

    1 回复
  • PhzCode

    hhhh,好吧,强迫症专属 bug。😂

  • zc

    现在能用了吗?想试试 😳

    1 回复
  • 88250

    还在开发中,预计这个月下旬发布第一版。

    1 回复
  • zc

    ok 期待。。。

  • cxgreat2014

    忽然发现博主的风格和 farbox 项目的制作人挺像,哈哈

    走的都是高颜值、高技术路线开放性产品

    2 回复
  • hefeng

    几年前我也关注过 Farbox 一阵子,这个项目似乎已经停止了,有点可惜。

  • 88250

    Farbox 也是挺好的一个产品构思,通过网盘同步数据并做统一集中式渲染伺服。这个路线的难点是绑定域名以及带宽支持,我觉得这部分还是由现成的服务(Pages)来实现比较稳定些。

  • darren

    一直就想肯定会有基于 vditor/lute 的本地 md 工具出现,没想到来的这么突然,哈哈哈

    后期会考虑改用非 electron 形式吗,比如 electrino 或者 macgap 亦或者是直接使用系统自带的浏览器来渲染等?

    感觉现在体积好大哦

    1 回复
  • 88250

    由于需要管理文件系统,所以单纯靠浏览器和 HTML API 似乎无法实现,如果只是渲染的话应该没问题。随着项目发展,功能也会逐渐变多,实现上会变得比较复杂,所以就单独用 golang 做了个内核进程来处理这些繁杂的事情。

    包体积估计不会怎么变化了,100M 以内应该都能接受吧……

    1 回复
  • darren

    嗯,是的,如果考虑后续的功能更新和迭代的话确实不能图一时的眼前利益。

  • lb091188

    笔记的设置能否做一个缓存功能,例如打开上一篇文章开启了大纲模式,后面那篇文章还需要重新开启大纲模式,这个操作就有点费时了

    1 回复
  • 88250

    感谢反馈。如果加个配置项“是否默认展示大纲”是否会更好些呢?

  • lb091188 1

    这种方式可以的,同时期待静态站的呈现

  • lb091188 1
    该回帖仅作者和楼主可见
    1 回复
  • 88250

    感谢反馈 @Vanessa

  • ferried

    需要 VIM

    1 回复
  • 88250

    抱歉啊,暂时不加了 https://github.com/88250/liandi/issues/55

  • HaujetZhao 1 2 赞同

    (以下评论已经同步到 vditor 和 链滴 的 issue,希望采纳)

    对图片管理问题,可以使用 textbundle(它是基于文件系统的,不是私有格式封装)。

    一直以来,md 文档插入图片都是问题:

    • 用图床链接,不稳定
    • 用本地文件链接,容易丢

    这也是我在用 md 做记录时候的烦恼。

    不过,Marked 开发者和 Ulysses 团队开发出了一种解决方法,就是 TextBundle,简要解释一下,它是这样的结构:

    一个叫 文档.textbundle 的文件夹,内包含:

    • 一个 assets 文件夹,用于存放图片等附件
    • 一个 info.json 文件,用于存放相关的元数据
    • 一个 text.md 文件,用于存放文档内容。文档通过相对路径引用 assets 文件夹内的图片和其它媒体文件。

    可以实现一个文包内,既包含 md 文档,也包含图片,预览时无需询问权限,同时又方便直接编辑,非常便捷。

    每一个文档都存储在一个 textbundle 中,这样,即便导出,复制到其它设备、平台上,都可以用各种 Markdown 编辑器打开文档,正常浏览里面的图片。

    Ulysses, Bear 这样的流行的写作工具,甚至是 Mindnode 等思维导图工具,都支持 textbundle。

    如果支持 textbundle 格式。那么我们在快速写作的时候,就可以更加安心。因为我们确认所有的创作内容都可以方便导出带格式、带图片资源版本,轻松在其他专用工具中进一步加工。

    这里是 TextBundle 的 官网详细细节

    1 回复
    1 操作
    HaujetZhao 在 2020-05-24 15:54:46 更新了该回帖
  • 88250

    业界通用的打包格式确实很有用,稍后我会进行学习并进行支持,感谢你的建议 👍

    1 回复
  • HaujetZhao

    看到评论区有人提到了版本控制问题,我认为 textbundle 可能也可以顺带解决。因为它有一个 info.json 文件 ,这里面可以填写各种元数据,比如可以把旧版本文档放到 assets 文件夹,再把版本相关信息放进 info.json 里面,后期就可以根据 info.json 里面的信息进行版本控制。

    1 回复
  • 88250

    版本控制暂时不在计划以内,等以后再进行扩展,谢谢建议。

  • wywzxxz

    如何进入软件的首选项呢?。菜单栏和托盘里都没有进入首选项的选项。我想切换成黑暗主题,文本编辑器里的内容主题预览光改变字体颜色不改变背景颜色

    1 回复
  • 88250

    连按两下 shift

  • YLongo

    image.png

    对于这种格式,我能想到的比较方便的操作方式就是,换行后,按一下 Tab 键,变成二级列表,然后再按删除键。但是个人觉得这种方式太麻烦了。

    不知是否有更方便的操作方式,或者类似 Typora 那种,换行后,按删除键就可以达到这种效果。

    1 回复
  • 88250 1

    shift + enter

请输入回帖内容 ...