跳转至内容
  • 最新
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
  • 太微中文教程
  • 新插件投票看板
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
太微中文论坛icon

太微中文论坛

机杼机

机杼

@机杼
关于
帖子
356
主题
66
群组
1
粉丝
1
关注
6

帖子

最新 最佳 有争议的

  • 你使用太微多长时间了
    机杼机 机杼

    @oeyoews 为什么这样说,感觉MWS挺好的啊,但就是不知道啥时候可以正式投入使用


  • 你使用太微多长时间了
    机杼机 机杼

    想起以前在社区还做过一个问卷调查,里面有个问题就是你使用太微多长时间了,并伴随着一个问题,你还在使用太微吗。

    大多数人使用太微时间不到一年,长得有一年多。但很多后面都没有使用太微而转向了其他软件。

    我自己大概是2022年左右接触到太微的,2021年其实就在知乎上刷到了林一二的文章,但当时没有电脑用不了。2022年在家上网课,要整理PPT的笔记,便开始接触笔记软件。在这之前,我的笔记都是纸质的,那种厚厚的笔记本一写就是一个学期。

    从notion到tiddlymemo(当时用的是钓鱼插件),再之后是supermemo和TiddlyWiki。该说是奇怪还是意外呢,在这个过程中我没有遇到obsidian和anki,尽管也看到了类似的文章,但没有去尝试。最后也是唯一的胜出者,TiddlyWiki。

    一晃三年过去了,这三年中做的事情基本上都是跟TiddlyWiki相关的,除了玩游戏就是在做跟TiddlyWiki相关的。刚开始研究筛选器和宏,后面开始写一些文档放在太微中文社区教程中,再后来看别人的插件,修改别人的插件来改进。后面也开始自己写插件,先简单后复杂。中间还录制了一些太微教程的视频,还有当时的B站每周直播,中间也尝试写一个完整的系列教程,但总是写不下来,TiddlyWiki实在是太复杂了。折腾的过程中也遇到了很多问题,有时候一个问题就能卡一下午,或者一个晚上。笔记库也是几经变化,之前我的笔记库也有意外丢失的情况,是真的丢失了,根本找不回的那种。但这些并没有阻挡我使用TiddlyWiki。

    我现在仍旧使用TiddlyWiki。之前是用TiddlyWiki管理一切,任务管理,时间管理,书籍管理,笔记管理,分了好几个wiki,但后来又发现在TiddlyWiki中管理一切并不方便。又逐渐迁移到其他软件中。而现在呢,又觉得TiddlyWiki好像可以管理一切,之前遇到的一些问题似乎可以以另一种形式解决。但我没有直接行动。我想等MWS插件基本开发完毕后再尝试。因为MWS插件带来的改变太多了。

    目前我使用TiddlyWiki还算合适,几乎没有遇到太多的阻碍。其实遇到的阻碍很多跟TiddlyWiki无关,反而是我自己没有思考清楚。是用标签还是用字段管理内容,怎么处理层级性,怎么处理自己偶尔产生的想法,链接又如何管理。这些当我想明白后,其实不管是用TiddlyWiki还是Obsidian,我觉得自己都不会遇到问题。但TiddlyWiki实在是太强大了,免费又开源,目前是真的找不到替代。

    当然TiddlyWiki的问题也很多,不然就不会需要5.4.0这种不兼容式更新了。但总体来说TiddlyWiki是变得更好了。

    不过软件毕竟是工具,使用TiddlyWiki并不一定要排斥其他的,我偶尔也会使用Obsidian或者思源笔记。目前我看电子书就是用思源笔记。扬长避短才能为我所用。

    TiddlyWiki已经20年了,完全有理由相信TiddlyWiki可以再用20年。现在AI发展迅速,AI笔记软件也层出不穷,但TiddlyWiki仍旧值得尝试和学习。不过也许未来TiddlyWiki也会结合AI,还是拭目以待吧。

    2025年5月5日


  • 制作一些有用的太微示例来宣传
    机杼机 机杼
    • https://dongrentianyu.github.io/memo/

    我以前把thoughts memo翻译过来的文章做成了TiddlyWiki的形式。但后面叶哥自己搞了一个网站,我也就没再维护下去了。里面的tidme插件也好久没更新了。

    • https://tiddly-gittly.github.io/TW-Translation-Chinese/

    以前还维护过一个开发者文档,里面的内容都是由AI翻译的。但估计也很少有人看。

    以前还做过太微之书/太微漫游的教程,现在也停了。之前是没有时间,现在是没有动力。不知道该怎么和别人说起TiddlyWiki这个东西,只好搁置。


  • 制作一些有用的太微示例来宣传
    机杼机 机杼

    @XLBilly 原来大家都觉得TiddlyWiki加载网站很慢吗?我自己是直接用太记的模板,里面有林一二的一些优化,我个人感觉加载速度并不算慢。把TiddlyWiki核心和一些比较大的插件都放在外面懒加载了。具体的技术细节我不清楚,但我感觉用github部署出来的网站访问速度不太慢,可能比tiddlyhost还要快一些。当然是开了科学上网的访问速度。

    如果是单文件html,这个好像确实会比较慢,因为正常使用TiddlyWiki,包含了一些较大的插件的话,就会达到15m。

    TiddlyWiki的命令行功能我没用过,一直都是用太记启动。太记真是挺方便的。

    多用户编辑的话,目前只有等MWS插件完善后再考虑了。不过MWS插件是真的不错,非常期待完善后的功能。如果太记也把这个结合进去的话,那相信加载速度会很方便。

    目前要做多用户编辑,也完全是可以的。通过Git来提交到相应的仓库中。图片用图床的,一般不太大的图片,放在github上也是可以的。

    在太记中部署也是非常简单的,真的很简单,只要有github账号并申请一个token就好。一键推送。

    notion确实更简单,但notion发布成网站的功能好像是付费的。加上notion的商业性和可能存在的政治因素,比如之前有新闻报道notion不再为俄罗斯用户提供访问了,让人觉得比较担忧。

    notion的block功能,在TiddlyWiki中是可以实现的,但就是要自己写。TiddlyWiki和其他笔记软件不一样的是,其他笔记软件能实现的,TiddlyWiki多少也能实现,但TiddlyWiki能实现的,其他笔记大多不能实现。比如自定义展示模板,目前我还没看到有像TiddlyWiki这么自由的软件。


  • 制作一些有用的太微示例来宣传
    机杼机 机杼

    b90eaa7d-ecf2-4dbc-ac30-dd77dbd1fb1e-image.png

    • https://intrinsical.github.io/wiki/

    目前最常见的还是做游戏wiki,但绝大多数游戏wiki制作团队都不会采用TiddlyWiki这种形式,而是会采取更普遍使用的形式。TiddlyWiki这种的通常是由个人维护的。不过也挺好的,百花齐放嘛。上面的示例是龙与地下城的,但我没玩过这个游戏也就没看下去了。

    其实可以做的有很多。比如饥荒中的模组wiki,就完全可以用TiddlyWiki部署。但一个问题是国内访问受限,github部署出来的网站访问还是挺玄学的。

    也许TiddlyWiki推广开来了,就更容易实现吧。


  • 制作一些有用的太微示例来宣传
    机杼机 机杼

    @XLBilly tiddlyhost好多都没更新了,而且更多的是模板。且绝大多数都是英文的。note-wiki的这个我确实是第一次见。圣经的我倒知道。林一二的网址是https://wiki.onetwo.ren/,我自己也有一个数字花园。

    • https://dongrentianyu.github.io/rhizome

    但缺少那种中文网站,特别是具有实际价值的中文网站。这方面notion好很多。我以前还看过一个德勒兹的中文网站,是用notion搭建的。

    总体来说是偏少的,个人用的或数字花园那非常多了。我以前还保存过一个文件,里面有上千个TiddlyWiki实例来着。

    TiddlyWiki本身足够强大,但确实没有流传开来。也许等mws插件完善后,就能够吸引到更多的新用户来使用吧。


  • 制作一些有用的太微示例来宣传
    机杼机 机杼

    @XLBilly 不是说这种具体的筛选器语法示例。而是可以用来对外部宣传或使用的。比如我知道有人用Obsidian做了一个法律库文件。以前QQ群里还有位用户用TiddlyWiki做国际标准文件。当然不是说一定要做这种标准类文件。

    如果有一个网站,是由太微构建的,用户进去就可以查看某一个菜是怎么做的,数据源就来自上面的仓库中。那是不是很方便,或者说很吸引人。因为背后肯定存在字段方面的处理,展示处理。而且这可以是一个公开的项目,可以由多人维护。

    这有点类似于网络上常见的用notion搭建自己的娱乐库,包括看过的动画,玩过的游戏,看过的电影和电视剧之类的。这种分享通常是美观,很容易吸引用户的。

    不过总体来说还是宣传层面的,因为吸引过来的用户可能会被TiddlyWiki高学习成本或复杂难度给吓跑。


  • 制作一些有用的太微示例来宣传
    机杼机 机杼

    HowToCook

    比如这个如何做饭的示例就挺好的,不过问题就是如何保持同步更新,这就比较麻烦了。


  • 5.4.0版本要来了
    机杼机 机杼

    @linonetwo 哈哈,感觉从你加入后,TiddlyWiki开发速度变快了好多。不过这次要是能够顺带把社区插件库一并搞起来就更好了。很多旧的功能还是做成官方插件去维护。避免一次大更新,直接用不了了。


  • 5.4.0版本要来了
    机杼机 机杼

    [TW2036] Planning for v5.4.0

    好消息是,可以进行一些不向后兼容的更新,以消除TiddlyWiki长久以来无法推进pr的问题。

    主要的更新应该是所见即所得编辑器插件和AST,估计以后直接在TiddlyWiki里写markdown会很方便。

    还提供了一些新的配色表内容,杰里米打算完全放弃旧的,更换新的。

    • https://yatagarasu.tiddlyhost.com/
    • 更多内容

    来自上面的网站,确实不错,感觉配色风格像莫兰迪还是什么来着。

    这次更新可以多去提一些意见。我提了一个多余的p标签问题,应该还要追加一个官方插件仓库的问题。趁着大版本更新,应该要多更新点内容。

    当然也有些问题,比如所见即所得编辑里可以快速编辑字段吗?渲染和编辑是怎么处理的呢?因为我经常使用级联的模板来展示内容。

    总之TiddlyWiki越来越强大了,这下真的是下一代,面向未来的软件了。


  • 如何在procedure中传递筛选器变量
    机杼机 机杼

    @oeyoews 感觉这个没那么智能,可能给的材料和示例不够多。要是可以把你们写的插件库也放进去让他读取或许会好一些。


  • 如何在procedure中传递筛选器变量
    机杼机 机杼

    离谱,刚发出去就找到了答案。

    \procedure test(filter)
    <$list filter="[tag[吉尔·德勒兹-copy]] +[filter<filter>]"  >
    
    !!! <$link><<currentTiddler>></$link>
    
    </$list>
    \end
    
    <$transclude $variable="test" filter="[chapter[0前言]]"/>
    
    ---
    
    <$list filter="[tag[吉尔·德勒兹-copy]chapter[0前言]]">
    
    !!! <$link><<currentTiddler>></$link>
    
    </$list>
    
    

    用到了filter筛选器。

    如果需要引用文本变量,比如[chapter{!!chapter}],需要通过let微件转化。不然无法实现。

    <$let a={{!!chapter}}>
    <$transclude $variable="test" filter="[chapter<a>]"/>
    </$let>
    

    筛选器是真强大,但也是真不会用,我还找了function的定义方式,getvariable等等。想不到别的词,就这种功能,浪费了得有三个多小时,我也挺佩服我的毅力的,只是真不想遭受这种罪了。


  • 如何在procedure中传递筛选器变量
    机杼机 机杼
    \procedure test(filter)
    <$list filter="[tag[吉尔·德勒兹-copy]] :filter[<filter>]"  >
    
    !!! <$link><<currentTiddler>></$link>
    
    </$list>
    \end
    
    <$transclude $variable="test" filter="[chapter[0前言]]"/>
    
    ---
    
    <$list filter="[tag[吉尔·德勒兹-copy]chapter[0前言]]">
    
    !!! <$link><<currentTiddler>></$link>
    
    </$list>
    

    搞了很久,把论坛都快翻遍了也没找到答案。理论上来说,只会有三个内容。

    但确实不知道如何传递。


  • 【TW前瞻】MultiWikiServer 锐意开发中的官方多维基服务器,未来可期
    机杼机 机杼

    我大概明白怎么用了,简单概括如下

    • 一个bags必须要有一个recipe,不然这个bags无法形成域名,也就无法编辑
    • 一个recipe可以有多个bags,但至少有一个,不然无法构建
    • recipe中的bags有优先级。同样的标题条目,优先级高的被recipe使用,低的无效。
      • 这样带来的一个好处是,你可以自己做一个定制化的wiki模板,然后维护这个模板
      • 接着你在你的其他生产环境中使用这个模板,但有些功能你当前的生产环境你不需要,所以你可以直接修改你当前生产环境的内容,不会影响到你的bags条目
      • 另一个更常见的好处是,当你更新你的模板时,其他使用该模板的recipe会直接更新,这样就不需要一直调整了

    目前存在的问题

    • 文档上说会跟用.tid展示内容不冲突,但没有具体说明如何处理
      • 因为显示可以与git相结合
    • 目前recipe和bag没有删除选项,可能是还没有做
    • 目前插件也作为bags提供,这个方案有点不那么好。因为插件太多了,会有很多个bags。如果把CPL收录的插件提供过去,那有好几百个。上百个bags显示的就很糟糕了。
    • 怎么与筛选器结合,这一点还没有说。目前来看,bags与筛选器无关,出现重名的条目,就按优秀级来处理。

    可以期待实现的

    • 个人知识库管理会更加高效
    • 举例来说,我可以只在一个book-info的bags中更新书籍信息,而其他的什么都不管,当我需要查询书籍的信息时,我可以在book-info中查找,也可以直接在我的主知识库中查找。
    • 以及上述实现的模板功能。我可以有一个template,里面包含了大量我自定义的功能,但没有打包成插件。而且这里可以是一个生产环境,我可以直接在这里测试。但有个可以预见的问题是,测试条目也会随之附带到main中,所以需要通过筛选器来结合处理。
    • 减轻性能。虽然我不知道具体是怎么处理的,但可以预见的好处是,性能会得到极大的改善。当然这个可能需要测试。
    • 多用户处理
      • 比如论坛上很多个不同的wiki,估计就可以使用这种方式来处理展示了,但背后又涉及到git方面的内容,估计还是不行
      • 可能需要服务器,这个有点麻烦。因为文档中举了一个老师的例子,老师可以把他的教学资料放在一个bags中,而学生可以每个人都有一个自己的bags,可以提交作业。然后老师查看且修改。理论上都没有问题,最大的问题在于,是老师去部署这个服务器还是学校,学校真的会这样做吗?
        • 这个肯定是学校部署的,老师估计是类似跟用学习通一样。算了,这方面还是不过多讨论了。

    感觉等技术成熟了,太记应该可以把这个放进去,从而构建更强大的TiddlyWiki。


  • 【TW前瞻】MultiWikiServer 锐意开发中的官方多维基服务器,未来可期
    机杼机 机杼

    刚启动成功了,但没搞明白是怎么用的。


  • 筛选器的上限
    机杼机 机杼

    确实,我把list想得太抽象了。

    后来我发现,即使我要判断,但因为我的节点丸和根目录是放在一起的,所以实际上我只要判断节点丸就可以了。并不需要判断那么多根目录。因为节点丸也足矣构成上下文内容。


  • 筛选器的上限
    机杼机 机杼

    目前还不算卡,用起来的时候也影响不大。

    我把上面根目录的筛选器改成了用list微件的形式。

    <$list filter="[tag[wikis]]" variable="root-name">
    
    <$transclude $variable="context-root" tiddler=<<showTiddler>> name=<<root-name>>  tid-name=<<root-name>> use-true="true" limit="15" />
    
    </$list>
    

    感觉能增加点筛选使用效率。

    但要做条件判断就不好处理了。因为孤立条目只能是无硬式链接条目,但有些有反向嵌入的也应该要排查出来。

    我尝试了一下,目前还是解决不了,就先放着了。


  • 筛选器的上限
    机杼机 机杼

    总结来说,就是TiddlyWiki的底层机制是怎样的。怎么处理复杂的渲染,刷新,状态管理。能承受的上限是什么。

    我最近折腾的小东西,感觉很吃渲染,虽然没有明显的卡顿,但能感觉到是卡了一下的。当然我写的wikitext肯定也不够好。

    没有往英文论坛那边发,是感觉这个东西还没说清楚。可能下次有机会我演示一下就好了。


  • 筛选器的上限
    机杼机 机杼

    最近我做了一些小东西,其中一个工具是,在条目页面上有一个按钮,点开后会显示一个弹窗,弹窗里有一些关于这个条目的内容。

    其中一个是上下文的内容,包括两个方面,一个方面是此条目所属的根目录,并构建一个面包屑。一个方面是关于此条目下面的子条目,链接和嵌入等内容。如下图所示。

    cdf8c840-50f6-4915-9f66-efe404fb64a6-image.png

    此条目的根目录在WENAI,包含一个链接,一个标签,一个嵌入内容。

    因为之前使用TiddlyWiki是好几个wiki,所以现在我的根目录有好几个,并不只有一个。

    ok,现在问题来了,如果我建立一个条目,这个条目不存在那几个根目录之下,且没有链接,也没有标签,也没有嵌入。那么这个条件判断应该怎样写呢?

    我知道其实这个问题并没有太大的实际用处,因为正常来说,一个什么上下文信息都不包含的条目没有查看的必要。

    但因为旁边我还有其他功能,比如可以快速修改标签或字段的功能,所以我才会想着当打开一个条目,没有任何上下文时,展示出一段文字。(当然更好的做法是直接切换到其他页面去,但同样我也不知道怎么做。)

    如果我要解决这个问题,也同样是从上述两方面入手。

    面包屑我是使用in-Tag-tree-of,包装的宏代码里有下面这个初始判断。即判断当前条目是否属于某个给定的根目录。

    <$list filter="[[$tiddler$]!prefix[$:/]in-tagtree-of:inclusive[$name$]]">
    

    但因为我有好几个根目录,所以这个list判断应该要写好几个,且需要嵌套,因为可能需要一些循环方式,在TiddlyWiki里写循环就是用list,可惜在这一步我就不会了。

    第二个方面则是关于此条目的内容,这里我是用自己之前修改kookma的宏,所构建的节点丸。

    $:/plugins/mabuqian/gumo-customisation/node-explorer-colorful
    
    \import $:/plugins/mabuqian/gumo-customisation/node-explorer
    \define subtiddler-pattern() $(currentTiddler)$
    \define type-class() badge p-1 badge-$(type)$
    
    <$list filter="[all[current]get[node-explorer]!match[hide]] [all[current]!has[node-explorer]] :and[!is[system]]" variable=null>
    <$list filter=<<mainFilter>> variable="currentRecord">
    	<$let type={{{ 
    		[all[current]links[]match<currentRecord>then[info text-white]]
    		[all[current]backlinks[]match<currentRecord>then[danger text-white]]
    		[all[current]tagging[]match<currentRecord>then[warning text-dark]]
    		[all[current]tags[]match<currentRecord>then[success text-white]]
    		[<currentRecord>prefix<subtiddler-pattern>then[primary text-white]]
    		:else[<currentRecord>search:text<currentTiddler>then[secondary text-white]else[dark text-white]] 
    		}}} >
    			<$link to=<<currentRecord>> class=<<type-class>> />
    	</$let>
    </$list>
    </$list>
    

    可以从代码中看到,里面做了很多的判断条件。

    那如何判断一个条目,没有标签也没有链接也没有其他类似的项目呢?难道又把上面的代码都改一遍?

    更何况,这不是一个页面按钮,而是经常会用的按钮。换言之,我会经常在新建条目时,点开这个按钮。

    所以每当这个条目什么上下文都没有,但上面的筛选器都要跑一遍的时候,我已经能想象到筛选器炸了或者卡了的状况了。

    当然我对TiddlyWiki的底层机制不了解,所以也可能存在着更好的方式和解决办法。但一时我也没有想到。


  • 如何在一个GitHub仓库里构建多个TiddlyWiki在线网址
    机杼机 机杼

    我记得TiddlyWiki的官网好像就是这样做的,文档和开发者文档都是放在一个仓库里,然后构建了好几个网站,想知道这个是怎么处理的。

  • 登录

  • 没有帐号? 注册

  • 登录或注册以进行搜索。
Powered by NodeBB Contributors
  • 第一个帖子
    最后一个帖子
0
  • 最新
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
  • 太微中文教程
  • 新插件投票看板