日記/2018-03-21 の変更点

お名前:


#author("2018-03-21T16:32:05+09:00","-","-")
#author("2018-03-21T16:51:01+09:00","-","-")
**雑記:a-table を眺めてます。 [#r7695d19]


友瀬は、いわゆる WYSIWYG的エディタは必要ではないと思っています。~
だから、昔からHTMLべたうちに極端に苦労した記憶はないですし、今も pukiwiki のマークアップには基本的に困ってません。

ただ確かに、HTMLにしてもpukiwikiにしても、表だけはちょっと困ることがあるもの事実です。~
いまさらHTMLはともかくとして、Pukiwiki での表は、csv的に「区切り記号で区切った情報列」で提供するもので。~
そらで書こうとすると、面倒なのは否定できないわけです。~
これは他の方にも共通の悩みのようで、公式ページの「欲しいプラグイン」にも似たような話題はしばしば。

で、表記:ちょっとしたライブラリを使って表編集がかんたんにできないか、と考えています。~
それに関するプラグイン検討の覚書。~

''テーブル編集用UIライブラリ、a-table.js''~
https://www.appleple.com/blog/javascript/a-table.html
#region(→続きを読む。)
むにゃむにゃと調べた感じだと、多少の工夫はいりそうですが、いけそうな感じはしました。

***利用者(Wiki編集者)側からみたイメージ。 [#s6fd3902]
ブロックプラグイン、以下のような書式。
#a-table(テーブル名<,fix>)

「テーブル名」で指定された別ページから表データを読み込んで表示するのが基本。

ついでに「表編集」ボタンも備える。~
これを押すと、「表データのページ」を a-table を使った「編集可能」状態で表示する。

「,fix」オプションを置いた場合、編集ボタンを出さない。これによってうっかり編集は避けられる。

編集画面では「編集完了」ボタンがあって、これを押すと表データが書き換えられる。

***プラグイン設計的なところ。 [#z73df33d]

-編集可能画面自体は、ものすごくかんたんにできそう。
--a-tableを使うためのヘッダ記述が必要。~
これはpukiwiki でサポートされている機能で実現できる。
--上記を準備しておけば、pukiwikiの機能で作った html をそのままa-table に食わせることができる。~
というか、普通にhtml として表示させればよい。
---ただし、pukiwikiでの /h(ヘッダ行)指定は、うまく採用されていない。~
---a-table とうまく連携するには、セルごとの「~」指定で thタグにしないとならない。
--その画面に独自に「完了」ボタンを準備して、a-tableプラグインのアクションで拾えばいい。

-肝になるのが、表形式をpukiwiki書式にするメカニズム。~
ここは新規に作らなければならない。
--a-table自体の機能としてa-table.js 内に「getTable」「getMarkdown」というメソッドがある。~
これに類似した「getPKWKmark」みたいなメソッドを作るのがよさそう。~
a-table自体に手をいれることになるのが難点ではあるが・・・
---ちなみに上記「getMarkdown」自体、わりとpukiwiki書式に近い。~
ただし、色やセルマージなどがうまくサポートされていないので、そのままでは使用できない。

----
ご意見などがあれば。
#comment2(below)

#endregion
----

**雑記:regionプラグイン置換の必要性 [#j4881a9f]

いろいろいじっていて気づいたんですが。

このサイトで一般的に使っている折りたたみプラグイン。~
厳密を期すなら、そろそろ使用をやめたほうがよさそうです。

まあ、サイト運用レベルなので、一般の方には関係ないです。


#region(→続きを読む。)

ものすごく単純にいうと、対応HTMLのバージョンの話。

regionプラグインでは、折りたたみのところに[+] というようなイメージがあります。~
これ、HTML的には tableタグを使って描いています。~
このレイアウトのために、ピクセル数で幅指定をしています。


で、pukiwiki 1.5系は、HTML5準拠になっています。~
HTML1.5系では、この「table での幅指定」がNGなのです。

ブラウザはそんなところ厳密には見ないので、普通に表示できてますけどね。

----
幸か不幸か、友瀬は divregion というプラグインを作っているので。

近いうちに、こっちに全面的に移行しようかな、とか思ってます。
近いうちに、こっちに全面的に移行しようかな、とか思ってます。~
すでに少し試しているので、あとで問題がないか微調整。

----
ご意見などがあれば。
#comment2(below)

#endregion
お名前: