cwc

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

関連記事

cwc は、 wlroots に基づいた動的ウィンドウ管理を提供する拡張可能な Wayland コンポジタです。 Awesome ウィンドウマネージャーに強く影響を受けており、設定には Lua を、拡張には C プラグインを使用します。

インストール

cwcAUR パッケージを インストール してください。開発版は cwc-gitAUR です。

起動

使用している ディスプレイマネージャのメニューから cwc を選択してください。

LXQt

LXQt#Wayland_Session

設定

システム全体の cwc 設定ファイルは /usr/share/cwc/defconfig/ にあり、ユーザー用の設定ファイルは ~/.config/cwc にあります:

  • rc.lua — cwc のメイン設定ファイル
  • keybindings.lua — cwc のキーバインド設定
  • oneshot.lua — 起動時にアプリを起動するための設定

設定ファイルの作成

まず、次のコマンドで必要なディレクトリを作成します:

$ mkdir -p ~/.config/cwc/

cwc は起動時に ~/.config/cwc/rc.lua にあるユーザー設定を読み込みますが、このファイルはデフォルトでは存在しないため、テンプレートからコピーします:

$ cp /usr/share/cwc/defconfig/* ~/.config/cwc/

自動起動

自動起動の設定は ~/.config/cwc/oneshot.lua で行います。

たとえば、以下のように記述できます:

cwc.spawn_with_shell("swaybg --output '*' --color '#222222'")

壁紙

壁紙の設定には fehswww などのツールが使用できます。

ヒントとテクニック

スクリーンショット

PrtSc キーが正しく割り当てられているかをキーボード入力で確認し、スクリーンキャプチャプログラム である flameshot をインストールしてください。

globalkeys 配列に以下を追加します:

kbd.bind({ MODKEY }, "Print", function()
   cwc.spawn_with_shell("flameshot full")

ウィンドウの隙間を削除する

ウィンドウ間の隙間を削除するには、screen/tag config テーブルの properties セクションに以下を追加します:

 cwc.screen.set_useless_gaps(3)

メディアコントロール

alsa-utils に含まれる amixer(1)playerctl を使用して、音量やメディア再生のコントロールが可能です。以下のコードを rc.lua の該当するキーバインドセクションに追加してください:

  ------------ Audio Media Keys
   kbd.bind({}, "XF86AudioLowerVolume", function()
       local cmd = string.format("pactl set-sink-volume @DEFAULT_SINK@ %s%%", "-3")
       cwc.spawn_with_shell(cmd)
   end, { exclusive = true, repeated = true })
   kbd.bind({}, "XF86AudioRaiseVolume", function()
       local cmd = string.format("pactl set-sink-volume @DEFAULT_SINK@ %s%%", "+3")
       cwc.spawn_with_shell(cmd)
   end, { exclusive = true, repeated = true })
   kbd.bind({}, "XF86AudioMute", function()
       cwc.spawn_with_shell("pactl set-sink-mute @DEFAULT_SINK@ toggle")
   end, { exclusive = true })
   kbd.bind({}, "XF86AudioMicMute", function()
       cwc.spawn_with_shell("pactl set-source-mute @DEFAULT_SOURCE@ toggle")
   end, { exclusive = true })
   -------------- Media Player Keys
   kbd.bind({}, "XF86AudioPlay", function()
       cwc.spawn_with_shell("playerctl play-pause")
   end, { exclusive = true })
   kbd.bind({}, "XF86AudioNext", function()
       cwc.spawn_with_shell("playerctl next")
   end, { exclusive = true })
   kbd.bind({}, "XF86AudioPrev", function()
       cwc.spawn_with_shell("playerctl previous")
   end, { exclusive = true })
   kbd.bind({}, "XF86AudioStop", function()
       cwc.spawn_with_shell("playerctl stop")
   end, { exclusive = true })
   kbd.bind({}, "XF86AudioRewind", function()
       cwc.spawn_with_shell("playerctl position 5-")
   end, { exclusive = true })
   kbd.bind({}, "XF86AudioForward", function()
       cwc.spawn_with_shell("playerctl position 5+")
   end, { exclusive = true })

トラブルシューティング

Java の修正(GUI が灰色にしか表示されない)

Java#Gray window, applications not resizing with WM, menus immediately closing[1] を参照してください。

参照