タイル型ウィンドウマネージャawesomeのススメ

10,036 views

Published on

2009/12/05のhbstudy #6で発表したライトニングトークの資料です。

Published in: Technology

タイル型ウィンドウマネージャawesomeのススメ

  1. 1. タイル型ウィンドウマネージャ awesomeとその仲間たち 2009/12/05 matsuu
  2. 2. 自己紹介 松鵜 琢人(MATSUU Takuto) Twitter @matsuu 日本タイル型WM推進委員会 発起人 Gentoo Linux Developer パッケージ作成など 最近翻訳にも手を出してます PowerTOP, Redmine, AndroLibなど Twitterボット作ってます @recipetter @secuniadvisory @japanesebible などなど 最近様々な勉強会に出没してます
  3. 3. ウィンドウを手で配置してませんか?
  4. 4. ウィンドウを隙間なく並べたりしてませんか?
  5. 5. タイル型ウィンドウマネージャとは ウィンドウの配置・制御はウィンドウマネージャが自動で行う 原則としてウィンドウ同士が重なることがない ウィンドウの下に隠れて見えない、といった状況が発生しない ほとんどの操作にショートカットが用意されている ウィンドウのマウス操作が最小限、または不要に 無駄なスペースが発生せず、画面を最大限有効に活用できる GNOME/KDE/twm/LXDEと同じ立ち位置 GDMで起動するウィンドウマネージャを指定できる とにかく軽い twm級 低スペックなマシンにも最適
  6. 6. タイル型WMが向いてる人 ウィンドウ同士が重なるとイライラする いつもウィンドウを開く場所が決まってる(並べてる) ショートカットマニア マウスでの操作が煩わしい マルチディスプレイ環境 軽いウィンドウマネージャがほしい
  7. 7. awesomeのススメ dwmベースの元タイル型WM http://awesome.naquadah.org/ 先進的な機能が満載 マルチディスプレイ対応(XRandRもOK) Freedesktop.org準拠 D-Bus対応、XCB対応(XCB必須) Lua言語による様々な拡張機能 (おそらく)ユーザ数が一番多くHOT 大抵のシステムでパッケージが用意されている Fedora, Vineを除く主なLinuxディストリビューション *BSDもOK Googleで検索にくい 「awesome window manager」で検索
  8. 8. awesomeのスクリーンショット
  9. 9. Gimpなどタイルに向かないアプリは例外対応可能
  10. 10. その他メジャーなタイル型WM ratpoison GNU Screen風のショートカット 日本ではメジャー stumpwm ratpoisonの後継プロジェクト Lispで書かれている wmii タイルの制御が独特 xmonad Haskellで書かれたタイル型WM 一番洗練されているがなんせHaskell その他、musca、dwm、i3、larswmなどなど それぞれ特徴が
  11. 11. タイル型ウィンドウマネージャ相関図
  12. 12. xmonadの使用例
  13. 13. awesomeの利用例
  14. 14. タイルWMと相性のよいソフトウェア dmenu / pdmenu メニュー機能 vimperator Mozilla FirefoxでもVim風操作でマウスいらず! stalonetray ウィンドウマネージャにタスクトレイ機能を! slim / orthos xdm/gdm/kdmなどのログインマネージャの代替 conky 壁紙に情報をはりつける(便利じゃないかも) xcompmgr ウィンドウ透過処理など screen/tmux terminalの中でタイル型!
  15. 15. 日本タイル型ウィンドウマネージャ推進委 員会とは http://jp.tilingwindowmanager.org/ タイル型ウィンドウマネージャの認知度アップを目的とした架空 団体 2008年設立 活動内容 Webページで紹介 Wikipediaに記入 ドキュメント翻訳 オープンソースカンファレンスで布教活動 タイル型ウィンドウマネージャをつくったりはしてません 推進するだけです
  16. 16. Windowsにもタイルの流れが来てます HashTWM / WinSplit / dwm-win32など 実はWindows1.0はタイル型でした 先祖返りが起きているようだ リソースの制約→ありあまるリソースの有効活用 俯瞰するニーズ Windows1.0 HashTWM
  17. 17. Mac OS Xのタイルの流れは少しずつ TwoUp ( http://www.irradiatedsoftware.com/twoup/ ) 無料、単純な分割 SizeUp ( http://www.irradiatedsoftware.com/sizeup/ ) TwoUpの発展版で有料 $4.99~ ウインドウを配置するためのショートカットを提供する それでもタイル型WMほど洗練されていないっぽい 標準機能Exposéがあるからいらない? X11でawesomeやxmonadなどを動かすことはできる 制御できるのはXアプリだけでSafariやiTunesは不可
  18. 18. くわしくは 「日本タイル」で検索
  19. 19. タイル型ポルナレフ 1/3   |l、{   j} /,,ィ//|         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄   i|:!ヾ、_ノ/ u {:}//ヘ      | あ…ありのまま WIMPで 起こった事を話すぜ!   |リ u' }  ,ノ _,!V,ハ |      < 『おれはwindow managerを使っていると思って   fト、_{ル{,ィ'eラ , タ人.       |  たらいつのまにか自分でウィンドウを並べていた』  ヾ|宀| {´,)⌒`/ |<ヽトiゝ     | アイコンの整列だとかファイル名でソートだとか   ヽ iLレ  u' | | ヾlトハ〉.       | そんなチャチなもんじゃあ 断じてねえ    ハ !ニ⊇ '/:}  V:::::ヽ.   │ もっと恐ろしいものの片鱗を味わったぜ…   /:::丶'T'' /u' __ /:::::::/`ヽ\____________________   |l、{   j} /,,ィ//|         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄   i|:!ヾ、_ノ/ u {:}//ヘ      | あ…ありのまま awesomeで 起こった事を話すぜ!   |リ u' }  ,ノ _,!V,ハ |      < 『awesomeはdwmがcode baseだと   fト、_{ル{,ィ'eラ , タ人.       |  思っていたらいつのまにか別物になっていた』  ヾ|宀| {´,)⌒`/ |<ヽトiゝ     | forkだとかpatch setだとか   ヽ iLレ  u' | | ヾlトハ〉.       | そんなチャチなもんじゃあ 断じてねえ    ハ !ニ⊇ '/:}  V:::::ヽ.   │ もっと恐ろしいものの片鱗を味わったぜ…   /:::丶'T'' /u' __ /:::::::/`ヽ\____________________
  20. 20. タイル型ポルナレフ 2/3   |l、{   j} /,,ィ//|         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄   i|:!ヾ、_ノ/ u {:}//ヘ      | あ…ありのまま wmiiで 起こった事を話すぜ!   |リ u' }  ,ノ _,!V,ハ |      < 『おれはファイルにechoしたと思っていたら   fト、_{ル{,ィ'eラ , タ人.    |  いつのまにかウィンドウが移動していた』  ヾ|宀| {´,)⌒`/ |<ヽトiゝ              | ショートカットキーだとかログファイルだとか   ヽ iLレ  u' | | ヾlトハ〉.     | そんなチャチなもんじゃあ 断じてねえ    ハ !ニ⊇ '/:}  V:::::ヽ.      │ もっと恐ろしいものの片鱗を味わったぜ…   /:::丶'T'' /u' __ /:::::::/`ヽ   \____________________   |l、{   j} /,,ィ//|         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄   i|:!ヾ、_ノ/ u {:}//ヘ      | あ…ありのまま xmonadで 起こった事を話すぜ!   |リ u' }  ,ノ _,!V,ハ |      < 『普通,XのWMはCで書かれていると思っていたら   fト、_{ル{,ィ'eラ , タ人.    |  ヤツはHaskellで書かれていた』  ヾ|宀| {´,)⌒`/ |<ヽトiゝ             | スクリプト拡張だとかプラグインだとか   ヽ iLレ  u' | | ヾlトハ〉.     | そんなチャチなもんじゃあ 断じてねえ    ハ !ニ⊇ '/:}  V:::::ヽ.      │ もっと恐ろしいものの片鱗を味わったぜ…   /:::丶'T'' /u' __ /:::::::/`ヽ   \____________________
  21. 21. タイル型ポルナレフ 3/3   |l、{   j} /,,ィ//|         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄   i|:!ヾ、_ノ/ u {:}//ヘ       | あ…ありのまま dwmで 起こった事を話すぜ!   |リ u' }  ,ノ _,!V,ハ |      < 『X関係のプログラムはデカいと思っていたら   fト、_{ル{,ィ'eラ , タ人.            |  ヤツは2000行ちょっとのCで書かれていた』  ヾ|宀| {´,)⌒`/ |<ヽトiゝ       | コードゴルフだとかGUIライブラリに丸投げだとか   ヽ iLレ  u' | | ヾlトハ〉.      | そんなチャチなもんじゃあ 断じてねえ    ハ !ニ⊇ '/:}  V:::::ヽ.       │ もっと恐ろしいものの片鱗を味わったぜ…   /:::丶'T'' /u' __ /:::::::/`ヽ \____________________   |l、{   j} /,,ィ//|         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄   i|:!ヾ、_ノ/ u {:}//ヘ      | あ…ありのまま stumpwmで 起こった事を話すぜ!   |リ u' }  ,ノ _,!V,ハ |      < 『普通,WMはCで書かれていると思っていたら   fト、_{ル{,ィ'eラ , タ人.    |  ヤツはCommon Lispで書かれていた』  ヾ|宀| {´,)⌒`/ |<ヽトiゝ             | 末尾再帰だとか継続だとか   ヽ iLレ  u' | | ヾlトハ〉.     | そんなチャチなもんじゃあ 断じてねえ    ハ !ニ⊇ '/:}  V:::::ヽ.      │ もっと恐ろしいものの片鱗を味わったぜ…   /:::丶'T'' /u' __ /:::::::/`ヽ   \____________________
  22. 22. タイル型ジョージ・ジョースター        、--‐冖'⌒ ̄ ̄`ー-、      /⌒`         三ミヽー-ヘ,_    __,{ ;;,,             ミミ   i ´Z,       ゝ   ''〃//,,,      ,,..`ミミ、_ノリ}j; f彡     _)        〃///, ,;彡'rffッ、ィ彡'ノ从iノ彡      >';;,,       ノ丿川j !川|;  :.`7ラ公 '>了        なに?  _く彡川f゙ノ'ノノ ノ_ノノノイシノ| }.: '〈八ミ、、;.)     ウィンドウが重なって   ヽ.:.:.:.:.:.;=、彡/‐-ニ''_ー<、{_,ノ -一ヾ`~;.;.;)    よく見えない?   く .:.:.:.:.:!ハ.Yイ  ぇ'无テ,`ヽ}}}ィt于 `|ィ"~    ):.:.:.:.:|.Y }: :!    `二´/' ; |丶ニ  ノノ     ) :.: ト、リ: :!ヾ:、   丶 ; | ゙  イ:}    それは無理矢理ウィンドウを    { .:.: l {: : }  `    ,.__(__,}   /ノ        並べようとするからだよ     ヽ !  `'゙!       ,.,,.`三'゙、,_  /´        ,/´{  ミ l    /゙,:-…-~、 ) |        逆に考えるんだ   ,r{   \ ミ  \   `' '≡≡' " ノ         「WMに並べられてもいいさ」 __ノ  ヽ   \  ヽ\    彡  ,イ_       と考えるんだ       \   \ ヽ 丶.     ノ!|ヽ`ヽ、          \   \ヽ `¨¨¨¨´/ |l ト、 `'ー-、__             \  `'ー-、  // /:.:.}       `'ー、_           `、\   /⌒ヽ  /!:.:.|           `、 \ /ヽLf___ハ/  {               ′ / ! ヽ

×