TiddlyWiki5 登録した全てのタグをボタンで列挙するスクリプト例

TiddlyWiki をローカルで編集・閲覧できる TiddlyDesktop アプリで、そのウィキのファイルに登録している全てのタグをボタンに表記して列挙するスクリプト例と実行結果を紹介します。

スクリプトで使われる、選択された要素をリストとして扱う list ウィジェットと、その要素にアクセスできる list 使用時の独自currentTiddler 変数の設定についても紹介します。

TiddlyWiki 20251022 公式サイトの一部

※ TiddlyWiki v5.3.8 を使用します。
※ TiddlyDesktop Version0.0.20 を使用します。
※スクリプトは自己責任でご利用ください。

前回の記事

前回は、ボタンを押すと、追加した独自のフィールドに指定した文字列を設定するスクリプトとその実行結果を紹介しました。

スクリプト例

以下は、新規作成する Tiddler に貼り付ける本文です。

<$list filter="[tags[]]">
    <$button>
        <<currentTiddler>>
    </$button>
</$list>

テスト

以下の手順で、新規作成した Tiddler の本文に、「タグをボタンとして列挙する」スクリプトを貼り付けます。

  1. TiddlyDesktop アプリで開いたウィキで、検索ボックスの上側の + (Create a new tiddler)ボタンを押して、 Tiddler を新規作成します。
  2. 新規作成した Tiddler の右上の鉛筆(Edit this tiddler)ボタンを押して編集画面を表示します。
  3. タイトル(例:TestTagButtonList)を入力して、本文に前述のスクリプト貼り付けます。
  4. 編集が済んだら右上のチェックマーク ✔ (Confirm changes thid tiddler)ボタンを押して保存します。
TiddlyWiki5 登録した全てのタグをボタンで列挙するスクリプト例1

保存した Tiddler に、現在この TiddlyWiki ファイルに登録している全てのタグがボタンとして列挙されました

TiddlyWiki5 登録した全てのタグをボタンで列挙するスクリプト例2

タグは、検索ボックス下の Tools タブの tag manager を選択して、TagManager Tiddler を開くと確認できます。

スクリプトの説明

<$list filter="[tags[]]">
    <$button>
        <<currentTiddler>>
    </$button>
</$list>

1行目の $list では、list ウィジェットを用いて、 filter 属性に指定して得られた要素を1つずつ処理できます。

The list widget displays a sequence of tiddlers that match a tiddler filter.

リスト ウィジェットには、tiddler フィルターに一致する一連の tiddler が表示されます。

list: TiddlyWiki v5.3.8 — a non-linear personal web notebook と Google 翻訳

今回は filter 属性に指定した tags[] によって、全てのタグをリストにして、その要素を1つずつ処理します。

filter is a concise notation for selecting a particular set of tiddlers, known as its output. Whenever TiddlyWiki encounters a filter, it calculates the output. Further work can then be done with just those tiddlers, such as counting or listing them.

フィルターは、出力として知られる特定の tiddler セットを選択するための簡潔な表記法です。 TiddlyWiki はフィルターに遭遇するたびに出力を計算します。その後、それらの tiddlers だけを使って、数を数えたりリストしたりするなど、さらなる作業を行うことができます。

Filters: TiddlyWiki v5.3.8 — a non-linear personal web notebook と Google 翻訳

$list で1つずつ扱う要素currentTiddler 変数に設定されています。
※通常 currentTiddler 変数は現在の Tiddler を指しますが、 list の中では異なるようです。

The current tiddler provides the context in which several aspects of WikiText are interpreted.

The title of the current tiddler can always be found in the currentTiddler variable.
The two most common ways in which the current tiddler is changed are:

  • the $tiddler widget
  • the $list widget (when its variable attribute is not overridden)

current tiddler は、WikiText のいくつかの側面が解釈されるコンテキストを提供します。

current tiddler のタイトルは常に currentTiddler 変数で見つかります。
current tiddler を変更する最も一般的な方法は次の 2 つです。

  • $tiddler ウィジェット
  • $list ウィジェット (変数属性がオーバーライドされていない場合)
Current Tiddler: TiddlyWiki v5.3.8 — a non-linear personal web notebook と Google 翻訳

3行目の <<currentTiddler>> では、その変数が持つ文字列、今回はタグの文字列を展開して、ボタンに表記するテキストとして指定しています。

以上で、 $list で全てのタグ要素を1つずつ処理して、各タグの文字列を表示したボタンを列挙しました。

まとめ

  • list ウィジェットを使うことで、 filter 属性で指定した条件で選ばれた要素リストとして扱います。
  • 要素は1つずつ処理され、その要素は currentTiddler 変数に格納されています。

参照サイト Thank You!

記事一覧 → Compota-Soft-Press

コメント

Ads Blocker Image Powered by Code Help Pro

お願い - Ads Blocker Detected

このサイトは広告を掲載して運営しています。

ポップアップを閉じて閲覧できますが、よろしければ

このサイト内の広告を非表示にする拡張機能をオフにしていただけませんか?

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

タイトルとURLをコピーしました