2025
1216
w3m 改造 再再スタート
ということでまたやりなおし。
libvaxis と合体する方法を考えたのでやってみる。
w3m は block する getch に強く依存した構造になっている。これを最初に置き換えるのは無理なので、 block する input を zig で提供するのはどうか。 ついでに signal のハンドリングを整理できそうな気がする。
できた
stdin と stdout を zig の libvaxis の支配下にすることができた。 sleep_till_anykey を止めてあるが、タイマーによる idle イベントを実装できれば 機能を復旧できると思う。
次は、vaxis の screen(cell) 経由で描画するようにしてみようかな。 これにより termcap(ncurses) 依存が外せるので Windows でも動くようにできる のではないか。
縦か横に画面を分割して、logger を仕込めるようにしたいのよね。 で、 HTTP-1.1 に対応して下のようなエラーおなおしたい。
gzip: stdin: not in gzip formatvaxis を参考に自前の tty 管理を実装する
vaxis に timer による idle event を追加したくて実装を見てみたのだが、 予測に反して epoll ではなかった。 なので、参考にしつつも自前で epoll, signalfd で入力イベントを enqueue するシステムを組んでみよう。 rawmode や mutex queue など参考にできる。
2025
1226
kitty で画像が出るところまで復活
2025
1215