TiddlyWiki 實用 macro:copy-block-1
這是一個 TiddlyWiki 的 macro 教學。這次我們會試試寫一個簡單的 macro ,為這個 Tiddler 的特定文字旁加上一個按紐,按下便會把該文字放到剪貼簿裡。方便在其它程式中使用。
雖然這個功能實作起來十分簡單,但是對放有時需要快速使用把某些已知的特定文字時可是能省下「選擇文字並複製」這個步驟。
甚麼是 Macro?
我們看看甚麼是一個 macro。一個 macro 就是一個程式把你的輸入以自定的方式輸出並放到 Tiddler 的方法。
比如說,如果我們定義了一個名為 display-hello
的 macro 是展示 Hello
這個文字時,我們可以這樣寫:
\define display-hello()
Hello
\end
當我們要使用這個 macro 時,我們可以這樣寫:
<<display-hello>>
又或是這樣寫(這是最原始的用法):
<$macrocall $name="display-hello" />
開始實作這個 macro
好吧,其實我們也要使用 TiddlyWiki 系統內的 Macro 才能完成我們這次的任務。
在 TiddlyWiki 的官網 裡有得多實用的資訊,善用搜尋使可以很容易找到一個名為 copy-to-clipboard 的內置 macro。
於是我們試試使用這個 macro:
我們試試按 copy to clipboard 的按紐,test 這個字真的被放到剪貼簿裡,只是感覺有點奇怪,因為我們看到這個 copy to clipboard 的時候,其實我們不知道將會把甚麼東西放進剪貼簿裡。所以最好的做法是當我們呼叫這個 macro 時,我們能知道自己將會把甚麼放到剪貼簿裡,這段字最好能夠以等寛字體 monospace / code 的方法顯示。
所以,參考了 TiddlyWiki 裡關於 定義 macro 的介紹 後,我們可以寫出以下的 macro:
\define copy-block-1(src) `$src$` <<copy-to-clipboard "$src$">>
這裡的 src 就是輸入到這個 macro 的資料,然後在介紹頁裡可以以 $src$ 的方式把 src 這個輸入文字展示出來,所以如果我們呼叫 copy-block-1
這個 macro 時的效果便會變成這樣,而按下 copy to clipboard 時便會把 test 這個字放到剪貼簿裡。
每一次都要把 macro 寫一次很麻煩啊
放心,就像 以 TiddlyWiki 使用預設文字 般,我們只需要把 macro 的定義放入 $:/tags/Macro
這個 tag 裡,那麼這個 macro 便會被放到系統裡,不用每次定義一次,直接使用便可以了。
如果我們呼叫的文字裡有雙引號怎麼辦?
根據 官網關於呼叫 macro 的介紹 裡,在呼叫 macro 時,除了把要使用的文字放在 ""
(雙引號) 外,我們還可以使用 ' '
(單引號) 或是 """ """
(三個雙引號)
例如:
參考資料
TiddlyWiki 教學:
- 知識連結的工具:TiddlyWiki
- TiddlyWiki 增加預設文字的方法(Snippet)
- TiddlyWiki 表格教學
- 我會用 TiddlyWiki 來做甚麼?
- TiddlyWiki 實用 macro:copy-block-1
- TiddlyWiki 製造記事連結的方法
- 我的 TiddlyWiki 個人任務管理系統
- TiddlyWiki 的收集箱:TickTick
- Zettelkasten 筆記方法在 TiddlyWiki的應用:如何建立雙向連結?
- TiddlyWiki Filter Expression:釋放 TiddlyWiki 十倍威力的工具
- 重新命名 Tiddler 很麻煩?ReLink 這個 Plugin 可以解決這個煩惱
- TiddlyWiki 教學:在每一個 Tiddler 上加入自定義頁面
- TiddlyWiki 教學:在每一個 Tiddler 上加入子分頁連結
- TiddlyWiki 卡頓了?我的效能改善方案
- TiddlyWiki 教學與案例示範:如何在每個 Tiddler 展示反向連結以及相關內容?
- TiddlyWiki 教學與示範:如何像 Evernote 般快速加入 checkbox?(CheckboxWidget、EditorToolbar、ActionSendMessageWidget)
- TiddlyWiki 教學與示範:計算電費的表格
- 在 TiddlyWiki 中使用 CSS 的三個技巧
- 我從 TiddlyWiki 轉到 Obsidian 的經歷
如果你覺得這個內容有用,不妨分享給你的朋友。
這是我的 Facebook、Twitter、Instagram 和 Threads,有興趣的話歡迎 Follow。
如果你認為我的文章有幫助,歡迎 請我喝一杯咖啡。