PekWM

提供: ArchWiki
ナビゲーションに移動 検索に移動

Pek Window Manager は Claes Nästen によって書かれました。コードは aewm++ ウィンドウマネージャをベースとしていますが、もはや aewm++ の面影は全くないくらいに進化しています。PekWM には様々な機能が揃っており、ウィンドウのグループ化 (pwm, fluxbox と同様)、自動プロパティ、xinerama、キーチェインをサポートするキーグラブなど、拡張された機能セットも備えています。

インストール

pekwm パッケージをインストールしてください。

起動

xinit を指定して pekwm を実行します。

PekWM の設定

メインの設定は ~/.pekwm/config ファイルに保存されています。ワークスペースやビューポートの設定、メニューやハーバーの挙動、ウィンドウエッジの抵抗などを設定します。PekWM ドキュメント に完全なドキュメントが付属したサンプルファイルが存在します。

メニュー

PekWM にはデフォルトでメニューが付属しており ~/.pekwm/menu に保存されています。使用しているシステムから作られたメニューではないので、使えるかどうかは微妙です。あくまでサンプルとして考えて下さい。

MenuMaker

インストールしたアプリケーションのメニューを自動的に作成する方法として menumaker があります。インストールしたアプリケーション全てのメニューを設定する場合は次のコマンドを実行してください:

mmaker --no-desktop pekwm
ノート: 上記のコマンドは既存のメニューファイルを上書きしません。上書きしたい場合は、コマンドに -f フラグを付けてください。

オプションのリストを見るには、mmaker --help を実行してください。

メニューファイルを手動で修正しても良いし、新しいソフトウェアをインストールするたびにリストを再生成するのも良いでしょう。

pekwm-menu を使う

AURpekwm-menuAUR は freedesktop.org の xdg メニュースペックに基づいてアプリケーションが動的に更新されるメニューを作成します。使用方法は簡単です。~/.pekwm/menu ファイルに以下のようなセクションを追加してください:

 Submenu = "Applications" { Icon = "ICON"
   Entry { Actions = "Dynamic pekwm-menu MENUFILE" }
 }

"ICON" と "MENUFILE" は適当なアイコンとメニューファイルに置き換えてください。メニューファイルは gnome, xfce, lxde などが作成します。Xdg のメニューファイルは通常 /etc/xdg/menus に保存されます。

オプションのリストを確認したいときは pekwm-menu --help を実行してください。

手動

メニューファイルは ~/.pekwm/menu です。構文はとても簡単です。エントリは以下のようになっています:

Entry = "NAME" { Actions = "Exec COMMAND &" }

サブメニューは以下のようになります:

Submenu = "NAME" {
     Entry = "NAME" { Actions = "Exec COMMAND &" }
     Entry = "NAME" { Actions = "Exec COMMAND &" }
}
ノート: 括弧は必ず閉じるようにしてください。閉じてないとエラーが発生してメニューが表示されません。

メニューに分割線を追加するには、以下を使ってください:

Separator {}

PekWM はダイナミックメニューもサポートしています。エントリやサブメニューを開くたびにスクリプトの実行結果が表示されるメニューエントリやサブメニューです。メニューが必要とする正確な構文をチェックしてください。

Gmail とネットワーク接続用の動的メニューや、時刻と日付を表示するメニューがあります。

以前は、pekwm_menu_tools というプロジェクトがあり、pekwm の動的メニューを生成するための便利なアプリケーションのセットを目指していました。

ホットキー

ホットキー設定は ~/.pekwm/keys に保存されます。このファイルは、PekWM で使用されるすべてのキーボードバインディングとキーチェーンを制御します。キーボードバインディングを追加して、プログラムを起動したり、メニューの表示、ウィンドウの移動、デスクトップの切り替えなどの PekWM のアクションを実行したりできます。pekwm のアクションの完全なリストについては、the documentation を参照してください。

1つのキーの組み合わせに複数のアクションを割り当てることができます。これを行うには、アクションをセミコロンで区切るだけです。以下に例を示します:

KeyPress = "Ctrl Mod1 R" { Actions = "Exec osdctl -s 'Reconfiguring'; Reload" }

Ctrl+Alt+R を押すと、Pekwm は画面に 'Reconfiguring' というテキストを表示し (osdctl -s 'Reconfiguring')、再構成 (リロード) します。(これには osdsh がインストールされている必要があることに注意してください)

次の例では、メディアキーをバインドして音量を下げます:

KeyPress = "XF86AudioLowerVolume" { Actions = "exec amixer set Master 5%- unmute &" }

キーの チェーン も実行できます。たとえば、次のようなコードです。

Chain = "Ctrl Mod1 C" {
     KeyPress = "Q" { Actions = "MoveToEdge TopLeft" }
     KeyPress = "W" { Actions = "MoveToEdge TopCenterEdge" }
}

最初に Ctrl+Alt+c を押してから q を押すとアクティブなウィンドウが画面の左上隅に移動し、Ctrl+Alt+c を押してから w を押すとウィンドウが上端に移動します。

マウス

マウス設定は ~/.pekwm/mouse に保存します。このファイルもわかりやすいレイアウトになっています。例:

FrameTitle {
     ButtonRelease = "1" { Actions = "Raise; Focus" }
}

これは、ウィンドウのフレームタイトル上でボタン 1 (通常はマウスの左ボタン) を放すと、そのウィンドウが他のウィンドウの上に "Raised"、フォーカスされたウィンドウになることを意味します。

PekWM がデフォルトで行うように設定されているものの 1 つは、("クリックしてフォーカスする" スタイルとは対照的に) マウスがウィンドウ上に移動したときにウィンドウにフォーカスすることです。これは、かなりの数のユーザーが、より "伝統的な" 方法に変更したいと考えているものの 1 つです。これを変更するには、ファイル内で次の行を探し、その内容を実行します (最初の行はかなりの数ありますが、2 番目の行は 1 つしかありません)

# Remove the following line if you want to use click to focus.
# Uncomment the following line if windows should raise when clicked.

スタートアッププログラム

スタートアッププログラムファイルは ~/.pekwm/start です。Pekwm を起動するたびに壁紙を表示したり、パネルを起動したりしたい場合は、そのファイルにこれらのエントリを追加できます。ただし、これらのアプリケーションは、ルート メニューで '再起動' を実行するときも含め、Pekwm が起動されるたびに実行されることに注意してください。コマンドは Pekwm の起動後にのみ実行されます。

アプリケーションを追加するには、次の構造を使用します:

nameofapplication &

最後の & は重要であり、それ以降は実行されません。以下に例を示します:

xfce4-panel &
conky &
hsetroot -fill ~/images/darkwood.jpg &

このファイルを使用する前に、ファイルを 実行可能 にする必要があります。

Variables

Variables ファイルには PekWM で使用する一般的な変数を記述します。デフォルトエントリを見ればすぐに分かります:

$TERM="xterm -fn fixed +sb -bg white -fg black"

PekQM の設定ファイルで $TERM 変数を使用した場合、xterm -fn fixed +sb -bg white -fg black コマンドが実行されます。以下のように変更することでターミナルコマンドで urxvt がロードされるようになります:

$TERM="urxvt"

Autoproperties

特定のワークスペースで特定のアプリケーションを開かないようにしたい場合や、(ウィンドウ) メニューを省略したい場合、自動的にタブに収納したい場合、Autoproperties ファイルで全て指定することができます。おそらく PekWM で一番複雑な設定ファイルですが、最も強力なファイルでもあります。設定できることはここに書くには多すぎるため、詳しくは ドキュメントの autoproperties のページ を見てください。デフォルトの ~/.pekwm/autoproperties ファイルを見るのも手っ取り早いでしょう。

テーマ

テーマをインストールするには、圧縮ファイルを解凍してテーマのディレクトリに配置してください:

  • グローバル: /usr/share/pekwm/themes
  • ユーザー別: ~/.pekwm/themes

壁紙の設定

pekwm 0.2.0 リリースには、pekwm_bg という名前のバックグラウンド設定アプリケーションが含まれています。

スケーリングされた背景画像を設定する:

$ pekwm_bg Image image.png#scaled

3 本の水平線を設定する:

$ pekwm_bg LinezHors 33% #afadbf #9f9daf #afadbf

pekwm 0.1.X リリースには背景設定アプリケーションが付属しておらず、デスクトップの壁紙を設定するには別のプログラムを使用する必要がありました。アプリケーション一覧/その他#壁紙設定を参照してください。

トラブルシューティング

Nvidia TwinView を使用すると、ウィンドウが両方の画面で最大化される

~/.pekwm/config を編集して以下の行を:

HonourRandr = "True"

次のように変更してください:

HonourRandr = "False"

GTK 3 アプリケーションでスクロールが出来ない

GDK_CORE_DEVICE_EVENTS環境変数に設定してみてください。pekwm issue #4 を参照。

参照