generated at
アイコン補完 (scrapbox-select-suggestion)

2024-07-22現時点で考えているUI
[title] 内を入力
今まで通りの入力補完
アイコン入力するよう指示すれば、 [title.icon] の形式で補完する
同上
[title.icon] 内を入力
アイコン補完モード
アイコンのあるページのみを補完候補にする
projectごとに入力候補をまとめない
入力候補の文字列を表示するかは検討中
一旦アイコンだけ表示するUIで試しみる
[/project/title] 内を入力
これが新しい構想
project補完を起動する
リンク内が /^\/[^\/]+\// とマッチしたときのみ起動
projectの絞り込みとtitleの絞り込みを同時に行う
project部分
Bitap algorithmで検索する
[/query/] で完全一致あいまい検索
をwild cardとみなす
[/ query/] で前方一致あいまい検索
[/query /] で後方一致あいまい検索
[/ query /] で部分一致あいまい検索
[/ query1 query2 /] query1 query2 の両方にあいまい一致する候補を検索する
| でOR検索
検索対象
project name
project display name
結果の表示
project nameで引っかかったときはproject nameのみを、project display nameで引っかかったときはproject display nameのみを表示する
両方引っかかったときは、project nameのみを表示する
本当はprojectのアイコンを示したいが、できるか不明
確定
候補に上がったproject nameを押すと、そのproject nameが / / の間に入力される
補完候補は、titleのほうの補完候補が0でない限り表示したままにする
このproject補完候補リストを、titleを検索するprojectの範囲とする
title部分
今までと同様
検索するproject範囲は、projectの絞り込み結果を使う
何も絞り込まれなければ、予め設定したprojectsを使う
キーでicon挿入モードを切り替えるのはやめる
以前アイコン記法の入力補完で使われていたUI
今は廃止されている


2024-07-22
とりあえず [title.icon] 形式まで
外部projectのアイコンを挿入する機能は入れていない
18:43:38 簡単に入れられた
✅状態遷移再設計 (scrapbox-select-suggestion)useEffect()の排除などのrefactoringが功を奏した
18:43:41 E2Eテスト
なぜか何も表示されなくなっちゃった
計算はされている
18:48:17 うまくいった
takkerがついてしまったのは、 preventDefault() などが動作していないから
18:52:25 /examples/advanced.ts を直した

project絞り込み設定を、アイコン補完リンクの入力補完とで分けておく
UI
アイコンのみを表示し、ページタイトルとproject nameは表示しない
スペース削減目的
ほしいのはアイコンだけで、どのprojectのかはぶっちゃけどうでもいい
一応、title属性でタイトルとprojectを出すようにはする
表示
display: flex;で左から右に、上から下に詰め込む
↓の <ItemList /> をまるごとアイコン補完用Componentに置き換えればいい?
でも候補選択関数のexportあたりは同じ処理だ
候補選択関数のexportを共通処理として切り出して、違うところだけ別のcomponentにする?

#2024-07-22 00:00:00
#2023-04-05 16:19:50
#2023-01-07 06:40:56