Skip to content

Commit

Permalink
使用太记桌面版备份
Browse files Browse the repository at this point in the history
  • Loading branch information
tiddlygit-test authored and linonetwo committed Mar 27, 2024
1 parent 10b2480 commit 41768d2
Show file tree
Hide file tree
Showing 19 changed files with 194 additions and 161 deletions.
8 changes: 2 additions & 6 deletions tiddlers/TW-Locator例子:当前知识库的目录.tid
Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
created: 20211003071732972
creator: 林一二
modified: 20211003071932534
modified: 20240327083343535
modifier: 林一二
tags: TW-Locator
title: TW-Locator例子:当前知识库的目录
type: text/vnd.tiddlywiki

```html
<$macrocall $name="locator-view" baseTitle=欢迎来到太微! />
```

<$macrocall $name="locator-view" baseTitle=欢迎来到太微! />
<<wikitext-example """<$macrocall $name="locator-view" baseTitle=欢迎来到太微! />""">>
4 changes: 2 additions & 2 deletions tiddlers/TidGi太记.tid
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
caption: 太记
created: 20211005051214953
creator: 林一二
modified: 20231013042239012
modified: 20240327082829974
modifier: 林一二
tags: 全平台软件和存储方式 TiddlyWiki发行版本介绍
title: TidGi太记
type: text/vnd.tiddlywiki

TidGi 是 TiddlyWiki + Git 的缩写简称,因为太记除了作为太微的[[启动器]]以外,还能自动进行 Git 细粒度同步备份,在备份的同时节省硬盘空间。
太记 TidGi 是 TiddlyWiki + Git 的缩写简称,因为太记除了作为太微的[[启动器]]以外,还能自动用 Git 备份工具进行细粒度同步备份,在备份的同时节省硬盘空间。太记可以加速大型知识库的启动,并为新用户提供了开箱即用的模板,并有全平台+移动端免费同步方案

官网是[[tidgi.fun - 太记部署|https://tidgi.fun/]],使用文档和截图都在上面。(备用:[[太记官网 - Github Pages 部署|https://tiddly-gittly.github.io/TidGi-Official-Website/#:Index]])

Expand Down
6 changes: 3 additions & 3 deletions tiddlers/TiddlyWiki发行版本介绍.tid
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
created: 20231001020203086
creator: 马不前
list: 官方单文件版本 TiddlyDesktop Tiddlyhost TiddlyWiki-xp TidGi太记 [[Quine 2]] Tiddloid Neotw定制版 墨屉 Stroll Noteself 其他常见版本
modified: 20231001153254633
modifier: 马不前
list: TidGi太记 官方单文件版本 TiddlyDesktop Tiddlyhost TiddlyWiki-xp [[Quine 2]] Tiddloid Neotw定制版 墨屉 Stroll Noteself 其他常见版本
modified: 20240327082709513
modifier: 林一二
tags: 幻灯片
title: TiddlyWiki发行版本介绍

Expand Down
6 changes: 4 additions & 2 deletions tiddlers/中文文档.tid
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
created: 20220217093924811
creator: 林一二
modified: 20220217093935274
modified: 20240327083933952
modifier: 林一二
tags: 太微背景介绍
title: 中文文档
type: text/vnd.tiddlywiki

[[TiddlyWiki官网|https://tiddlywiki.com/]]和一系列社区提供了太微完善的教程,但访问较为缓慢,不熟悉英文的爱好者请阅读由[[@BramChen|https://github.com/BramChen]]大佬翻译的[[TiddlyWiki 舞 - 官方基础文档简体中文版|https://bramchen.github.io/tw5-docs/zh-Hans/]]
[[TiddlyWiki官网|https://tiddlywiki.com/]]和一系列[[社区|社区联系方式]]提供了太微完善的教程,不熟悉英文的爱好者请阅读由[[@BramChen|https://github.com/BramChen]]大佬翻译的[[TiddlyWiki 舞 - 官方基础文档简体中文版|https://bramchen.github.io/tw5-docs/zh-Hans/]]

但太微官网主要关心太微核心的功能,没法装下二次创作的所有生态信息,而太微最关键的是社区和插件。因此我们建设了中文文档来介绍太微千千万万的插件和开发者组成的社区内容。
18 changes: 12 additions & 6 deletions tiddlers/基础知识.tid
Original file line number Diff line number Diff line change
@@ -1,18 +1,24 @@
created: 20210902045831297
creator: 林一二
modified: 20230207160827487
modified: 20240327083038726
modifier: 林一二
tags: 欢迎来到太微!
title: 基础知识
type: text/vnd.tiddlywiki

对官方文档基础知识的延伸解释和简单补充,也包含一些新手常见的问题。

如果你有编程经验,可以之后去看看[[太微原理]]。
!! 除了编辑笔记以外,还有哪些功能?

* [[布局]]是各种全屏应用,包括白板、日历和游戏化等
* [[自动化]]你的笔记整理流程
* 从[[TiddlyWiki发行版本介绍]]中选择你的客户端和保存备份方式

!! 筛选器、宏、变量、界面级联?

* 筛选器:用类似 DataLog / SQL 的语法执行 JS 的 map、filter 等函数,筛选出笔记库里的笔记
* 宏:在编译期替换文本,再提供给维基语法解析器
* 变量:保存文本内容,在用维基文本写低代码应用时,实现类似提供上下文的功能
* 界面级联:像 CSS 一样,允许插件提供的界面覆盖应用本身的界面
如果你有编程经验,可以之后去看看[[太微原理]],入门[[插件开发]]。

* [[筛选器]]:用类似 DataLog / SQL 的语法执行 JS 的 map、filter 等函数,筛选出笔记库里的笔记
* [[宏]]:在编译期替换文本,再提供给维基语法解析器
* [[变量]]:保存文本内容,在用维基文本写低代码应用时,实现类似提供上下文的功能
* 界面[[级联]]:像 CSS 一样,允许插件提供的界面覆盖应用本身的界面
28 changes: 19 additions & 9 deletions tiddlers/多布局切换功能.tid
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
created: 20230926084011139
creator: 林一二
modified: 20230926084600614
modified: 20240327082338565
modifier: 林一二
tags: 基础知识
tags: 基础知识 布局
title: 多布局切换功能

!! Layout 目前翻译为「布局」。
Expand All @@ -19,26 +19,36 @@ title: 多布局切换功能

!!! 日历(内容为林一二新冠一周病情日记)

[img[https://pic2.zhimg.com/80/v2-bc2f1bea0dd0016a212bf004782c4431_1440w.webp]]
[img[https://pic3.zhimg.com/80/v2-216795a7016265b86285eace39bcb902_1440w.webp]]

!!! 默认故事流

[img[https://pic2.zhimg.com/80/v2-13aa858ca7467849ce71f581546209f1_1440w.webp]]

!! 视图切换
!!! 更多来自插件的布局

可以用页面工具栏里的 Layout switcher 来打开视图列表切换
比如 `captivate` 主题插件就有另外的布局,[[TiddlyFlex多栏布局插件|https://tw-cpl.netlify.app/#Plugin_202403170416726]]也将新功能以新布局的形式提供,从而不影响默认的卡片流布局的功能。

!! 布局切换

!!! 可以用页面工具栏里的 Layout switcher 来打开视图列表切换

[img[https://pic1.zhimg.com/80/v2-2cd7d142e8c902e2acf1dcac0523563c_1440w.webp]]

快捷键:ctrl+shift+L
!!! 快捷键:ctrl+shift+L

[img[https://pic2.zhimg.com/80/v2-a257f0df025ea661ba60949ec009c9c5_1440w.webp]]

有的视图插件也向页面工具栏提供了新按钮,例如这个一键切换到日历的按钮
!!! 有的布局插件也向页面工具栏提供了新按钮

例如这个一键切换到日历的按钮,但不推荐插件添加按钮来切换布局,这样布局多了会占用很多页面工具栏栏位。

[img[https://pic2.zhimg.com/80/v2-993ca6a4b8a0acc2232518956486a67d_1440w.webp]]

!! 开发新布局
!!! 我们更推荐用户安装布局启动器类的插件

通常切换布局可以安装特定插件来实现,例如安装[[简易布局启动器 simple-layout-launcher|https://tw-cpl.netlify.app/#Plugin_202403051927669]]插件。

[img[简易布局启动器截图.png]]

目前教程在 https://zhuanlan.zhihu.com/p/601040724,之后搬过来。
([[简易布局启动器|https://tw-cpl.netlify.app/#Plugin_202403051927669]]插件在[[游戏太微插件的文档站|https://tiddly-gittly.github.io/tw-gamification]]上的效果)
72 changes: 72 additions & 0 deletions tiddlers/如何制作布局插件.tid
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
created: 20240327080537288
creator: 林一二
modified: 20240327080646381
modifier: 林一二
tags: 开发布局
title: 如何制作布局插件

!! 布局插件JS部分

插件就是打包的笔记。插件提供的新视图一般用来展示一个微件。

布局不一定要有 JS ,可以创建完全由 Wikitext 组成的布局。不过这里先假设你要用 JS 写一个微件,然后在布局里展示这个微件。例如先创建一个日历微件的 JS 侧代码

src/calendar-widget/widget.ts

```
import { Calendar } from '@fullcalendar/core';
import type { Widget as IWidget } from 'tiddlywiki';
import './widget.css';

const Widget = (require('$:/core/modules/widgets/widget.js') as { widget: typeof IWidget }).widget;

class CalendarWidget extends Widget {
/**
* Lifecycle method: Render this widget into the DOM
*/
render(parent: Node, _nextSibling: Node): void {
this.#calendar = new Calendar(this.#mountElement, { ...settings });
this.#calendar?.render();
parent.appendChild(this.#containerElement);
}
}

exports.widget = CalendarWidget;
```

!! Wikitext部分

然后通过元信息文件,保存这个笔记的标题、标签、类型等元信息

src/calendar-widget/widget.js.meta

```
creator: LinOnetwo
title: $:/plugins/linonetwo/tw-calendar/calendar-widget/widget.js
type: application/javascript
module-type: widget
hide-body: yes
```

之后就可以在维基文本侧使用定义的微件,用类似 XML 的语法使用它 `<$calendar height="100vh" />`

```
title: $:/plugins/linonetwo/tw-calendar/tiddlywiki-ui/PageLayout/CalendarLayout
name: Calendar
description: view tiddlers in agenda or calendar by their date related fields
tags: $:/tags/Layout

\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]

<$navigator story="$:/StoryList" history="$:/HistoryList" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>

<main class="tw-calendar-layout-main-area">
<$calendar height="100vh" />
</main>

</$navigator>
```

通过给这个笔记加上 `tags: $:/tags/Layout` 这个标签,它就会被太微的框架部分使用到,展示在可用视图列表里

并在它的 title 作为 `$:/layout` 这个笔记的内容时,替换掉默认的故事流视图,全屏展示这个新的视图。
15 changes: 15 additions & 0 deletions tiddlers/布局.tid
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
created: 20230305122730862
creator: 林一二
modified: 20240327082120285
modifier: 林一二
tags: 高级知识
title: 布局
type: text/vnd.tiddlywiki

[[布局(Layout)|https://bramchen.github.io/tw5-docs/zh-Hans/#Alternative%20page%20layouts]]是太微提供多种全屏界面的方案。

类似全屏的 App。太微是一个数据库,基于条目数据,可以运行很多个不同的全屏应用,也就是一个个不同的布局。

效果可见[[多布局切换功能]]。

作为开发者,你可以了解[[开发布局]]。使用者,可以到 CPL 上查看带 `Layout` 标签的插件。
106 changes: 8 additions & 98 deletions tiddlers/版面切换.tid → tiddlers/布局切换.tid
Original file line number Diff line number Diff line change
@@ -1,42 +1,14 @@
created: 20230207162136493
creator: 林一二
modified: 20230305122922074
modified: 20240327081243784
modifier: 林一二
tags: 太微原理 版面
title: 版面切换
tags: 太微原理 布局
title: 布局切换
type: text/vnd.tiddlywiki

!! 简介
本文介绍太微里的布局切换功能是如何实现的。

!!! 常用视图

白板:https://tw-cpl.netlify.app/#linonetwo%2Ftw-whiteboard

[img[https://pic1.zhimg.com/80/v2-73dfc44959d9f793b6746910ea08ed58_720w.webp]]

日历:https://tw-cpl.netlify.app/#Plugin_202212022054901

[img[https://pic2.zhimg.com/80/v2-bc2f1bea0dd0016a212bf004782c4431_720w.webp]]

(内容为林一二新冠一周病情日记)

默认故事流

[img[https://pic2.zhimg.com/80/v2-13aa858ca7467849ce71f581546209f1_720w.webp]]

!!! 视图切换

可以用页面工具栏里的 Layout switcher 来打开视图列表切换

[img[https://pic1.zhimg.com/80/v2-2cd7d142e8c902e2acf1dcac0523563c_720w.webp]]

[img[https://pic2.zhimg.com/80/v2-a257f0df025ea661ba60949ec009c9c5_720w.webp]]

有的视图插件也向页面工具栏提供了新按钮,例如这个一键切换到日历的按钮

[img[https://pic2.zhimg.com/80/v2-993ca6a4b8a0acc2232518956486a67d_720w.webp]]

!! 框架部分
!! 太微核心Wikitext部分

太微大部分界面是用维基文本文式编程写的,可以通过 message 等机制调用 JS 侧的能力,JS 侧也可以通过 `$tw.wiki.`makeTranscludeWidget 等方式取到笔记里的内容。

Expand All @@ -55,6 +27,8 @@ tags: $:/tags/PageControls

在一个启动项脚本里,注册了暴露给维基文本的可用消息 `tm-show-switcher`(类似 JSB)

!! 太微核心JS部分

JS 侧收到这个消息后,会弹一个框出来,里面展示笔记条目 `$:/core/ui/SwitcherModal` 的内容

并带上 `{ switch: "layout" }` 作为维基文本变量,传给维基文本侧
Expand Down Expand Up @@ -136,68 +110,4 @@ const pageWidgetNode = $tw.wiki.makeTranscludeWidget('$:/core/ui/RootTemplate',
const pageContainer = document.createElement('div');
document.body.insertBefore(pageContainer, document.body.firstChild);
$tw.pageWidgetNode.render(pageContainer);
```

!! 插件部分

插件就是打包的笔记。插件提供的新视图一般用来展示一个微件。

例如先创建一个日历微件的 JS 侧代码

src/calendar-widget/widget.ts

```
import { Calendar } from '@fullcalendar/core';
import type { Widget as IWidget } from 'tiddlywiki';
import './widget.css';

const Widget = (require('$:/core/modules/widgets/widget.js') as { widget: typeof IWidget }).widget;

class CalendarWidget extends Widget {
/**
* Lifecycle method: Render this widget into the DOM
*/
render(parent: Node, _nextSibling: Node): void {
this.#calendar = new Calendar(this.#mountElement, { ...settings });
this.#calendar?.render();
parent.appendChild(this.#containerElement);
}
}

exports.widget = CalendarWidget;
```

然后通过元信息文件,保存这个笔记的标题、标签、类型等元信息

src/calendar-widget/widget.js.meta

```
creator: LinOnetwo
title: $:/plugins/linonetwo/tw-calendar/calendar-widget/widget.js
type: application/javascript
module-type: widget
hide-body: yes
```

之后就可以在维基文本侧使用定义的微件,用类似 XML 的语法使用它 `<$calendar height="100vh" />`

```
title: $:/plugins/linonetwo/tw-calendar/tiddlywiki-ui/PageLayout/CalendarLayout
name: Calendar
description: view tiddlers in agenda or calendar by their date related fields
tags: $:/tags/Layout

\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]

<$navigator story="$:/StoryList" history="$:/HistoryList" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>

<main class="tw-calendar-layout-main-area">
<$calendar height="100vh" />
</main>

</$navigator>
```

通过给这个笔记加上 `tags: $:/tags/Layout` 这个标签,它就会被太微的框架部分使用到,展示在可用视图列表里

并在它的 title 作为 `$:/layout` 这个笔记的内容时,替换掉默认的故事流视图,全屏展示这个新的视图。
```
10 changes: 8 additions & 2 deletions tiddlers/幻灯片.tid
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
created: 20220105142012545
creator: 林一二
modified: 20220217093939000
modified: 20240327084149222
modifier: 林一二
tags: 欢迎来到太微! 太微背景介绍
title: 幻灯片
type: text/vnd.tiddlywiki

为方便宣讲,我们在此提供几类幻灯片,对应不同的宣讲场景:<$list filter="[tag[幻灯片]sort[title]]" />
为方便宣讲,我们在此提供几类幻灯片,对应不同的宣讲场景:

<$list filter="[tag[幻灯片]sort[title]]" counter="counter">
<div>
<<counter>>: ''<$link to=<<currentTiddler>>/>''
</div>
</$list>

!! 编辑内容

Expand Down
Loading

0 comments on commit 41768d2

Please sign in to comment.