Chawan TUI Webブラウザ
(chawan.net)- Chawan は、テキストベースのターミナル上で動作する新しい TUI Webブラウザ
- 今回の 0.2.0 バージョンには、MVP 段階の必須機能がすべて含まれており、重大なバグがない状態
- 必須なのは libssh2、libbrotli、OpenSSL/LibreSSL ライブラリのみで、以前のバージョンにあった複数の依存関係は削除された
- amd64 Linux 向けの 静的バイナリと .deb パッケージ も提供されており、配布とインストールが容易
- 次のバージョンでは、レイアウトモジュールの性能改善 と、より良い UI 体験が目標
Chawan 0.2.0 の紹介
Chawan は、ターミナルユーザーインターフェース(TUI)ベースの 軽量Webブラウザ で、テキスト環境で手軽に Web を閲覧できるよう設計されたオープンソースプロジェクト。今回の 0.2.0 バージョンは、最小実行製品(MVP) 段階の主要機能をすべて備えた最初の安定化リリースであり、重大な致命的バグは報告されていない。
配布とインストール
- ソースツリーの tarball が提供されており、自分でコンパイルしたい場合は README の案内に従えばよい
- amd64 Linux 向けの 静的バイナリ 配布版が提供されており、アーカイブを展開した後に
make installコマンドで簡単にインストール可能- 削除は
make uninstallで可能
- 削除は
- 同じ配布版が .deb パッケージ 形式でも提供されており、Debian 系システムですぐにインストールできる
パッケージ管理者向け情報
- Chawan の必須ランタイム 依存関係 は以下の通り:
- libssh2
- libbrotli (libbrotlicommon, libbrotlidec を含む)
- OpenSSL(3.0 以上) または LibreSSL (OpenBSD 7.7 でテスト済み)
- 以前の開発版で使用されていた zlib, libseccomp, termcap/ncurses, libcurl などは、現在は不要になったため依存関係から削除された
- パッケージ化時に問題が発生した場合は、パッチを当てる前にまず開発者へ連絡すると、上流側で直接解決できる可能性が高い
今後の計画
- 今回の 0.2.0 リリースは、想定より時間を要したものの、すべての MVP 機能が揃ったことを受けて正式公開が決定されたバージョン
- v0.2 ブランチでは今後 バグ修正 のみを行い、新機能の追加は master ブランチで継続される予定
- 次回リリースでは、レイアウトモジュールの性能と正確性の改善、および UI の使いやすさ向上 を重点目標としている
プロジェクトの重要性と利点
- Chawan は ターミナル環境に最適化 された Web ブラウザであり、リソースが限られたサーバーや環境でも Web コンテンツへアクセスできる
- 既存のテキストWebブラウザとは異なり、最新の暗号化および圧縮プロトコルへの対応、依存関係の最小化などで差別化されている
- オープンソース方式のため、追加拡張やカスタマイズに有利
1件のコメント
Hacker Newsの意見
nimで書かれたプロジェクトを見るたびにうれしい気持ちになる。nimはC/C++とpythonの間のどこかに位置する、最も興味深い言語だという印象がある。nimコミュニティの規模に比べてユーザーの生産性が高く、自分は詳しくないのにnimについての考えが正しいと確信してしまう。nimが大衆的に成長できなかったのは残念だ。
shiomiruさん、TTYに関する概念を学ぶのに最適なリソースは何か知りたい。無料でも有料でもおすすめがあれば教えてほしい。TTYについては linusakesson.netのTTY紹介記事 を知っているが、termcap/terminfo/cursesまでは説明していないという限界があると認識している。ほかのコメントでは O'ReillyのTermcap & Terminfo という本も言及されていた(オンラインで ここから閲覧 可能)。
Chromeベースのまた別のエンジンをわざわざ使わず、ちょっとした研究用に使える新しい方式が増えるのはいつでも歓迎だ。今日紹介された内容は、学校が終わったら自分で試してみるのが楽しみだ。sixelがない環境では特に役立つ非常にすばらしい代替として、chromiumのterminal port: carbonyl をおすすめする。作者がもう積極的に開発できていないため機能はかなり限定的で、キーボードショートカットやファイル保存など多くの機能は未対応だ。しかしWeb互換性と新鮮さは非常に印象的だと思う。rustの技術を持つ人がこのプロジェクトを引き継いでくれたらと思う。数か月前に見たときは、有力なforkはない状況だった。
こういうプロジェクトは本当に好きだ。テキストベースのサイトを集めたリストがあるといいのにと思う。個人的に好きな2つは plaintextsports.com と lite.cnn.com だ。
本当にすごい。Lenovo M8 第4世代でtermuxから直接ソースをビルドしてみたが、nimを入れるだけでよかった。rootユーザーなしでもきれいにインストールできたのが印象的だった。
本当に美しい実装だ。いくつかの業務で実際に使って、どこまで使えるのか自分で確かめてみたい。HNのサイトがとても見やすい。
自分のWebサイトは常にLinksでも見やすくなるよう努力してきたが、これで新しい候補ができた。CSSが一部サポートされているおかげで、要素間の余白調整など考えるべきことも増える。Linksではmargin/paddingが完全に無視されるので、メニューなどを1行にすっきり並べていたが、これからは事情がもう少し複雑になる。
本当にすばらしいプロジェクトだし、nimで作られている点も称賛したい。
cha example.comと入力すると、基本コマンド(hjklなど)の使い方がまったくわからず戸惑う。数字を押すと左下に表示されるが、それ以外は何の反応もない。MacOS Sequoia 15.5 Apple SiliconとNim 2.24環境で自分でビルドした。Webページは問題なく読み込まれるが、コマンドは動作しない。何か見落としているのか、それともバグなのか気になっている。termcap/ncursesをもう使っていない点が印象的だという意見。これは端末処理を直接やっているという意味なのだろうか。
macOSで
makeコマンド一発で簡単にビルドできたのが印象的だった。elinksの現代的な代替が出てきたのはうれしい。