開發 DokuWiki popup plugin

緣起:

實在受夠 DW 欠缺一個真正的 popup plugin 了!

HTML 做,也不難啊!(但看來至少一定要附 JS)

  1. 然後,透過 plugin:inlinejs,把範例 HTML + CSS + JS 放到任何一個 DW 頁面上,也能順利呈現啊!
    • 而且我測試過了,popup 內的文字,也可以打入自訂的文字及任何 HTML 元素

那麼,就試試把它做成 plugin,大幅簡化輸入?

  • 當然,比較簡單的方法,似乎是把 JS 放到 conf/userscript.js 中就可以用了26)
· ghsrobert
  1. 簡單的輸入語法
  2. popup 內使用一般 DW markup 而非 HTML
  3. getElementById 變為 getElementByClassName

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 初步成功,但有多個要修改的問題,而且目前想用的語法似乎會和連結語法 [[...]] 衝突,可能需要改。

插曲:一次自動新增多個 GitHub issue


3/23 晚上,改成了 [^按鈕文字^]^^泡泡內容^^
然後又改用 [^按鈕文字^](^泡泡內容^),暫時可能會先用這個,再來可能要先處理別的問題了 ☞ Issues · GJRobert/dokuwiki-plugin-popup,我可能要想辦法做個表把這些 issue 排個優先順序


20200324 來研究 plugin:folded 的 /syntax,並參考 devel:syntax_plugins

  • 看來 getType() 應該用 formattingcontainer

20200325

  • 先把按鈕的 div 改為 span 試試 → inline ✅(GitHub 自動把 Issue #5 close 掉了!真神奇 :o
  • 如果變 inline 的話,就一定需要適當的 style 來顯示 button 了
    • 突然想到,以前 TiddlyWiki 的 popup,可以設成只需 hover、不需 click ∴這次我可能也可以考慮是否要調整成不一樣的行為;樣式方面,如果只要 hover 的話,可能不一定要做成有陰影的按鈕
    • → 開了一個 branch「ohhover」來修改。但是隨即發現,不是叫 onhover,而是 oumouseoverXD28)
      → 好了,總之弄出來了。

20200330

  • 昨天承 3/24,試著開始修改 getType() 等,想解決容納其他 DW 語法的問題,但參考發現要改的甚多 ∴暫時改到一半,留在 master branch 裡 ☞ #3 1 hour ago
  • 語法不好啃,改改 style 總行了吧?→ 開 styles branch 並試做基本樣式,再 merge 到另兩個 branch = close 掉 #9 Proper style for button

20200331

  • 再找找看其他可資參考的 plugin:
    • abbr 似乎不是我要的 ∵它產生的也是 HTML <abbr> tag,裡面應該是裝不了 DW 語法
    • DW 內建 footnote 功能其實挺不錯的,要是可以擴充就好了
      ↑嗚 QQ 好幾支 core script 要看喔,主要在 /inc/parser 裡的樣子,handler、lexer、parser、renderer、xhtml 等 .php 可能都有 "@@"
    • autotooltip?← 應該不行,它的 getType() 也是 substition

輸入您的意見. 允許使用維基語法:
L K V T᠎ P
 
  • 上一次變更: 2020/04/01 01:25
  • ghsrobert