Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
dongrentianyu committed Oct 1, 2023
2 parents 54ec51a + f8cc5b2 commit 773dd21
Show file tree
Hide file tree
Showing 6 changed files with 109 additions and 47 deletions.
5 changes: 3 additions & 2 deletions tiddlers/HTML与文件夹的转换.tid
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
created: 20220815035633469
creator: Miao
modified: 20230602051217938
modified: 20231001121936318
modifier: WhiteFall
tags: 编程知识类
title: HTML与文件夹的转换
type: text/vnd.tiddlywiki

如果你想要换种方式使用,比将HTML文件变成文件夹然后用tidgi打开,可以使用nodejs搭配一条命令完成转换。或者在tidgi太记中你可以直接导入wiki.html
如果你想要换种方式使用,比将HTML文件变成文件夹然后用NodeJS版本太微打开,可以使用nodejs搭配一条命令完成转换。

> 在tidgi太记中你可以直接导入wiki.html文件,TidGi会自动处理变成文件夹形式的WIKI。

需要环境:NodeJS的安装与NodeJS版TiddlyWiki的安装。

Expand Down
14 changes: 12 additions & 2 deletions tiddlers/Wiki编程的定义.tid
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
class: autonumhead
created: 20230809234409764
creator: WhiteFall
modified: 20230912050123571
modified: 20231001110703471
modifier: WhiteFall
tags: 插件开发
title: Wiki编程的定义
Expand All @@ -22,6 +22,8 @@ title: Wiki编程的定义

得益于三种两大类(编译和笔记)的维基文本解析器模式,以及部分Wiki解析语法,使得条目不仅可以用于写作还可以用于Wiki编程。Wiki编程是在条目中进行定义、调用不同形式封装或定义的方法和变量,为了完成某种任务,将解决问题的步骤写成指令,使TiddlyWiki根据这些指令一步步执行,最后完成任务。

维基文本的可编程性,在维基文本中可实现功能。

<<<

开发框架/知识管理操作系统 > 插件开发 > wiki编程 > 笔记与写作。
Expand Down Expand Up @@ -184,4 +186,12 @@ action-log、log小工具、[[调试筛选器]]
## 配置条目
## 调色板条目

# 普通条目
# 普通条目

!!! 字符串

JavaScript 模板字符串,模板字面量 是允许嵌入表达式的字符串字面量。在WIKI中使用【替换的属性值】实现这种方式。JS使用`this is ${foo} value`,wiki中使用`this is $(varname)$ and ${ filter expression}$` 实现。

拼接(连接、串联)文本和变量:在JS中通常使用 '+' 符号实现。在WIKI中,【使用宏替换串联文本和变量】,在5.3.0版本中使用【替换属性值】或【替换筛选器表达式子】来连接文本和变量。


6 changes: 3 additions & 3 deletions tiddlers/全平台软件和存储方式.tid
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
created: 20221127032909691
creator: WhiteFall
modified: 20230603045608712
modifier: 马不前
modified: 20231001120930095
modifier: WhiteFall
order: 2
tags: 资源链接 如何保存
title: 全平台软件和存储方式
Expand All @@ -18,7 +18,7 @@ type: text/vnd.tiddlywiki

* Windows、macOS、Linux :[[TidGi|TidGi太记]]、[[Timimi|https://ibnishak.github.io/Timimi/]]、[[TiddlyDesktop|https://github.com/TiddlyWiki/TiddlyDesktop/releases]]、[[TiddlyStow|https://twpub-book.netlify.app/tiddlystow.html]]、[[NodeJS|https://nodejs.org/zh-cn/]]

* Android:[[Tiddloid|https://github.com/donmor/Tiddloid]] + [[WebDav_Server_Pro_1.17|https://zhuanlan.zhihu.com/p/543783107]]
* Android:[[TidGi-Mobile|https://github.com/tiddly-gittly/TidGi-Mobile]]、[[Tiddloid|https://github.com/donmor/Tiddloid]] + [[WebDav_Server_Pro_1.17|https://zhuanlan.zhihu.com/p/543783107]]

* IOS与IPad:Quine2、VPS(虚拟专用服务器)

Expand Down
33 changes: 33 additions & 0 deletions tiddlers/参数化嵌入.tid
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
created: 20231001061533332
creator: WhiteFall
modified: 20231001120736390
modifier: WhiteFall
tags: 嵌入
title: 参数化嵌入

参数化后的嵌入,为嵌入微件增加了更多的参数定义,允许传递自己定义的参数,允许将字符串和维基文本树传递给嵌入。

嵌入不仅可以嵌入用于呈现任何类型的内容(维基文本、图像、视频),还可以调用特殊变量(进程(宏)、自定义微件等等)并且传递变量给它们。

```js
1. 这里定义了一个进程myproc,它有两个形式参数name, age。
2. 然后通过嵌入调用myproc进程并传递参数为myproc进程的两个形式参数赋值。

\procedure myproc(name,age)
我的名字是 <<name>>,年龄为 <<age>>。
\end

<$transclude $variable="myproc" name="James" age="19"/>
```

自5.3.0起弃用macrocall微件改用transclude调用定义的特殊变量。例如:

```js
<$macrocall $name="my-macro" my-parameter="Elephant"/>

<$transclude $variable="my-macro" my-parameter="Elephant"/>
```

你可以指定嵌入的内容的解析器模式为inline还是block。

$transclude嵌入微件的属性都是以`$`字符开头(v5.3.0)。并且可以自己定义任意参数名,但不包含已经定义的属性名称作为参数名。若要传递以`$`字符开头的参数,你需要在它们前面在加一个`$`符号。列如:`$tiddler` -> `$$tiddler`。
40 changes: 0 additions & 40 deletions tiddlers/参数化嵌入与范本.tid

This file was deleted.

58 changes: 58 additions & 0 deletions tiddlers/范本与文本引用.tid
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
created: 20230821050637305
creator: WhiteFall
modified: 20231001115003468
modifier: WhiteFall
tags: 嵌入
title: 范本与文本引用
url: https://bramchen.github.io/tw5-docs/zh-Hans/#Transclusion%20with%20Templates

! Transclusion with Templates

范本和文本引用有很大相关性。为某个范本指定文本引用所指向的目标条目名称。文本引用,引用的谁?这个谁,就是目标条目。

文本引用,描述一个 【文本片段】(字符串)为 一个条目的字段,或一个数据条目内的一个索引。

文本引用或许可以解释为用于引用某个具体的文本内容。比如说引用某个条目的某个字段的文本内容。

文本引用就是指代某个条目或者某个条目的某个字段,比如说,这个,这个条目的某个东东,那个的某个东东。此文本引用也包括currentTiddler、thisTiddler等变量。


范本条目:[[html-tiddler|$:/core/templates/html-tiddler]]

* `{{A||$:/core/templates/html-tiddler}}`,嵌入范本条目的简单理解。范本条目中最重要的核心 功能实现 是文本引用。
* 首先指定一个通用的文本(比如说任意的一段话),不指定具体是什么内容(使用文本引用,为内容留空用于放入内容)。这就像作文模版一样,指定一个作文模版格式,但不指定放入的内容。
* 然后为这个范本指定A条目作为文本引用的具体条目对象,这时候文本引用有了具体内容(条目A),也有了通用的文本(比如说任意的一段话),这样就形成了一个完整的内容。
* 最后在嵌入到当前条目中。
* 似乎像似:范本引用条目A的数据,这两个条目叠加在一起,最后嵌入到条目中。


!! 示例

!!! 一个预先定义好的范本,可漂亮地呈现标签

您可以套用系统范本 ``$:/core/ui/TagTemplate`` 到一个标签,即可看到一个有下拉选菜单的标签丸:

```
{{Transclusion in WikiText||$:/core/ui/TagTemplate}}
```

显示为 {{Transclusion in WikiText||$:/core/ui/TagTemplate}}

!! 用法

经由范本嵌入就像套用遮罩:假设来源条目包含通用的参照(如遮罩中的眼孔),这些将被替换为目标条目内容(像是戴面罩的人的眼睛)。

范本可以套用于任何条目,不一定是当前条目。完整标记语法为 `{{<目标>||<范本>}}`。缺省的 <目标> 是当前条目 (我们使用于上面的示例中)。

!! TemplateTiddlers范本条目

范本条目实际上并非一个条目类型,它是一个可用于条目的角色。

范本是一种重复使用 WikiText 区块的方法。

借由嵌入范本结合两个条目扩充嵌入的基本功能:

* 包含要显示 WikiText 的范本条目。它可以包含嵌入的引用字段于当前条目
* 当解析参考的字段时,目标条目即标识为当前条目

范本化的最佳示例是 TiddlyWiki 的主要故事河。每个开启中的条目呈现,通过 ViewTemplate 指定如何呈现每个字段。

0 comments on commit 773dd21

Please sign in to comment.