1Passwordを閉じるボタンが……ねえ!

Share

1Passwordを使っていたら、いつの間にかウィンドウの 閉じる/最小化/最大化ボタンが消えていた。Ctrl+Wでウィンドウ自体は閉じられるので長らく放置していたけれど、調べてみたら原因がしょうもなかったので共有しておく。

💡
結論
F11を押してみよう

症状

  • ウィンドウ右上の最小化・最大化・閉じるボタンが表示されない
  • タイトルバーも消えている
  • Ctrl+W では普通に閉じられる
  • PC再起動、1Passwordの終了・再起動、アンインストール → 再インストール、いずれも変化なし

原因

ただフルスクリーンモードに入っていただけ。

1Passwordコミュニティの投稿「Lost window minimize buttons top rhc.」で全く同じ症状が報告されていて、コミュニティマネージャーの回答が「F11でフルスクリーンを切り替えてみて」だった。

解決手順

  1. 1Passwordのウィンドウをクリックしてフォーカスを当てる
  2. F11 を押す

これでタイトルバーとボタン類が戻ってくる。ダメな場合は Win + ↓(ウィンドウの復元)でも通常ウィンドウ状態に戻せる。

Read more

外字と訓点を compile-time hash で解く

aozora は青空文庫の外字参照 (※[#「魚+師」、第3水準1-94-37] のような形) を約 14,000 件のテーブルで解決する。このテーブルを runtime の HashMap ではなく phf (perfect hash function) で持ち、コンパイル時に static 配列に焼き込んでいる。この記事はその選択の根拠と、JIS X 0213 → Unicode フォールバックの設計をまとめたもの。 handbook の対応章: Shift_JIS + 外字 resolver。 外字テーブルの形 外字エントリには 3 種類の解決結果があり、それぞれに対応する variant を GaijiEntry に持たせている。 static GAIJI_TABLE: phf::Map<

By Sakashita Yasunobu

青空文庫の .txt を HTML に変換する最短手順

青空文庫 で配布されている .txt ファイルを HTML に変換したい、という用途向けの手順。Rust の知識は要らない。コマンド 1 行で済む。 1. CLI バイナリを取ってくる aozora の Releases ページ から自分の OS 向けのアーカイブを落とす。 OS アーカイブ名 Linux x86_64 aozora-vX.Y.Z-x86_64-unknown-linux-gnu.tar.gz macOS arm64 aozora-vX.Y.Z-aarch64-apple-darwin.tar.gz Windows x86_64 aozora-vX.Y.Z-x86_64-pc-windows-msvc.zip SHA256SUMS も同梱されているので、

By Sakashita Yasunobu

50,000 ノードの AST を 16 回のアロケーションで: bumpalo 借用アリーナの実例

aozora の AST は bumpalo 単一アリーナの上に構築されている。Box<Node> を素直に並べた版に比べてパースが 6.4 倍速、ピーク RSS が 30% 減という結果が出ている。この記事は、その設計判断と Rust ライフタイムの取り回しを実装の視点から整理したもの。 handbook の対応章: Borrowed-arena AST。 問題設定 青空文庫の典型的な作品は約 500KiB のソースで、aozora がパースすると約 50,000 ノードの木に展開される。素直に Rust らしく書けば次のような形になる。 enum Node { Plain(String), Ruby { target: String, gloss: String }, Container { kind:

By Sakashita Yasunobu