這是本文件的舊版!
開發 DokuWiki popup plugin
緣起:
實在受夠 DW 欠缺一個真正的 popup plugin 了!
用 HTML 做,也不難啊!(但看來至少一定要附 JS)
- 然後,透過 plugin:inlinejs,把範例 HTML + CSS + JS 放到任何一個 DW 頁面上,也能順利呈現啊!
- 而且我測試過了,popup 內的文字,也可以打入自訂的文字及任何 HTML 元素
那麼,就試試把它做成 plugin,大幅簡化輸入?
- 當然,比較簡單的方法,似乎是把 JS 放到 conf/userscript.js 中就可以用了1)
目標
- 簡單的輸入語法
- popup 內使用一般 DW markup 而非 HTML
- 從
getElementById
變為getElementByClassName
?
參考
- 開發 DW plugin 一般要點:
-
- pseudo-plugin
實做
20200321 準備開始。
20200322 把最基本的 CSS + JS 做成 pseudo-plugin,
搭配類似像這裡面的 HTML 標記碼(而非 DokuWiki 自身語法)
→ 最粗略的 v0.1 Release Original basic method, working · GJRobert/dokuwiki-plugin-popup
然後開始實做 syntax:拿 plugin:ruby 的 syntax.php 來改,目前想先用 [按鈕]^^泡泡內容^^
這樣的語法。
20200323 這個 commit 初步成功,但有多個要修改的問題,而且目前想用的語法似乎會和連結語法 [[...]]
衝突,可能需要改。
3/23 晚上,改成了 [^按鈕文字^]^^泡泡內容^^
然後又改用 [^按鈕文字^](^泡泡內容^)
,暫時可能會先用這個,再來可能要先處理別的問題了 ☞ Issues · GJRobert/dokuwiki-plugin-popup,我可能要想辦法做個表把這些 issue 排個優先順序
20200324 來研究 plugin:folded 的 /syntax,並參考 devel:syntax_plugins
- 看來
getType()
應該用formatting
或container
的
20200325
- 先把按鈕的 div 改為 span 試試 → inline ✅(GitHub 自動把 Issue #5 close 掉了!真神奇
)
- 如果變 inline 的話,就一定需要適當的 style 來顯示 button 了
- 突然想到,以前 TiddlyWiki 的 popup,可以設成只需 hover、不需 click ∴這次我可能也可以考慮是否要調整成不一樣的行為;樣式方面,如果只要 hover 的話,可能不一定要做成有陰影的按鈕
討論區