JWM

提供: ArchWiki
2015年9月21日 (月) 23:40時点におけるKusakata (トーク | 投稿記録)による版
ナビゲーションに移動 検索に移動

JWM (Joe's Window Manager) は C で書かれた羽のように軽い Xorg 向けのウィンドウマネージャです。Joe Wingbermuehle によって活発に開発されています。Puppy LinuxDamn Small Linux といったディストリビューションのデフォルトウィンドウマネージャです。

JWM は通常状態で約 5 MB しかメモリを使用しません。2009年1月現在、公式リポジトリに含まれている JWM のパッケージの容量は 76 KB を切っており (dwm は 17 KB 以下)、インストールしても 171 KB にしかなりません (dwm は 68 KB)。さらに小さくなるようにコンパイルした場合、ディスク容量は約 136 KB、常駐メモリ使用量は 1500 KB を下回ります。

設定はシンプルな XML ファイル ~/.jwmrc を使って行い、パネルやボタンのカスタマイズをサポートしています。また、システムトレイドックが同梱されています。

インストール

jwmインストールしてください。

警告: Recent SVN snapshots (e.g. 500) have migrated to Mod key masks (e.g. H to 4).

JWM の起動

xinit プログラムを実行して X サーバーと JWM クライアントプログラムを起動してください:

$ xinit /usr/bin/jwm

もしくは、xinitrcexec /usr/bin/jwm を追加してください。詳しくはログイン時に X を起動を参照。

設定

サンプル設定ファイルが /etc/system.jwmrc にあります。~/.jwmrc を作成してください:

$ touch ~/.jwmrc

もしくは:

$ cp -i /etc/system.jwmrc ~/.jwmrc

このファイルを編集することで環境を作成します。利用できるタグ・属性・値の完全なリストは JWM Configuration を見て下さい。

ノート: The rolling content of JWM Configuration is based on the latest SVN snapshot and may not reflect the options available in the the current release.

選択タグの概要

JWM Configuration を参照。

Tips and tricks

<Tasklist> のコントラストの改善

デフォルトの <Tasklist> の設定を変更することでデフォルトの <MenuStyle> とアクティブ時の <WindowStyle> のコントラストスタイルを調和させることができます:

<TaskListStyle>
    <ActiveForeground>black</ActiveForeground>
    <ActiveBackground>gray90:gray70</ActiveBackground>
</TaskListStyle>

<TaskListStyle>
    <ActiveForeground>white</ActiveForeground>
    <ActiveBackground>#70849d:#2e3a67</ActiveBackground>
</TaskListStyle>

ログアウトとリフレッシュ

<Exit/> (Logout) は現在の X サーバーからログアウトするメニューコマンドです。

<Restart/> (Refresh) は設定ファイルを再初期化してメニューとキーバインドを更新するメニューコマンドタグです。

<Restart/><Exit/> は以下のような記述を使うことで Ctrl+Alt 修飾キーにバインドすることができます:

<Key mask="CA" key="r">exec:jwm -restart</Key>
<Key mask="CA" key="e">exec:jwm -exit</Key>

再起動とシャットダウン

systemd が入っている環境では RestartPoweroff メニューオプションを使って再起動・シャットダウンできます。

<Program label="Restart">systemctl reboot</Program>
<Program label="Poweroff">systemctl poweroff</Program>

もしくは、<Key> を使ってコマンドを適当なキーにバインドしてください。

詳しくはユーザーにシャットダウンを許可を参照。

Conky

<StartupCommand> から Conky を実行することで様々なデータを表示することが可能です (例: ノートパソコンのバッテリー残量や AC アダプタの状態)。xfdesktop が Conky と衝突することがあります。以下の方法で回避できます:

  1. Conky FAQ を見て ~/.conkyrc を編集
  2. ~/.jwmrc<Group> Conky を作成して以下の <Option> タグを指定:
<Group>
    <Class>Conky</Class>
    <Option>nolist</Option>
    <Option>noborder</Option>
    <Option>notitle</Option>
    <Option>sticky</Option>
</Group>

最小ビルド

メニューアイコンを使わないようにしたり Xft フォントを無効化することで UI のレスポンスを少しだけ向上させることができます。さらに、カスタムビルドによって外部ライブラリのサポートを削除することで反応性が上がります。副次効果としてリソースの消費量も減ります。Xft サポートを有効にして Xft フォントを使うようにコンパイルした最小ビルドでは、常駐メモリを約 3MB、共有メモリを約 1.5 MB 使用します。Xft サポートを省いてコンパイルすると使用メモリがそれぞれ 1.5 MB 以下、約 1.2 MB になります。詳しくは Arch Build System のページを見て下さい。

PKGBUILD の例

PKGBUILD
pkgname=jwm
pkgver=2.1.0
pkgrel=3
pkgdesc="A lightweight window manager for the X11 Window System"
arch=('i686' 'x86_64')
url="http://joewing.net/programs/jwm/"
license=('GPL2')
depends=('libx11')
backup=('etc/system.jwmrc')
source=(http://joewing.net/programs/jwm/releases/jwm-$pkgver.tar.bz2)
md5sums=('e8fab21b2410eb82032b7c3472af642c')

build() {
  cd "$srcdir/$pkgname-$pkgver"
  ./configure --prefix=/usr --sysconfdir=/etc --disable-fribidi \
  --disable-confirm --disable-icons --disable-png \ 
  --disable-xpm --disable-jpeg --disable-xinerama \
  --disable-xft --disable-xrender --disable-debug 
  make
}

package() {
  cd "$srcdir/$pkgname-$pkgver"
  make BINDIR="$pkgdir/usr/bin" MANDIR="$pkgdir/usr/share/man" \
       SYSCONF="$pkgdir/etc" install
}

最小フォント

<WindowStyle>
-*-fixed-*-r-*-*-10-*-*-*-*-*-*-*

<TaskListStyle>
-*-fixed-*-r-*-*-13-*-*-*-*-*-*-*

<TrayStyle>
-*-fixed-*-r-*-*-13-*-*-*-*-*-*-*

手動タイル

Poor Man's Tiling Window Manager を使うことで JWM にタイリングのサポートを追加することができます。manage.pyPATH を通すことで、様々なタイリング操作をキーに割り当てることができます。例:

<Key mask="H" key="Up">exec:manage.py swap</Key>
<Key mask="H" key="Down">exec:manage.py cycle</Key>
<Key mask="H" key="Left">exec:manage.py left</Key>
<Key mask="H" key="Right">exec:manage.py right</Key>
ノート: Run the env command to list the modified environments of the current user.

トラブルシューティング

ログの確認

X が tty1 で動作していない場合、Ctrl+Alt+F1 で標準出力のエラーとメッセージを確認できます。ターミナルに出力された文字をログに記録する方法は man script を見て下さい。

compton を使用している場合に全てのウィンドウが透過する

~/.jwmrc でウィンドウの透過度を設定してください:

<Inactive>
  <Opacity>1,0</Opacity>
</Inactive>

ターミナルウィンドウが完全に最大化しない

~/.jwmrc にグループを追加して iignore オプションを設定してください。例:

<Group>
 <Class>URxvt</Class>
 <Option>iignore</Option>
</Group>

設定の変更の確認

JWM の設定をチェックしたい場合は、次を実行してください、構文エラーがある場合は行番号付きで表示されます:

$ jwm -p
ノート: Configuration changes are applied after restarting JWM via the <Restart/> command, available on the initial root menu. There is no need to restart the X server for changes to apply. Users are recommended to use jwm -p between configuration changes to ensure valid markup and a stable environment.

参照