搭建非线性个人网络笔记本——Tiddlywiki

TiddlyWiki是笔者从去年上半年了解到的知识管理工具,特点是功能丰富、开发活跃、自定义程度高,不过这也是它的缺点——有一些知识管理爱好者的确无法接收如此多用不上的功能,对于他们而言,只想好好记个笔记,那么这的确不是TW的受众,我个人非常喜欢使用TW,也使用它配置了自己的公开数字花园网站,学习安装、使用和部署的过程只能说是十分陡峭,而TW的文档恰恰又不够细致,教程对于很多用户来说更多的是解决基本问题,如果在部署过程中出了错,并没有详细的说明,那么,今天笔者就将个人的经验与TW使用的教程结合起来,便于读者理解和解决问题。

此教程主要针对NodeJS版Wiki,单文件版我目前用来部署网站,之前一直在使用,也会提一提。

为什么使用TiddlyWiki?

这个问题应该会有无数种答案,正如我开头时所说,它的特点是“功能丰富、开发活跃、自定义程度高”,但这样的话实在有点空,如果让笔者个人来说,那就是——有趣。

在TW中,你可以像搭积木一样在你的Wiki中运用各种姿势展现条目,非常方便地实现条目管理和复用,你可以在Wiki首页建立一个你认为有趣的条目的目录,也许是折叠,也许是侧边栏,找一个你喜欢的方式放置;你可以在其中回答问题、写日记添加心情表情,使用宏和微件添加许多炫酷又不失实用的功能;你可以通过添加特殊标签和字段插入代码更改Wiki样式,让它成为你喜欢的样子。

还可以用它方便地搭建网站,TW的公开网站现如今已经不少,每个都有自己的特色功能,有些条目众多内容丰富,有些功能齐全模板优秀,有些已经自定义到看不出是TW了。

TW的用途也不仅仅局限于记笔记,虽然开发者创立它的初衷的确是知识管理,但已经有教学用途、购物用途之类,群里甚至有朋友分享过一个老虎机网站,使用TW经典版制作……

TW是个充满可能性的工具,它自己就可以是一种哲学,如果你不看教程就自己琢磨使用的话,这点更是如此,因为你永远也不会知道输入在命令行的内容到底会报出什么样的错误……让人心惊胆战,却又乐在其中,可谓屡战屡败,屡败屡战。

部署TiddlyWiki

嗯,到这里就进入本篇博文的正题了,TW是一个自包含的完整的程序,有两种使用方法:

1.单HTML文件形式

2.Node JS文件夹形式

笔者更推荐第二种方式,可以自动保存,更新插件也更加方便,第一种形式则更加独立,不过它并没有权限覆盖自己,所以每次更新都要将Wiki重新下载一次,有些麻烦。

↑唔,如果是部署网站的话,建议使用后文提到的“太记”使用方式,单文件版是直接上传同步推送到GitHub部署就可以了,如果只是单独Node JS的话,我目前只想到使用TiddlyWeb下载单文件到文件夹,再按照单文件部署的方式去做,的确麻烦。如果这方面有解决方案的朋友可以在博文最后找到我的联系方式,提出你的建议,笔者不胜感激。

日常只是使用的话,确实推荐Node JS。

单HTML文件形式

这个形式使用起来是最简单最没有门槛的,适合新手一点点摸索TW的功能。

下载只需要从TW官网的Getting Started页面(往下滑就可以找到)点击下载按钮,几秒钟就可以下载完毕,在浏览器中打开可以看见开始界面,自由探索,自定义Wiki的标题和描述。

你可以看到下载按钮下方有一些使用方式,其它的先看看就好,这里主要推荐timimi浏览器插件,可以自动保存和备份单文件Wiki,不会弹出下载弹窗。

然后就可以开始使用了,最简单的方法是去中文教程查看各种使用方法,从最简单的做起,比如添加和编辑条目。

如果这样配合着使用TW单文件形式,倒是也挺方便的,不过,timimi已经有些时间没有更新,笔者是因为它的屡次失效1而更换形式的。

Node JS文件夹形式

Node JS是TW的主流使用形式,需要node程序TiddlyWiki作为服务端运行,输入相应命令在指定端口打开(端口也可以自定义的,不过没有冲突的情况下,没什么必要修改)。

首先,下载node到自己的电脑中:

Windows系统: 可以去node官网下载,如果网络问题无法下载,参考网络上有关安装和使用node的其它博文,本博客中暂时没有此内容,也建议学习科学上网;还可以用scoop用命令下载这个环境,不过同样可能会遇到下载失败的问题。

MacOS: 和Windows一样可以去官网下载,也可以在本地使用brew install node命令行下载。

Linux: 使用本地命令行工具下载,不同的系统可能安装方式不一样,最好去搜索一下有无此类文章,Ubuntu可以参考这篇文章。TW GitHub给出的是这样的:

    Debian/Ubuntu: 
    apt install nodejs
    May need to be followed up by: 
    apt install npm
    Arch Linux
    yay -S tiddlywiki
    (installs node and tiddlywiki)

Android: 不建议使用移动端部署TW,但如果你有这个需要,去F-Droid下载termux,按照它给出的下载命令下载node,之后依照后文步骤行动。

安装完毕后在命令行键入node -v/npm -v,如果出现版本号,说明下载成功,可以开始安装TW了。

在命令行键入以下命令:

# 全局安装TW
npm install tiddlywiki -g
# 如果网络问题无法安装可以尝试科学上网或用淘宝镜像安装cnpm之后重新下载
npm install -g cnpm --registry=https://registry.npm.taobao.org
# 使用cnpm下载TW
cnpm install tiddlywiki -g
# 如果出现错误则为权限不够,需要用管理员身份重试
sudo npm install -g tiddlywiki (适用于Mac/Linux)
# 检查TW版本看看是否成功安装
tiddlywiki --version
# 新建Wiki
tiddlywiki mynewwiki --init server
# 启动Wiki
tiddlywiki mynewwiki --listen
# 使用Wiki
访问[本地服务器](localhost:8080/)
开始编辑吧!

到这里,一般来讲,就没有什么问题了,你可以开始使用TW了。

另附上单文件和文件夹相互转换的命令:


单文件转文件夹:tiddlywiki  --load  ./mywiki.html(你的wiki文件)  --savewikifolder  ./mywikifolder(你的wiki文件夹)

文件夹转单文件:请直接使用TiddlyWeb的Save snapshot for offline use.

不过目前我这边使用转换还存在一定的TypeError问题,仍待解决。

TidGi形式

基于NodeJS,比起TiddlyDesktop(官方客户端,注重单文件保存相关),这个中文名叫太记的程序更受中国用户欢迎,操作简单方便,偶尔有bug,TWQ群的群主就是开发者本人,也可以直接去问,大家都很热情,可以帮忙解答(当然,除了太记和TW功能相关的探讨,你问NodeJS部署之类的问题不容易被人回答,所以折腾的话还是尽量去国外论坛)。

太记官网(目前没有官网,现在都是在GitHub更新,Q群946052860也有群友发文件解决各位的网络问题):https://github.com/tiddly-gittly/TidGi-Desktop

不喜欢折腾的用户直接用模板是很舒服的,更新只需要等群主发布就可以了。

缺点就是,偶尔打开会卡并且白屏(我个人使用中出现的问题),一般重启几次会好,不过我更直接的方式是在浏览器打开相应端口,将太记当命令行终端用……

P2P形式(选看)

这个形式来源于烧杯浏览器,一个已经archive的项目,因为TW本身就是去中心化的,所以这样保存和建站十分方便(使用就是在建网站,建完一件发表),这个项目的消逝令我感到有点不甘心,希望他日能由我或者其他的开发者创立这样一个程序。

所以它在这篇博文中留有一席之地。

使用TiddlyWiki

更多教程:

最后一个年份比较长了,可能不会很适用,建议主要观看前面四个。

国内cpl插件库

基本上看了这些个就差不多了,但是考虑到很多人没有这个时间和精力一口气看这么多东西(不过这些其实本来也算是工具书吧?哪里不会看哪里),笔者就尽量简短的说明一下。

新建维基,右上角按钮“+”号是新建笔记的按钮,红色的对勾提醒你保存,点击,如果在没有下载timimi的情况下,会弹出窗口,找个合适的位置下载新文件就是,如果安装了timimi,请在提示保存信息之后看看文件到底有没有真的保存。

那个小齿轮是控制台,也就是调配功能的地方,可以换主题和配色,选择自动保存与否,配置的密度很小,再小的功能其实都可以自定义,不过有些并没有显示在明面上,如果想要更方便点,可以直接向开发者提issue,不过我想大多数新手不会想的那么多。

中文包如何导入?在此请点开官方插件库(控制台plugins→目前只有一个插件库,就是它了),点开language,选择简体中文(五星红旗,简繁请自己认),下载。

之后控制台的字你应该都能看懂了,自己看着配就是,出现JavaScript内部错误请刷新或复制报错内容到GitHub发issue。

自定义内容请前往太微中文教程的“让太微更易用”目录查看。


  1. timimi在笔者开启浏览器一段时间后保存备份会报错,重启浏览器才能解决,不然无法保存,目前还不清楚解决方法。 ↩︎