ユーザスクリプトどうやって開発してる?
nishio.icon知りたい
まとめ: つけようかなと思ってた「リロードなしでeval」をやっぱりみんな欲しいのだとわかったのでその方針で作ります
「VSCodeで書いてScrapboxに貼りつけてリロードしてOKおして動作をみる」を繰り返すの辛い
わかるsta.icon
URLで指定できるタイプの場合、昔はよくpython -mSimpleHTTPServer (Python 2.x)とかやってローカルでHTTPサーバを立ち上げてた
各種サービスがHTTPSに移行してHTTPサーバからの読み込みを蹴るようになって使えなくなった
その後、Dropboxに置いてShareすることでHTTPSでサーブさせるとかしてた
やったことないけど今だとwebpack devserverをHTTPSで立てるとか?
なんか色々複雑で何をどうしたら昔みたいにサクッとサーブできるのかわからない
そもそもScrapboxはlocalhostからimportできないか?
Refused to load the script 'https://localhost/foo.js' because it violates the following Content Security Policy directive: "script-src 'self' cdnjs.cloudflare.com maps.googleapis.com 'unsafe-eval' helpfeel-tweaks.helpfeel.com js.stripe.com なるほどhostsをいじってローカルで動かしてるプロキシを指せば()
なるほど、コードブロックをevalするボタンをつけるわけですねnishio.icon
chrome拡張したりdenoからbuildしたりは全然わからないのでそこらへんはtakker.iconに聞いてみたい
入力補完とかができないつらみはあるyosider.icontakker.icon
Scrapbox関係ない部分のロジック(純粋なJSの書き方やアルゴリズム)は手元 or repl.itで書いて、Scrapboxに関係がある部分だけ原始的なやり方(手元で書いてコピペしてリロードする、直接Scrapbox上でコード書く等)sta.icon 後者の機会をなるべく減らすようにしている
が、それでも辛い
それにこういう区別なしに思いついたのガリガリ書きたい場合はやっぱり辛い
開発コンソールで動きそうかチェックして、エディタに貼って整形
開発コンソールには履歴・補完がある
ないよりまし
素のJSの場合
takker.icon
コードを直したら手動で再読込した後、これまた手動で開発コンソールから読み込み直した
当然だが非常に時間を食う
まずreloadするのに時間を食う
コードの修正も大変
ほんの些細なスペルミスや括弧の対応ミスも、いちいちブラウザを再読込しないと分からない
formatterもlinterも入力補完もないので
普通に考えたら狂喜の沙汰だが、takker.iconはそれにすっかり慣れてしまった 狂喜…やばい世界ですねyosider.iconerniogi.iconSummer498.icon 最近はGit管理に移行させている
codingはDeno & Vimでやっている
linter、formatter、入力補完を使えるのでだいぶ楽になった
試すたびに手動で再読込しなければらないないのは依然変わらない
ある程度小規模なコードなら再読み込みが不要なので少し楽になった