一个日记APP包含四种编辑器,也是实属罕见了。湾湾日记在2.5.0版本加入Markdown编辑器后,就有4个编辑器了。
当然这4个编辑器是一个一个加上来的,湾湾日记第一版发布的时候只有第一个编辑器,就叫它标准编辑器吧。后来几个版本后才加入了聊天模式(今日记录)编辑器。不过聊天模式编辑器在一开始设计这个APP的时候就已经有,只不过是第一版的时候还没开发完就没放出来。这两个编辑器是一类编辑器,整体结构是一致的。第三个编辑器是富文本编辑器,是2.4.0版本加上的。第4个事markdown编辑器,2.5.0版本加上的。这两个编辑器是专为那些有文字排版需求的用户设计的。
做这么多编辑器,主要还是为了让用户方便容易些日记。希望能做一款好用的日记APP。
一·标准编辑器
标准编辑器是一个组合控件结构,支持文本/图片/视频/语音/地理位置以任意形式混排。他本质是以文本输入框控件+其他自定义控件按顺序排列下来的方式。新建日记时会默认插入一个文本控件,然后你选取图片将会在文本后面插入图片,并且在图片后面新增一个文本控件。插入视频或语音也是一样处理。这样做的好处是方便扩展,可以插入任何想要的内容。例如以后想要增加插入文件,可以扩展出一个文件控件就行。标准编辑器还支持基本的文字排版功能。
标准编辑器是最强编辑器,功能最全的编辑器,有着别的编辑器没有的功能。例如加入图片时会自动解析EXIF信息,如果照片的拍摄日期和地点跟当前日记的日期地点不同,会提示是否覆盖日记的日期和地点信息,从而达到补写日记的功能。
二·聊天模式(今日记录)编辑器
这个编辑器的架构模式跟标准编辑器是一样的,不过它做成了聊天模式的界面。而且更紧凑些。
之所以加入这样一个模式,是因为我脑子里经常有一闪而过的想法想快速记录下来。这时候不需要长篇大论,就像发个消息一样简单就行。最佳场景是直接录一下语音就行。一天中可能有多种这种时刻,我希望这些内容第二天能自动归档为一篇日记。这就是这个模式的由来。
这个模式下的日记还有一个地方,就是它是一个置顶日记。这样也是为了快速打开增加内容。第二天它就不在置顶了。
三·富文本编辑器
富文本编辑器是一款好用的日记APP必不可少的功能。Day One的编辑器就是一款富文本编辑器。湾湾日记使用的是flutter版quill编辑器,做前端开发的可能知道quill编辑器。网页上很多富文本编辑器就是采用这个。
展开专业编辑器,有一些专业的排版功能。
这个富文本编辑器很强大,但也很复杂,基本支持了大部分文字排版功能。但是这个库仍然快速更新当中,不太稳定。目前我只放出了部分排版功能,做了很多修改,让它跟湾湾日记结合得更好。以后会增加更多的功能。
四·Markdown编辑器
Markdown编辑器是一个高级编辑器,可能有些用户根本不知道这是什么,但是这个编辑器在互联网从业人员中有很多人使用。所以我也就加上了。
这是编辑状态
这是查看状态。
我为这个编辑器也加了一些自定义功能,估计是手机日记APP中做的算比较可以的?例如加入了插入本地照片,也可以拍照插入图片。很多Markdown编辑器是不支持插入本地图片的,只能插入图片链接。另外我也加入了插入清单checkbox的功能。目这个用这个编辑器写的日记时可以导出为markdown文件的。
编辑器应该是日记APP最核心的一个功能之一了。湾湾日记会继续优化这些编辑器,让它成为一款好用易用的日记APP。