window.scrapboxの型定義を実装する
window.scrapboxの型定義ファイルを作る
名前はscrapbox.d.tsにする
背景とか問題とか目的とか
Scrapbox REST APIの型定義を実装するに書いてあることと同じ
TODO
/scrapboxlab/userscriptから使えるscrapboxのobjectを参考に、必要なものを書き出す
/icons/done.iconscrapbox.Page.title
/icons/doing.iconscrapbox.Page.lines
構文を表すobjectを定義するのに時間かかりそう
2021-07-25 14:48:34 とりあえず構文解析以外の情報を定義しといた
scrapbox.Page.linesの型定義を実装
/icons/done.iconscrapbox.Page.id
/icons/done.iconscrapbox.Project.name
/icons/done.iconscrapbox.Project.pages
/icons/done.iconscrapbox.Layout
scrapbox.PageMenu
中身が複雑そうなので後回し
2021-07-25 15:12:25 とりあえず実装した
正確に全てのpropertiesを実装したわけではない
そもそも明らかにバグと思われる挙動がある
scrapbox.PageMenu().reset()を実行してもボタンが消えない
その後scrapbox.PageMenu().emitChage()を実行しないといけない
prototypeの奥深くにある、明らかに公開を想定していない関数
しかも実行したらしたらで全てのボタンが消えてしまう
特定のボタンに大して実行したはずなのに……
これ以上は一旦/forum-jpにissue投げてからにしたほうがよさそう
/icons/done.iconscrapbox.PopupMenu.addButton()
/icons/done.iconscrapbox.TimeStamp.addFormat()
/icons/done.iconscrapbox.TimeStamp.removeAllFormats()
/icons/done.iconUserScript Events
cf. /takker/scrapbox objectに追加されたapiを調べる
非公開変数以外は実装した
非公開変数は外部から操作できないようにしたほうがよさそうなので実装しないでおく
propertiesにJSDocでなるべくコメントを書く
これはこのPRで済ませなくてもいいやtakker.icon