要望を受け,& で & ボタンを切り替えられるようにしてみた。通常は動的更新で,全知検索窓まで瞬時にページ内移動するが捕活はしないようにした(他自我内検索中はページ遷移が発生するため捕活してしまう)。
省割キー一覧も調整(様子)。「この一覧を開く/閉じる」の文言が曖昧だったため「キーの一覧を開く/閉じる」にしておいた。
cwebp
}(187)いくつか課題は残ったものの,これで譜類添付機能の基礎が出来た。輪郭選り手の領当てもほぼ完成形と言っていいだろう。本当努を通して,関連仕様検討や,中途半端だった libxtd の譜類操作関連交度の整備なども大きく進んだ。
用合いとしては,録入り中の描写選り手左下に譜類添付ボタンを置き,譜類選択と同時に上信を開始,完了したら埋め込み記法で +[拡張子]
を追記,下見を開く(開いている場合は更新する)という形になった。すでに同拡張子の添付譜類が存在する場合は上書きする。予定通り,描写内の参照を消して描き出し・描き直し,または輪郭削除で削除されるようにした。
当初,譜類選択後に専用の下見機能付き小窓を開き,確認してから送信,という用合いを考えていたが,素早く描き出したい場合に煩雑になり,交度の複雑化に見合わない可能性があるため見送った。「送信中...」,「+[拡張子]
を追記しました。」,「.[拡張子]
で保存しました。」(上書きの場合)の3種類のメッセージを @msg
で表示し,下見に関しては既存の下見機能を利用すれば十分なことに気付いた。描き出し前には上信せずスクリプトで保持することも検討したが,これもページ遷移などへの対応も考えると無駄な複雑化を招く可能性があるため見送った。
対応形式はとりあえず JPEG,PNG,GIF,WebP のみ。WebP 以外の場合は長辺が1920px以下の WebP に変換する。WebP の上信に関しては,ImageMagick の未対応パッケージがまだ多いことなどから,1MiB のサイズ上限のみで対応することにした。その他譜類のサイズ上限は原則として5MiB。サイズ上限以外は基本的に kn upl
の仕様に合わせたが,cwebp が ICC プロファイルも捨ててしまう問題に気付いて kn upl
ともども -metadata icc
を加えた。
埋め込み記法では,拡張子のみ,知番と拡張子の組み合わせに加えて,輪符と拡張子の組み合わせにも対応した。
下見機能を利用するために添付譜類の舞覧隠し戦略も見直した。結局,譜類の更新時印から隠し破りを付与出来るようにし,隠し破りの有無で Cache-Control
の public
と no-cache
を切り替えられるようにした(5歩。これまでは一律 no-cache
だった)。Dex が実譜類に依存するのは水平拡大を考えるとどうかと思ったが,そのうち KNEST 隠し化すればいいと判断した。
最後の最後で,領下手定め環境で問題なかった新規描出フォームの添付譜類が本番環境では 404 Not Found
になるという問題にはまったが,これは systemd の PrivateTmp
による問題であることが分かり,一時的に無効化してから問題無いように修正し,元に戻した。新規描出フォームでは無駄に永続譜類を残さないように /tmp/
を利用していたことが原因だった。最終的に,これが大して意味を持たない設計になったので再描出フォームと同じ自我台録を利用することにした。
Cache-Control
}{希哲17年3月24日の進捗時限}{適切に}(31)ダークテーマ実装ではテーマ切り替えボタンの機能実装も概ね完了し,残すは装体整理のみとなった。今後は色設定の CSS 変数への置換を中心に「装体整理兼ダークテーマ実装」を少しずつでも進め,機能公開を目指す。
テーマ切り替えボタンの機能は25日4歩の検討通りで,初期状態では司組設定に追従,司組設定と異なる方に切り替えると固定,同じ方に切り替えるとまた司組設定に追従する。ただし,実装としては初期化というよりライトテーマとダークテーマ,固定有無の組み合わせで4種類の状態を持たせることにした(後縁で非固定設定も認識させたいため)。
外観については drop-shadow
で影を付けたり月アイコンの方向を変えたり調整することを考えていたが,結局,現状維持とした。影は限りなく薄く付けても不必要に重たく見える。月アイコンも,欠けている部分が左向きの方が縁に沿うので調和的に見える。
状態はクッキーで保存するため後縁での最適化も出来,単純なトグルボタンのみで4種類の状態を直感的に切り替えることも出来,見触れも良好,と理想的なテーマ切り替えボタンが出来上がった。
舞覧の開発者通類でテーマの司組設定を簡単に切り替えられることを知り,手定めも捗った。