Alopex
Alopex (旧名 TTWM) は tinywmAUR, dwm, i3wm の概念や要素を併せ持ったミニマルなタイル型ウィンドウマネージャです。monsterwm などの他の素晴らしいタイル型ウィンドウマネージャからインスピレーションが得られています。Alopex はウィンドウをタイルレイアウトと縦横のスタックレイアウト、一時的なフローティングとフルスクリーンモードで管理します。
目次
インストール
AUR から alopex-gitAUR をインストールしてください。PKGBUILD を取得して以下のコマンドを実行するだけです:
$ makepkg -si
推奨ドキュメント
Alopex には3つの man ページがあります (alopex.1
, alopex.config.5
, alopex.icons.5
)。このページの情報についてより詳しいことが書かれています。
基本的な使い方
デフォルトでは、Alopex は以下の4つの修飾マスクを使います:
参照 | キー |
---|---|
KEY1
|
"Super" |
KEY2
|
"Alternate" |
KEY3
|
"Control" |
KEY4
|
"Shift" |
プログラムの起動
Dmenu は Alopex の便利なアドオンです。リスト式やドロップダウンのメニューと違って、dmenu はキーボードで入力するプログラムランチャーです。Alopex の推奨ランチャーであり、デフォルト設定では dmenu の起動が KEY1
+ p
に割り当てられています。
タグを使う
ウィンドウに特定のタグを割り当てるには、操作するウィンドウをまずフォーカスする必要があります。フォーカスは KEY1
+ j
や KEY1
+ k
で出来ます。
アクション | キーバインド |
---|---|
タグ "x" を表示 | KEY1 + x
|
タグ "x" に移動 | KEY1 + KEY2 + x
|
タグ "x" を割り当てる | KEY1 + KEY3 + x
|
タグ "x" の表示を切り替え | KEY1 + KEY4 + x
|
ウィンドウレイアウト
Alopex には3つのベースレイアウトがあり、一時的なフルスクリーンとフローティングモードで補完しています: Vertical と Horizontal の Stacking と "Monocle" (ステータスバーのタブが表示されるフルスクリーン) です。デフォルトでは、縦のスタックレイアウトが使用されます。KEY1
+ space
を押すことで3つのレイアウトを切り替えることが可能です。以下のショートカットを使うことで各モードを直接選択することができます:
モード | キーバインド | 表示されるウィンドウ | 配置 |
---|---|---|---|
V-Stack (rstack) | KEY1 + KEY2 + r |
3 | 左側に Master、右側にスタック |
H-Stack (bstack) | KEY1 + KEY2 + b |
3 | 上部に Master、下部にスタック |
Monocle | KEY1 + KEY2 + m |
1 | 各ウィンドウの可変タブ |
stackcount
オプションを使うことで、スタックに表示するウィンドウの数を指定できます。KEY1
+ =
や KEY1
+ -
でスタックに表示するウィンドウの数を動的に増減することも可能です。さらに、KEY1
+ .
で全てのウィンドウが表示されます。
終了
ウィンドウを終了するには KEY2
+ F4
を押します。Alopex の終了は KEY1
+ KEY4
+ Q
です。
高度な使い方
カスタム設定
先に触れたとおり、Alopex の設定は主にソースファイル (config.h
と icons.h
) を編集することでコンパイル時に行います。上流のデフォルト設定で大抵は問題ありませんが、ユーザー設定をするのは難しくありません。
#インストールに書かれているように、alopex-gitAUR は $HOME/.alopex_config.h
と $XDG_CONFIG_HOME/alopex/config.h
を確認して、ファイルが存在する場合、ビルドを始める前にデフォルトの config.h
を置き換えます。makepkg を使ってソースを取得した後、config.h
を $HOME/.alopex_config.h
か $XDG_CONFIG_HOME/alopex/config.h
のどちらかにコピーして修正を加えて下さい。
設定の変更が済んだら、パッケージディレクトリに戻ってコンパイル・インストールしてください:
$ makepkg -si
設定の変更に問題がなければ、カスタマイズされた Alopex がコンパイル・インストールされます。問題があった場合、出力を問題を特定してください。
変更を適用するには、Alopex を(再)起動する必要があります。
カスタムキーバインド
カスタムキーバインドを使うには config.h
を編集する必要があります。カスタムキーバインドをマップするには、以下の構文で keys
配列に必要な行を追加してください:
{ MODKEY, <key>, spawn, CMD("program") },
<key>
はヘックスキーコード (例: 0x68
) や X のキーシム (例: XK_h
) のどちらかで指定できます。キーコードやキーシムは xorg-xev を使って確認してください。(メディアキーなど) XF86 のキーシムを使いたい場合、config.h
の以下の行をアンコメントする必要があります:
#include <X11/XF86keysym.h>
#define
を使うことで複雑なコマンドを使うための特別な関数を定義することもできます:
#define FUNCTION "program -switches --options arguments"
上の構文で CMD(FUNCTION)
を使うことでキーバインドにマッピングできます。
タグのカスタマイズ
tagcons
配列を使うことでステータスバーに表示するタグをカスタマイズすることができます。デフォルトでは、タグには one
から six
という名前が付けられています。tagcons
配列を使うことで、プリフィックス・アイコン・サフィックスを組み合わせて使うことが可能です。以下の構文でタグの外観を追加・カスタマイズします:
static const Tagcon tagcons=[] = { { "prefix", #, "suffix" }, };
上記の #
は icons.h
の一番下にある配列のアイコンの位置です。"prefix"
と "suffix"
はアイコンの前後にタグに付けられるテキストのラベルです。タグにアイコンを表示したくないときは、#
を NO_ICON
か -1
に置き換えて下さい。ラベルをタグに表示したくない場合、"prefix"
や "suffix"
を NULL
に置き換えて下さい。タグの表示される順番は tagcons
配列のタグの順番と同じになります。
ステータスバー
スクリプトやプログラムを引数として Alopex に渡すことで、ミニマルなステータスバーを作成することができます。CPU の競合 を避けるために、Alopex には何も指定されなかった場合のデフォルトのステータスバースクリプトが存在します。このデフォルトスクリプトはシンプルな時計だけを表示します。スクリプト (あるいは小規模なプログラム) を書いたり conky などのステータスバープログラムを使うことで、もっと強力なステータスバーを使うことができます。スクリプト (やプログラム) 自体にも引数を指定する場合、ステータスバーの引数全体をクォートで囲って下さい。例えば、Alopex とスクリプトや conky を実行するコマンドは以下のようになります:
$ xinit /usr/bin/alopex "/home/username/script.sh -args"
$ xinit /usr/bin/alopex "conky -c /path/to/conkyrc"
スクリプトの出力の一部 (または全部) をカラー化するには、{#RRGGBB}
を使います。"#RRGGBB" は標準的なヘックスカラーコードで、大括弧で囲むことで他のカラーコードが指定されるまでステータスバーの出力をカラーにします。
カスタムアイコン
config.h
と同じように、Alopex では $HOME/.alopex_icons.h
や $XDG_CONFIG_HOME/alopex/icons.h
で icons.h
をカスタマイズすることでカスタムアイコンセットを使うことができます。
大括弧のカラーコードと同じように、ステータスバースクリプトやプログラムでは {i X}
を使うことでアイコンを参照できます。"X" はアイコンの数字になります。デフォルトの icons.h
をみて、どのアイコンが使えるのか X にはどの値が入るのか確認してください (アイコンの順番はファイルに書かれている配列の順番によって決まります)。
テーマ
コンパイル時にカラースキームを適用するという形で Alopex は初歩的なテーマをサポートしています。テーマは theme.h
で定義されます。デフォルトでは、Alopex には3つのテーマが存在します: WinterCoat
, SummerCoat
, DayLight
。カスタムテーマを追加するのは簡単で、デフォルトの theme.h
を $XDG_CONFIG_HOME/alopex/theme.h
や $HOME/.alopex_theme.h
にコピーして使用したい色の配列を新しく追加するだけです。使用するテーマを選択するには、makepkg
の前に使用したいテーマの名前を MOLT
環境変数に指定してください。例:
$ MOLT=DayLight makepkg -s
テーマが選択されなかった場合、デフォルトでは WinterCoat
テーマが適用されます。
マルチモニターのサポート
Alopex には xrandr による16台までの外付けモニターの実験的なサポートがあります。外部モニターの自動検出はまだ対応していませんが、バージョン 2.1 で計画されています。内部モニターと違って、Alopex は外付けモニターのウィンドウを異なるルールセットで管理します。各ウィンドウには (タグやフラグなどの情報に加えて) モニター番号が割り振られます。モニター番号が利用できるモニターの数より大きい場合、ウィンドウは一番数字が大きいモニターに配置されます。そうでない場合は数字に対応するモニターに配置されます。詳しくは man ページのドキュメントや config.h
を見てください。
ウィンドウルール
Alopex ではクライアントウィンドウの WM_CLASS
プロパティに含まれたリソース名やクラス名を元にウィンドウルールを定義することもできます。以下の構文で config.h
の rules
配列を編集することでルールを追加・編集できます:
static Rule rules[] = { { "name", "class", tags, flags }, }
特定のルールの値を無視するには "name"
や "class"
を NULL
に置き換えて下さい。両方が指定された場合、両方の条件にあてはまる場合にのみルールは適用されます。"name"
や "class"
に使用する値は xorg-xprop で確認できます。tags
に値を指定することでウィンドウを開いたときにデフォルトで設定するタグを指定することが可能です。この挙動を使いたくない場合は、tags
の部分に 0
を使ってください。最後に、flags
の値はウィンドウに特殊なプロパティを指定できます (例: 強制的にフローティングモード)。この挙動を使いたくない場合は、flags
を 0
に置き換えて下さい。詳しい説明は man ページを参照 (#推奨ドキュメントを見てください)。
参照
- Alopex ホームページ
- GitHub の Alopex ソースコード
- dmenu - dwm の開発者によるシンプルなアプリケーションランチャー
- フォーラムの Alopex スレッド
- フォーラムの Interrobang スレッド