一直在寻找称心的笔记工具,前段时间接触到tiddly wiki,觉得很是不错。因为并非完美的开箱即用,使用过程中还是遇到一些问题,其中一些找到了好的解决办法,有一些实在解决不掉,无奈最终弃坑。
自动保存#
官方提供了很多的保存选项,却实在没有一个真正优雅,要装浏览器插件,装客户端,甚至还有装浏览器的……
nodejs版勉强能用,实时保存效果极好,但有两个缺点:
- 文件分散
- 安装插件的页面刷不出来,只能靠改配置文件或者去找别人的拖过来。
1
2
3
4
5
| npm install -g tiddlywiki
tiddlywiki --version
// 5.1.23
tiddlywiki mywiki --init server
tiddlywiki mywiki --listen port=1337
|
最终找到一种比较满意的保存方式。
参考 jimfoltz/tw5-server.rb 脚本略作修改,监听localhost,去除日志。
- 将以下文件保存为
/path/to/wikiserv.rb
,配置root
和BACKUP_DIR
的值,并把wiki.html放到root
对应的目录下。 - 建个软链接
ln -s /path/to.wikiserv.rb ~/wiki
- 在home目录执行
ruby wiki&
,访问http://localhost:1337/wiki.html
- 保存时会备份一份到
BACKUP_DIR
目录下。 - 用坚果云同步
root
对应的目录,Windows下可结合WSL使用。 - 使用插件 $:/plugins/telmiger/EditorCounter ,每输入一定数量的字符就自动保存一次。
wikiserv.rb
:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
| # 参考:https://gist.github.com/jimfoltz/ee791c1bdd30ce137bc23cce826096da
require 'webrick'
require 'fileutils'
if ARGV.length == 0
# root = ARGV.first.gsub('\\', '/')
root = '/mnt/d/我的坚果云/tiddly' #config
else
root = '.'
end
BACKUP_DIR = '/mnt/d/wiki/bak' #config
module WEBrick
module HTTPServlet
class FileHandler
alias do_PUT do_GET
end
class DefaultFileHandler
def do_PUT(req, res)
file = "#{@config[:DocumentRoot]}#{req.path}"
res.body = ''
unless Dir.exists? BACKUP_DIR
Dir.mkdir BACKUP_DIR
end
FileUtils.cp(file, "#{BACKUP_DIR}/#{File.basename(file, '.html')}.#{Time.now.to_i.to_s}.html")
File.open(file, "w+") {|f| f.puts(req.body)}
end
def do_OPTIONS(req, res)
res['allow'] = "GET,HEAD,POST,OPTIONS,CONNECT,PUT,DAV,dav"
res['x-api-access-type'] = 'file'
res['dav'] = 'tw5/put'
end
end
end
end
# https://ruby-doc.org/stdlib-2.5.1/libdoc/webrick/rdoc/WEBrick/HTTPServer.html
server = WEBrick::HTTPServer.new({:BindAddress => "localhost", :Port => 1337, :DocumentRoot => root, :Logger=> WEBrick::Log.new("/dev/null"),:AccessLog=> []})
trap "INT" do
puts "Shutting down..."
server.shutdown
end
server.start
|
搜索增强#
- 每当输入一定数量的字符后就自动保存,这个还挺酷的。$:/plugins/telmiger/EditorCounter
- $:/plugins/telmiger/simple-search ,配合vimium chrome插件搜索还是比较方便的。
- 搜索结果高亮
其他重度用户等#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
| http://cpashow.tiddlyspot.com/
https://rizi.me/
https://onetwo.ren/wiki/#:Index
https://github.com/linonetwo/Tiddlywiki-NodeJS-Github-Template
https://onetwo.ren/用tiddlywiki替代notion和evernote管理知识/
https://onetwo.ren/wiki/#:其他在积极使用TiddlyWiki的朋友的wiki
https://wiki.hintsnet.com/
https://swarma-km.hintsnet.com/
https://wiki.yfd.im/
https://hintsnet.com/digital-garden/
其他相关链接:
http://telooon.tiddlyspot.com/#%E7%9B%B8%E5%85%B3%E9%93%BE%E6%8E%A5
中文tiddlywiki讨论组:http://groups.google.com/group/TiddlyWiki-zh?hl=zh-TW
tiddlywikitools:http://www.tiddlytools.com/
语法 https://tiddlywiki.com/#WikiText
https://dynalist.io/d/zUP-nIWu2FFoXH-oM7L7d9DM
http://blog.dimpurr.com/tiddly-wiki/
https://tid.li/tw5/plugins.html
https://tid.li/tw5/plugins-2019.html
https://wikilabs.github.io/ https://github.com/wikilabs/plugins
https://tiddlywiki.com/static/Customising%2520search%2520results.html
todo: https://tiddlywiki.com/#TaskManagementExample
https://zhuanlan.zhihu.com/p/140473235
https://t.me/joinchat/Ag98F0DdcZr1X1xS6lJsyA
https://github.com/DiamondYuan/wiki/issues/3
https://github.com/DiamondYuan/wiki
https://github.com/DiamondYuan/wiki/issues/1
https://github.com/linonetwo/wiki
https://wiki.xiang578.com/#:Index 以及博客里面提到的人
https://github.com/tiddly-gittly/TiddlyGit-Desktop
https://roulesophy.github.io/
https://zhuanlan.zhihu.com/p/346647657
https://www.zhihu.com/column/c_1336636082004881409
https://tobibeer.github.io/tw/filters/#Filter%20Examples
|
- 搜索。没有vscode好用。
- 插件质量良莠不齐。装了几个插件,一些地方就不按预期工作了,找不出原因。
- 资料少。tiddly wiki这个关键字在Google上的搜索结果简直是一场灾难。
于是弃坑。