ログイン
編集不可のページディスカッション情報添付ファイル
"clear/wm_devel"の差分

MMA
2と11のリビジョン間の差分 (その間の編集: 9回)
2011-11-06 23:15:47時点のリビジョン2
サイズ: 2488
編集者: clear
コメント: まーじ
2012-05-04 00:09:36時点のリビジョン11
サイズ: 1775
編集者: clear
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 2: 行 2:
= 動機 =
 * 毎日使って、それで暮らすものだからどうせなら自作したいね
 * X Window Systemの勉強には丁度いいかもね
行 6: 行 3:
= 暫定的仕様 =
 * Xlibで書く
  * awesomeなんかが使っているxcbを使う手もあるが、Xlibを使った小さめのウィンドウマネージャが割とごろごろ出てきて参考にできるので、こちらを使うことに
 * できる限り小さいものにする
  * 現実的に、実装できそうな規模にする
 * 仮想デスクトップ的なものは欲しい
  * dwmみたいなタグベースのものにするか否か
 * タイル型
  * フローティングもサポートするダイナミック型に
  * 具体的なスタイルをどうするかは要検討
   * [[https://wiki.archlinux.org/index.php/Comparison_of_Tiling_Window_Managers#Management_style|いっぱいある]]
 * コンパイル時設定
  * まずもって設定ファイルの仕様を考えてパースするコードを書くのが面倒
  * ヘッダか何かにまとめて書くdwm方式で良いか
  * それなりに使えるようになってからまた考える
 * ウィンドウマネージャの機能として
  * バー/トレイをつけるか
   * バーとは限らないが、仮想デスクトップの状態を把握できる何かは欲しい
   * 既存の優秀なバー/トレイアプリケーションが存在するので必要ならそれを使えばいいか
  * メニューをつけるか
   * いらない? 実装が面倒
   * dmenuあたりを使えば良いか

= 名称 =
 * tinyとかsmallとかminimalみたいな単語は使い尽くされていた
 * どうやらlesserは使われてなさそうな雰囲気
  * レッサーパンダとかLGPLの最初のLとかのlesser
 * ということでlesser window manager
  * 縮めてlswmとかだろうか
= 要件 =
 * ソースさえあればどこでもビルドできる程度に依存関係が少ないこと
  * 仮定:「Xlibくらいどこにでもあるだろう」
 * キーボードによる操作がしやすいこと
 * 最低限の機能を備えること
行 43: 行 16:
 * 「X Window ハンドブック」
行 48: 行 22:
== 実装 ==
 * dwm 5.9
== 参考とする実装 ==
 * dwm
  * タイル型
  * ソースが1つしかないのでとっつきやすいが、細かく追おうとすると読みづらい
  * ソースコードを2000行程度に維持するという原則のためか、コメントも少なめ
 * evilwm
  * evilという名だがコードはすごく親切で読みやすい
  * ウィンドウの装飾はないがちゃんとre-parentしている
  * 設定はコマンドラインオプションで
行 51: 行 32:
  * evilwmからの派生とあるが、中身を見る限り現在はほぼ別物と言って良さそう
  * メニューついてる。設定ファイルにも対応
行 52: 行 35:
  * 最小のWM。最低限何をすればいいかが分かる

= 廃墟 =
 * プロトタイプ1: tinywmのデッドコピー
 * プロトタイプ2: 全画面型

= 日記 =
<<PageList(regex:clear/wm_devel/[0-9]{4}-[0-9]{2}-[0-9]{2})>>

ウィンドウマネージャ開発メモ

要件

  • ソースさえあればどこでもビルドできる程度に依存関係が少ないこと
    • 仮定:「Xlibくらいどこにでもあるだろう」
  • キーボードによる操作がしやすいこと
  • 最低限の機能を備えること

資料

X Window プログラミング

規格

参考とする実装

  • dwm
    • タイル型
    • ソースが1つしかないのでとっつきやすいが、細かく追おうとすると読みづらい
    • ソースコードを2000行程度に維持するという原則のためか、コメントも少なめ
  • evilwm
    • evilという名だがコードはすごく親切で読みやすい
    • ウィンドウの装飾はないがちゃんとre-parentしている
    • 設定はコマンドラインオプションで
  • sithwm
    • evilwmからの派生とあるが、中身を見る限り現在はほぼ別物と言って良さそう
    • メニューついてる。設定ファイルにも対応
  • tinywm
    • 最小のWM。最低限何をすればいいかが分かる

廃墟

  • プロトタイプ1: tinywmのデッドコピー
  • プロトタイプ2: 全画面型

日記

clear/wm_devel (最終更新日時 2013-06-24 01:16:30 更新者 clear)