generated at
別プロジェクトのページを入力補完するUserScript
2020-08-27 06:57:59並列処理を使ってスムーズにしましたtakker
ほぼフリーズしなくなった
同様に/takker/emoji-completionも作成しました
/customize/emoji-selectorの並列処理版
2020-08-27 20:44:29 二重起動防止装置もつけた

hr
完成したZE☆takker

良くも悪くも、プロジェクト単位で閉ざされていたScrapboxがより繋がりやすくなる感じだMISONLN41
良くも「悪くも」繋がりやすくなったなあと、自分で色々入力補完試してみて感じましたtakker
天才udonn
おつかれさまです。完成したなら、タイトルから WIP(Work In Progressだよね)は外したほうがよいと思います。suto3
ですね。
外しましたtakker

hr
夜通しで完成させようと思ったけど力尽きたので紹介しますtakker
takker誰か残りの部分を書いてくれ
03:26 頭がビキビキ痛むので寝ます

何これ
タイトル通りです。
別のscrapbox projectへのページリンクを入力補完できます

メリット
どこのprojectに書くか迷うことがなくなる
事例
入力補完候補にproject名を設定しておけば、どのprojectにページを書いても、入力候補からすぐに見つけ出すことができます!
private projectとpublic projectとの連携強化
個人用private projectから、public projectに載せたメモをより簡単に参照することができます
その逆も可
private projectからpublic projectへページを移動する心理的ハードルが低くなります


まだ作っていないところ
入力候補の確定ができません
コードはできた
入力候補の選択ができない
いちばん大事な機能をまだ実装できていない……orztakker
takkerは力尽きたので、どなたか実装をよろしくおねがいします!!!!
この辺が実装できたら、/customizeに掲載しようと思います。

使い方
次のコードを自分のページに載せる
script.js
import {startSuggestingExternalProjectLinks} from '/api/code/takker/外部projectのリンクの絞り込みテスト/script.js'; // ↓以下のリストに入力候補に入れたいprojectの名前を入れてください startSuggestingExternalProjectLinks(['shokai','hub', 'rakusai', 'daiiz', 'rashitamemo', 'nishio']); // 一度に出る入力候補を設定したいとき: // startSuggestingExternalProjectLinks(['shokai','hub', 'rakusai', 'daiiz', 'rashitamemo', 'nishio'], 10);
[/] の内部にカーソルがあると補完を開始します
出てきたwindowからコピペしてうまいことやってください

試していないこと
private projectのページの入力補完

課題
別projectに移動しても入力補完機能が消えてくれない
UserScriptに記述していないのに機能してしまう
絞り込みの精度が悪い
/shokai/wikiスケールだと引っかかるが
/shokai/wiki スケールだと引っかからない

関連
似たような提案

他にも実装したい機能
別projectの関連ページを表示する
方法は2つ
ScrapScriptsのようにpopupで表示する
ScrapScriptは使っていないのよくわからないのですが、参考になるかと。suto3
UserScriptUserCSS 両方の設定が必要です。
コード量がとんでもないことになっていますね……takker
流石にparserをUserScriptに押し込めるのは無理があるんじゃないかなあ
もちろん、試して見る価値はある
/shokai/ESModulesつかって分散させたり

iOSのSafariで動かないのはどうしてかなーと思ったら、WebkitはNested workerに対応してないのかkokutousha
そんなーtakker
iOSで「?」となったが、これsmartphoneでも発動するのか
でもandroidで試してみたらwindowが崩れて使い物にならなかった……
takker的には、smartphoneでは無効になるように実装したい
iPadにキーボードを付けてScrapboxを使うことがあるんですよねkokutousha
あ、USB接続でkeyboardをつなげるということですね
盲点だった
ついでにiPadの存在を今まで忘れていた
iOS=iPhoneって思い込んでいた
Nested Workerを使わないように書き換えるかー

:igyo:kyamad9

UserScript
UserCSS