写了个软件叫GitoNikki
2024-11-16 10:14:34

是我,我又来了。

上次说到我要想要搞一个系列,苦于并没有一个合适的工具供我创作和记录日记。
于是我尝试了去写一个微信朋友圈一样的东西,来发表日记。还是用Qt/Qml去写,最终我失败了。
我很痛苦,因为我又一次失败了。但是没关系,我可以在心血来潮的时候再次挑战,没错,我又来了。

目标:简单好用。

确实,简单好用,这样一个东西对我来说看起来并不费功夫。但是还是付出了不少时间和心血。
由于心血来潮的原因,也给我了不少的激励。最终在昨天晚上我将gito-nikki发给了要好的朋友们。
真的不是想让他们做小白鼠,而是体验开发出来的作品。嘛,对于我这样的职业lu码人,那就是我的目标。
gito-nikki

如图中所描述,gito-nikki是加密保存的,还可以同步数据库文件到坚果云。恰好满足了我加密和移动存储备份的需求。当然它支持markdown语法,可以写出来很好的版式。甚至还可以将想要公开的日记导出成pdf或图片,打印,装订成册。就像这样。

gito-nikki版式

规避纸质日记容易被偷看的风险,专注写自己的秘密。(我没有什么秘密。)

如何使用

接下来按照功能划分分别详细介绍使用

安装

我有提供一个安装包,1.0.0版本的,可以下载安装下载
坚果云gito-nikki安装包

直接打开zip安装,最多改一下解压路径即可。安装后,打开运行时可能会碰到

由于找不到VCRUNTIME140_1.dll,无法继续执行代码,重新安装程序可能会解决此问题。

这个是因为你的运行环境中缺少windows的运行时库,下载安装一个微软运行时库合集即可。现在已经更新到比1.0.0更高的版本。如果你发现你不能够自动升级,是因为你没有安装ssl支持库。因为版本验证和更新都是使用了https接口(传输加密)。下载安装后重新启动gito-nikki就会自动升级到最新版本了。

功能分区

gito-nikki主要分为了三个区域,日历区,菜单栏和工具栏区,状态栏区,以及编辑区。具体像下面这个样子。

HyCcqO.md.png

日历区

由上至下地介绍,

日历区主要给出一个日历,用来选择你所想要浏览的某一天的日历。只需要点击你想要查看的日期,即可显示在那天你所写的日记。

日期与天气,显示你当前所选择的是日期是哪一天,以及那天的天气状况如何。

再往下是日记树,日记树是用来完整地展示你在哪年哪月写了日记。以年为顶端节点,年内的日期为分支节点。暂时还不能通过日记树来选择日记。

最后是三个日记浏览按钮,分别是<<^>>。这三个按钮的分别的功能是,显示往前日期的一篇日记,当前日期的日记,往后日期的一篇日记。

菜单栏

文件,主要是针对文件的保存,同步,设置功能

编辑,主要是针对编辑区域的操作,例如选择,复制,剪切,粘贴等常用常见功能。

窗口,主要是针对一些特殊的功能的选项。例如:预览日记功能,冥想盆,西弗勒斯之泪等。

账户,主要是针对账户操作的一些功能。例如:注册,恢复账户,修改账户当前的密码,解锁上锁日记账户,日记记录的统计。

关于,主要是GitoNikki更新的功能介绍,以及开源证书。现在还没有把证书放上去。

工具栏

工具栏主要是放上了一些常用的菜单栏中的功能,方便操作。

状态栏

状态栏会显示当前日记的状态,如统计的字数,日记是否已经保存等状态。

常用功能介绍

这里我会列举一些常用的功能,方便理解。

GitoNikki到手之后,可以通过账户菜单去注册,注册时按照合适的信息进行填写即可。包括修改账户密码,解锁和上锁日记等,我相信这些你都会了。主要想要解释的是,关于同步功能,因为实际上这个还是我花了不少时间去折腾。

GitoNikki现在使用的备份仓库,主要是坚果云。为什么选择它,我有几个理由:

  • 每个月免费上传1G的流量可以使用,我相信你每天写日记不会写那么多。
  • 支持wevdav,代码上写起来比较方便。
  • 都是加密存储日记文件,所以比较安全。

使用同步,可以直接按工具栏的同步备份按钮,或者Ctrl+B。同步功能的窗口。

Hy3Ueg.md.png

此处需要填写坚果云的账号和应用授权码。

Hy376K.png

如图中所示,你可以通过这样的操作,到坚果云中获取所需的账号和授权码。填写完成后,在GitoNikki中点击连接按钮。如果连接成功,左下角会显示已连接到仓库。左右的文本框内会显示需要上传和下载的数据文件。GNP表示冥想盆的数据,GND表示日记数据,GNU表示用户账户数据。然后点击同步按钮,此时就会开始进行上传下载动作,等到同步进度条跑完,即完成了同步。再关闭同步窗口即可。同步完成后,你也可以通过坚果云的网站和客户端,下载你同步好的文件,用记事本打开来康康是否已加密。

有时候会觉得要反复填写仓库账号和密码很麻烦,那么可以在文件->设置中填写好坚果云的账号和授权密码。然后点击应用,再重启GitoNikki,下次打开同步,你就会发现已经自动填充好了账号和密码。设置里面还有设置语言的,现在支持中文和英文,可以在线切换以支持国际化。设置的信息被保存在exe同级目录下的GitoNikki.settings文件内。

GitoNikki的编辑器,支持Markdown格式,所以我们可以使用Markdown的排版。实际上GitoNikki的编辑器不仅仅支持Markdown,还可以支持更多的格式。但是在文件->打开选项里面仅仅支持Markdown。对于日记的内容,是以文本按照AES加密后的方式存入sqlite数据库中的。保存内容,按快捷键Ctrl+S,其他编辑的快捷键也和大多数操作系统的使用习惯保持了一致。如Ctrl-X表示剪切,Ctrl+V表示粘贴,Ctrl+C表示复制。这个编辑器可以在工具栏中查看到编辑器字体放大和缩小功能,因为考虑到可能的用户会有使用不同大小字号来编辑的需求,快捷键就是Ctrl+滚动鼠标中键,我觉得蛮方便。

日记保存有个限制,就是你只能保存当天的日记,一旦过了23:59:59,今天就算过完了,你就不应该再保存今天的日记,哪怕你从23:59写日记写到第二天的00:15再保存,你也无法再保存今天的日记。所以,今天的日记今天写。:),当然我也可以告诉你如何修改昨天的日记,有好几种方法,简单的就是回调操作系统的时间,复杂的就是修改数据库的时间或者先解密日记再加密保存数据库。日记的数据库文件位于exe统计目录下的你的账户同名的文件夹内。名叫gito-nikki.db。你可使用一些数据库工具打开来观察你的日记内容是否已经被加密。

不管是今天和以前的日记,你都可以预览。预览会给你显示一个比较美观的排版,这个排版的格式就是借用的某个计算机界名人博客的排版格式。我擅自再在这个排版的格式上加上了日期、天气、以及落款水印。预览在工具栏中也有快捷按钮。也可以使用Ctrl+P快速打开预览窗口。在预览窗口中,你不可以进行任何的编辑操作。虽然它本质就是个浏览器【chromium】,而且你想要修改排版格式也可,但是我并不建议这样做,因为需要修改exe中的某些字符串。

在预览窗口打开的时候,你还可以选择按照当前的预览格式和内容生成pdf和图片。我建议生成图片,大家给我的反馈是,图片比pdf漂亮。然后你就可以把这些图片或者pdf打印出来装订成册。当然,这是在你愿意公开分享某些日记的前提下。我是不愿意的。哈哈。如果你想把日记的图片分享给某个人,你可以通过内置的邮箱分享器【西弗勒斯之泪】去做这个事情。生成的图片和pdf都是在exe同级目录的png和pdf目录内。

西弗勒斯之泪来自于哈利波特的那个人物,被汤姆的蛇咬了之后,哈利去用透明管子接住了西弗勒斯的眼泪,倒进了冥想盆里面。所以我取了这个名字,作分享自己的记忆结晶之意。这个功能可以使用163邮箱或者qq邮箱。我接下来讲一下这个功能的使用方法。
HyKrA1.md.png

功能界面如上图所示,

  • 发件地址,填写你的QQ邮箱或者163邮箱地址。
  • 密码,填写你的163邮箱或者QQ邮箱的授权密码。
  • 发件人名,填写你的网名,真实姓名,都可。
  • 收件人名,填写你的分享对象的网名,真实姓名,都可。
  • 收件地址,填写你的分享对象的邮箱地址。
  • 标题,填写你分享的这封邮件的标题。
  • 附件,点旁边的浏览按钮,选择你要分享的日记图片或pdf,通常按下浏览按钮后会主动跳转到你生成日记图片的文件夹内。
  • 调试选项,如果勾选了调试选项就会在下面的文本框里显示一些log信息。
    完成以上的信息填写后,点击发送按钮即可发送。

除了,西弗勒斯之泪以外,你还可以看到在窗口菜单下,还有个功能是冥想盆。其实你读过哈利波特这本书,你也能很快明白。没错,就是邓布利多的冥想盆。通过魔杖从脑子里面抽出记忆线条,放入冥想盆中。当你想要回忆这段记忆的时候,你可以把头埋进这个里面进行回忆。
HyQuZj.png
所以你可以知道冥想盆的作用,它就是真实地、忠实地记录你所见,所闻,所想。就好像在你的生命中记录了几分钟,然后你可以随时回来进行回放一下一样。区别于普通的日记,是你在日记中可以记录你的事情,所感,所想,一切,every things。在冥想盆中,万一你记录错误了,你可以修改当天放入冥想盆中的记忆条。如何修改记忆条,请点击冥想盆中的”?”按钮。我还是再强调一下,冥想盆也只能和日记一样,只能修改当天的。

致谢和祝愿

最初我的愿望只是写一个日记软件自己用,后来跟かりん分享了我在做这么个东西。算是一拍即合吧,约好的是8月15号发布,没想到还提前了。到现在已经维护了半年了,虽然最近更新频率降低了。还是蛮开心。后来我继续分享了gito-nikki出去,冬冬和谢行长也开始用了。其实我是很想有人能够喜欢使用gito-nikki,因为它是我的一个可以说是想了很久的想要存储记忆的结晶。把自己的记忆存下来,在这个世界留下属于自己的痕迹。祝愿朋友们快乐,回想自己的记忆的时候,是温暖的!

皆,ありがとう!