2014年10月3日金曜日

xmonadとHaskell(その16:レイアウトのスクリーンショット)

拡張モジュールにあるレイアウトモジュールは凄く沢山あるが、幾つかの視点から整理してみる。


基本的レイアウト

単独でレイアウトになれる型のデータを含むモジュール。
重なりか、非表示かがわかりやすい様にターミナルを透明にしてスクリーンショットを取ってみた。

工夫次第で使えそうな勧めレイアウト


XMonad.Layout.OneBig
一つだけ大きく



XMonad.Layout.TwoPane
XMonad.Layout.DragPane
画面を二分割で固定。マスターとそれ以外の2ウインドウ制。それ以外は非表示。
DragPaneの方が縦、横の選択等のカスタマイズができる。



XMonad.Layout.GridVariants
GridVariantsモジュールでは、Tallのメイン部分を任意の固定行x列にした上で、サブ部分がグリッド配置になるようにできたりする。



XMonad.Layout.ThreeColumns
メイン1行、サブ2行の固定



XMonad.Layout.MultiColumns
メイン1行、サブ行どんどん増えるが各行のウインド個数を指定できる



XMonad.Layout.Simplest
メイン1画面固定。
サブは非表示ではなく、メインの後ろに表示されている点でFullと異なる。



XMonad.Layout.StackTile
stacktileはdishesに似ているがメイン部分の高さが固定、サブ部分が増えるとサブの高さが小さくなる。



Tall改良版

hintを重視(文字がちゃんと表示される高さとか)

XMonad.Layout.FixedColumn
大きさ等指定を割合じゃなく文字数で

XMonad.Layout.ResizableTile
サブ側の高さがリサイズ出来る


その他のレイアウト

XMonad.Layout.Accordion
複数ウインドを開くとフォーカスのあるもの以外帯状に縮んだ状態になる。



XMonad.Layout.Circle
マスタが真ん中に、サブはその後ろで円状に配置



XMonad.Layout.Cross
マスタが真ん中に、サブはその後ろで十字形状に配置



XMonad.Layout.Roledex
斜めに綺麗に並べられる



XMonad.Layout.Spiral
渦巻き状にタイリング



XMonad.Layout.Mosaic
XMonad.Layout.MosaicAlt
各ウインドウの面積がある一定の法則になってる?


XMonad.Layout.Column
隣接ウインドウとの高さの比を規定



XMonad.Layout.Grid
XMonad.Layout.HintedGrid
Grid系は規則正しく格子状になるように配置をする。



XMonad.Layout.Dishes
メインの下にサブがお皿の用に積み重なっていく。



デコレーション系

xmonadでもタイトルバー的なものを付けることも出来るし、マウスによるボタンクリックによるウインドウ操作も可能にできる。

XMonad.Layout.DecorationAddons
XMonad.Layout.ButtonDecoration
XMonad.Layout.ImageButtonDecoration
各ウインドにバーを付ける



XMonad.Layout.TabBarDecoration
レイアウトにタブを追加する



XMonad.Layout.DwmStyle
各ウインドにDwmスタイルのタグを付ける



XMonad.Layout.DecorationMadness
幾つかのレイアウト(circle,accordion,tall)に飾りを付けたものを提供してくれる


XMonad.Layout.Decoration
テーマやシュリンカをカスタマイズする時のデフォルト値とか


    0 件のコメント:

    コメントを投稿