个人网络笔记本TiddlyWiki

老苏一个朋友最近跟 wiki 干上了,他跟老苏提了 3 个,分别是 TiddlyWikiMediaWikiBookStack ,虽然在折腾 MediaWiki 时遇到了不少问题,但好在幸不辱命

什么是 TiddlyWiki ?

TiddlyWiki 是一个仅由单个 HTML 文件组成的非网络应用的 Wiki 程序。这个程序仅使用 HTMLCSSJavaScript 技术,完全不需要任何的数据库及动态程序语言。因此任何人皆可以自官方站点下载该程序页面后,即可开始使用。适合一般个人单机的使用和对个人电脑的管理工作。

TiddlyWiki 专为定制而设计,可根据用户的特定需求进行塑造,可以被塑造成广泛且任意范围的特殊应用。包括笔记应用程序、待办事项列表、演示文稿、收藏、创作工具、个人数据库、食谱收藏等。

版本

TiddlyWiki 有 3 种安装方式的版本

  • html 版:这是最简单的版本,就一个 html 文件;
  • TiddlyDesktop 版:这是一个特殊用途的网络浏览器,用于处理本地存储的 TiddlyWiki,基于 nw.js
  • Node.js 版:这是基于 Node.js 搭建的服务器版,用 Docker 搭建的就是这个版本,官网文档中称为 Client-Server Configuration

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 tiddlywiki ,选择第二个 nicolaw/tiddlywiki,版本选择 latest

docker 文件夹中,创建一个新文件夹,并将其命名为 tiddlywiki,记得给目录添加 everyone 的读写权限

不然会报错

1
Error: Error creating directory '/var/lib/tiddlywiki/mywiki'
文件夹 装载路径 说明
docker/tiddlywiki /var/lib/tiddlywiki 存放数据

端口

本地端口不冲突就行,不确定的话可以用命令查一下

1
2
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口
8080 8080

环境

默认情况下,用户名设置为 anonymous 而且无密码,你可以按照需要进行修改

如果您在群晖内存比较小,可以设置 NODE_MEM 指定 NodeJS 可以使用的最大内存(以 MB 为单位)

可变
NODE_MEM 例如设为 400

运行

在浏览器中输入 http://群晖IP:8080 就能看到主界面

安装插件

按照前面的版本划分, node.js 版不能直接使用 TiddlyWiki 官方插件库,只能通过配置文件 tiddlywiki.info 来添加

简体中文

在官方的插件库的 Languages

找到简体中文

$:/languages/zh-Hans

tiddlywiki.info 修改扩展名为 txt ,或者下载到本地进行编辑

tiddlywiki.info 中添加下面这段

对应前面的 $:/languages/zh-Hans

1
2
3
"languages": [
"zh-Hans"
],

本质上 tiddlywiki.info 是个 json 文件,所以语法上遵从的规范是 json

恢复名称或者上传修改文件后,需要重启容器

才能生效

Markdown

在官方的插件库的 Plugins

找到 markdown 插件

$:/plugins/tiddlywiki/markdown

tiddlywiki.info 中的 plugins 中添加下面这段

对应前面的 $:/plugins/tiddlywiki/markdown

1
"tiddlywiki/markdown"

修改完成后需要重启容器才能生效

小结

接下来您可以根据自己的需要安装插件,将 TiddlyWiki 打造成自己的专属应用。当然插件不是越多越好,一方面要考虑程序会不会变得臃肿,另一方面也要考虑未来的兼容性。

老苏个人觉得入门并不难,但是要用好还是有点小门槛的。

参考文档

Jermolene/TiddlyWiki5: A self-contained JavaScript wiki for the browser, Node.js, AWS Lambda etc.
地址:https://github.com/Jermolene/TiddlyWiki5

Installing custom plugins on Node.js: TiddlyWiki — a non-linear personal web notebook
地址:https://tiddlywiki.com/static/Installing%2520custom%2520plugins%2520on%2520Node.js.html

TiddlyWiki 舞 — 基礎文件正體中文版
地址:http://tw5-zh.tiddlyspot.com/

Jermolene/TiddlyDesktop: A custom desktop browser for TiddlyWiki 5 and TiddlyWiki Classic, based on nw.js
地址:https://github.com/Jermolene/TiddlyDesktop

tiddly-gittly/TidGi-Desktop: TidGi is an auto-git-backup, privatcy-in-mind, freely-deployed Tiddlywiki knowledgement Desktop app, with local REST API. 「 太记 」是一个基于「 太微 TiddlyWiki 」的知识管理桌面应用,能自动用Git备份、保护隐私内容、部署为博客,且可通过RESTAPI与Anki等应用连接。(迭代开发中欢迎试用,开发进度见下方链接,点 Watch 里面选 Release 可以在更新修复的时候收到通知!)(Under active development, see website below for details, click Watch and select “release” to get update!!)
地址:https://github.com/tiddly-gittly/TidGi-Desktop