---
title: Hyprland 初期設定とキーバインド
description: インストール後の作業とキーバインド一覧
---

import { Kbd } from 'starlight-kbd/components'
import ImageComponent from '~/components/image-component.astro';
import { Aside } from '@astrojs/starlight/components';

:::note
Hyprland は dwindle (タイリング)、スクロール、マスター、モノクル、そしてカスタムのレイアウトなどに対応する Wayland コンポジターです。最初から機能がそろっている**デスクトップ環境 (DE) ではありません。**
:::

### Hyprland をえらぶ理由

Hyprland はさまざまなレイアウトを用意している美しいダイナミックタイリング型のマネージャーで、可変リフレッシュレート、ティアリング、HDR などのコンポジターとして高度な機能を備えています。CachyOS の Hyprland 用ドットファイルでは、インストール直後から快適に利用できるようなデフォルト設定になっており、各アプリケーションもシステム全体のテーマに統一されるよう調整されています。

**ドットファイル提供: [Jinra](https://github.com/Jinra)**

Noctalia に関する問題については [Noctalia のドキュメント](https://docs.noctalia.dev/)をご覧ください。

## 初期設定
セットアップ後は、ご自身に合わせた設定をいくつか行うことをおすすめします。その他の設定については [Hyprland Wiki](https://wiki.hypr.land/Configuring/Start/) をご覧ください。

### `~/.config/hypr/config`
* `monitors.lua` ではモニター設定を行います。(https://wiki.hypr.land/Configuring/Basics/Monitors/)
  * `output` にはモニター ID を指定します。`hyprctl monitors` で確認できます。(例: `DP-1`)
  * `mode` は `1920x1080@60` といった形式 (横解像度×縦解像度@リフレッシュレート) で指定します。
  * `scale` は通常 `1` のままで問題ありませんが、高解像度ディスプレイではより大きな値を設定したほうが良い場合があります。
  * 初回の変更後のみ再起動が必要ですが、それ以降の変更はリアルタイムで反映されます。
* `variables.lua`
  * モニターの割り当てを設定できます。通常は `PRIMARY_MONITOR` と `MONITOR1` は同じモニターに設定してください。必要に応じて `MONITOR#` を追加・削除できます。
  * モニターごとのワークスペース数を指定してください。ただし 10 以下で設定してください。
* `input.lua` Hyprland での入力操作の設定を行うことができます。特に `sensitivity` (感度) の調節をおすすめします。
* `binds.lua` このドットファイルで用意されているすべてのキーバインドを確認できます。下記の一覧も参考にしてください。
* `windowrules.lua` 特定のウィンドウが特別な動作をする理由を確認できます。また、必要に応じてルールを追加・削除できます。
* `workspaces.lua` ワークスペースに関する設定を行うことができます。設定ファイルの例のように、モニターごとに3つのワークスペースを設定し、プライマリモニターへゲーム用ワークスペースを追加することをおすすめします。
* `environment.lua` は Hyprland の設定やカスタムの環境変数の指定に使います。UWSM を使用している場合は設定の必要はなく、UWSM の環境変数ファイルへ追加する方法をおすすめします。
### `~/.config/uwsm`
* `env` グローバル環境変数を定義するファイルです。`HYPRCURSOR_THEME`, `XCURSOR_THEME`, `QT_QPA_PLATFORM` などのユーザーアカウント全体で使用する環境変数を設定できます。
### `~/.config/noctalia` (バージョン5専用、V4 でも存在するが Noctalia settings から設定できるため編集不要)
* `config.toml` には cachyos-hypr-noctalia のデフォルト設定が保存されています。通常の Noctalia V5 の初期設定と異なるのはこのファイルによるものです。基本的には編集する必要はありません。
### `noctalia settings` (Super + Z)
* Noctalia の設定を変更できます。Templates の項目で使用するアプリケーション向けのカラーテンプレートを有効にすることをおすすめします。
* Plugins Store には、便利な公式&コミュニティ製プラグインも用意されています。

## キーバインド

多くのキーバインドは修飾キー (スーパーキーや Windows キー、コマンドキーとも呼ばれます) を使用します。`binds.lua` から変更することができます。

### ウィンドウ操作

| 説明 | キー |
|------|------|
| アプリ/ウィンドウを強制終了 (キーを押しながら対象をクリック) | <Kbd linux="Super+Escape" /> |
| フォーカス中のウィンドウ/アプリを閉じる | <Kbd linux="Super+Q" /> |
| フローティング/タイル表示を切り替える | <Kbd linux="Super+Alt+Space" /> |
| フォーカス中のウィンドウを最大化 | <Kbd linux="Super+D" /> |
| フォーカス中のウィンドウを全画面表示 | <Kbd linux="Super+F" /> |
| 分割方向の切り替え | <Kbd linux="Super+J" /> |
| 左のウィンドウにフォーカス | <Kbd linux="Super+Left" /> |
| 右のウィンドウにフォーカス | <Kbd linux="Super+Right" /> |
| 上のウィンドウにフォーカス | <Kbd linux="Super+Up" /> |
| 下のウィンドウにフォーカス | <Kbd linux="Super+Down" /> |
| ワークスペース内でウィンドウのフォーカスを切り替え | <Kbd linux="Alt+Tab" /> |
| ウィンドウスイッチャーを開く | <Kbd linux="Super+Tab" /> |
| フォーカス中のウィンドウを指定したモニターに移動 | <Kbd linux="Super+Shift+#" /> |
| フォーカス中のウィンドウを指定したワークスペースに移動 | <Kbd linux="Super+Shift+Control+#" /> |
| フォーカス中のウィンドウをスペシャルワークスペースに移動 | <Kbd linux="Super+Shift+S" /> |
| フォーカス中のウィンドウを右に移動 | <Kbd linux="Super+Shift+Right" /> |
| フォーカス中のウィンドウを左に移動 | <Kbd linux="Super+Shift+Left" /> |
| フォーカス中のウィンドウを上に移動 | <Kbd linux="Super+Shift+Up" /> |
| フォーカス中のウィンドウを下に移動 | <Kbd linux="Super+Shift+Down" /> |
| フォーカス中のウィンドウを次のワークスペースに移動 | <Kbd linux="Super+Control+Shift+Right" /> |
| フォーカス中のウィンドウを前のワークスペースに移動 | <Kbd linux="Super+Control+Shift+Left" /> |
| フォーカス中のウィンドウを前のワークスペースに移動 (マウス) | <Kbd linux="Super+Control+Shift+Scroll&nbsp;up" /> |
| フォーカス中のウィンドウを次のワークスペースに移動 (マウス) | <Kbd linux="Super+Control+Shift+Scroll&nbsp;down" /> |
| フォーカス中のウィンドウを次のモニターに移動 | <Kbd linux="Super+Shift+Scroll&nbsp;down" /> |
| フォーカス中のウィンドウを前のモニターに移動 | <Kbd linux="Super+Shift+Scroll&nbsp;up" /> |
| ウィンドウの移動 (マウス) | <Kbd linux="Super+Left&nbsp;Click" /> |
| ウィンドウサイズの変更 (マウス) | <Kbd linux="Super+Right&nbsp;Click" /> |

### ランチャー

| 説明 | キー |
|------|------|
| ターミナルを起動 | <Kbd linux="Super+Return" /> |
| ファイルマネージャーを起動 | <Kbd linux="Super+E" /> |
| エディターを起動 | <Kbd linux="Super+T" /> |
| 電卓を起動 | <Kbd linux="Super+C" /> |
| ブラウザを起動 | <Kbd linux="Super+W" /> |
| システムモニター (btop) を起動 | <Kbd linux="Control+Shift+Escape" /> |
| Noctalia Settings を開く/閉じる | <Kbd linux="Super+Z" /> |
| コントロールセンターを開く/閉じる | <Kbd linux="Super+X" /> |
| アプリランチャーを開く/閉じる | <Kbd linux="Super+Space" /> |
| 絵文字ランチャーを開く/閉じる | <Kbd linux="Super+period" /> |
| 画面をロック | <Kbd linux="Super+L" /> |
| セッションメニューを開く/閉じる | <Kbd linux="Super+Alt+C" /> |

### ハードウェア操作

| 説明 | キー |
|------|------|
| 音量を上げる | <Kbd linux="Volume Up" /> |
| 音量を下げる | <Kbd linux="Volume Down" /> |
| スピーカーをミュート | <Kbd linux="Mute" /> |
| マイクをミュート | <Kbd linux="MicMute" /> |
| メディアを再生/一時停止 | <Kbd linux="Play" /> / <Kbd linux="Pause" /> |
| 次のトラック | <Kbd linux="Next" /> |
| 前のトラック | <Kbd linux="Previous" /> |
| 画面の明るさを上げる | <Kbd linux="Brightness Up" /> |
| 画面の明るさを下げる | <Kbd linux="Brightness Down" /> |

### ユーティリティ

| 説明 | キー |
|------|------|
| カラーピッカー | <Kbd linux="Super+P" /> |
| スクリーンショットを撮影してメモを書く | <Kbd linux="Print" /> |
| ウィンドウのスクリーンショットを撮影してメモを書く (v4) | <Kbd linux="Super+Print" /> |
| モニター全体のスクリーンショットを撮影してメモを書く (v5) | <Kbd linux="Super+Print" /> |
| 画面録画の開始/停止 (v4 のみ) | <Kbd linux="Super+R" /> |
| 壁紙メニューを開く/閉じる | <Kbd linux="Super+Shift+W" /> |
| クリップボード履歴を開く | <Kbd linux="Super+V" /> |
| 通知履歴を開く/閉じる | <Kbd linux="Super+A" /> |

### ワークスペースとモニター

| 説明 | キー |
|------|------|
| ワークスペース1〜10へ切り替え | <Kbd linux="Super+[0-9]" /> |
| ウィンドウをワークスペース1〜10へ移動 (追従) | <Kbd linux="Super+Shift+[0-9]" /> |
| ウィンドウをワークスペース1〜10へ移動 (追従しない) | <Kbd linux="Super+Alt+[0-9]" /> |
| 指定したワークスペースへフォーカス | <Kbd linux="Super+Control+#" /> |
| 次のワークスペースへフォーカス | <Kbd linux="Super+Control+Right" /> |
| 前のワークスペースへフォーカス | <Kbd linux="Super+Control+Left" /> |
| 最初の空いているワークスペースへフォーカス | <Kbd linux="Super+Control+Down" /> |
| 次のワークスペースへフォーカス (マウス) | <Kbd linux="Super+Control+Scroll&nbsp;down" /> |
| 前のワークスペースへフォーカス (マウス) | <Kbd linux="Super+Control+Scroll&nbsp;up" /> |
| 次のモニターへフォーカス (マウス) | <Kbd linux="Super+Scroll&nbsp;down" /> |
| 前のモニターへフォーカス (マウス) | <Kbd linux="Super+Scroll&nbsp;up" /> |
| スペシャルワークスペース (スクラッチパッド) を開く/閉じる | <Kbd linux="Super+S" /> |

## 他の DE/WM から移行する

すでに別のデスクトップ環境 (DE) またはウィンドウマネージャー (WM) をインストールしている場合は、以下の手順でこのドットファイルへ移行できます。

:::note
既存のユーザーアカウントで Hyprland を使用することも可能ですが、新しいユーザーアカウントを作成することを強く推奨します (手順は以下に記載しています)。また、新しいユーザーアカウントを使用した場合でも、以前の DE/WM が使用していたデーモンとの競合が発生する場合があります。
:::

以下の手順では、山括弧 (`<>`) で囲まれた部分を、山括弧も含めて適切な値に置き換えてください。

1. `sudo pacman -S cachyos-hypr-noctalia` を実行してください。`cachyos-kde-settings` など、他の `-settings` パッケージと競合する場合は競合しているパッケージを削除してください。
2. Noctalia V5 Beta (または -git 版) を使用する場合は、かわりに以下の手順を実行してください。
   * `sudo pacman -Syu noctalia` を実行して Noctalia V5 Beta をインストールしてください。
   * -git 版を使用する場合は、`paru -Syu noctalia-git` または `shelly -AI noctalia-git` を実行してください。
3. 新しいユーザーを作成する場合は `sudo useradd -m <new_user> -s /bin/fish` を実行してください。
4. `sudo passwd <new_user>` を実行し、新しいユーザーのパスワードを設定してください。
   * **どうしても**同じユーザーアカウントを使用したい場合 (非推奨) は、かわりに `cp -r /etc/skel/. ~` を実行してドットファイルをホームディレクトリへコピーしてください。その際は、必ず事前にバックアップまたはスナップショットを作成してください。
5. 必要に応じて、SDDM をディスプレイマネージャーとして有効にしてください。まだ設定していない場合は、`systemctl disable display-manager` と `systemctl enable sddm` を実行してください。[Noctalia greeter](https://github.com/noctalia-dev/noctalia-greeter) を使用すると Noctalia とより統一感のある環境になりますが、設定には追加作業が必要です。
6. 再起動し、ディスプレイマネージャーから **Hyprland (UWSM)** セッションを選択してください。
   * シェルの起動に失敗した場合は、もう一度再起動してみてください。
7. ログイン後、[初期設定](/ja/configuration/desktop_environments/hyprland/#初期設定)の内容に従って初期設定を行ってください。

## V4 のドットファイルから V5 へ移行 / ドットファイルの更新

現在 Noctalia V4 の `cachyos-hypr-noctalia` を使用しており、パッケージをバージョン 1.0 から新しいバージョンへ更新した場合、またはドットファイルを更新したい場合は、以下の手順に従ってください。

ドットファイルを更新する必要があるかどうかは、リリースの変更履歴を確認してください。

### Hyprland の更新

:::note
V4 のキーバインドを V5 へ移行すると、キーバインドから Noctalia の IPC を呼び出せなくなります。
:::

1. `meld` がインストールされていることを確認してください (`pacman -Q meld`)。インストールされていない場合はインストールしてください。
2. `meld /etc/skel/.config/hypr ~/.config/hypr` を実行してください。
3. Meld が開くと、変更されたすべてのファイルが一覧表示されます。青色のファイルは変更が加えられたファイル、緑色のファイルは新しく追加されたファイルです。
    <br />
    <ImageComponent imgsrc={import('~/assets/images/v4-v5-migration/meld_overview.png')} />
    <i>※Meld は日本語に対応しています。</i>
4. 青色のファイルをクリックすると、適用される変更を確認できます。どの変更を適用するかは必要に応じて判断してください。ただし、自分で変更を加えていない場合は、ファイル全体を上書きしても問題ありません。矢印ボタンで変更を適用し、× ボタンで古い行を削除できます。
    <Aside type="note">モニター設定など、自分で変更した内容は上書きしないよう注意してください。</Aside>
    <br />
    <ImageComponent imgsrc={import('~/assets/images/v4-v5-migration/merge.png')} />
5. すべての変更を一括でマージすることもできます。
    <br />
    <ImageComponent imgsrc={import('~/assets/images/v4-v5-migration/merge_all_1.png')} />
    <ImageComponent imgsrc={import('~/assets/images/v4-v5-migration/merge_all_2.png')} />
6. ファイルの編集が完了したら、保存して終了してください。
7. 新しく追加された緑色のファイルについては、保存先を尋ねられます。同じファイル名のまま `~/.config/hypr/config/` に保存してください。新しく追加されるファイルは次の4つです。
   * `defaults.lua` は `variables.lua` に変更されます。独自に追加・変更した内容は、新しいファイルに手動で移行してください。
   * `keybinds.lua` は `binds.lua` に変更されます。独自に追加・変更した内容は、新しいファイルに手動で移行してください。
   * `input.lua` は `inputs.lua` に変更されます。独自に追加・変更した内容は、新しいファイルに手動で移行してください。
   * `workspaces.lua` は新しく追加されたファイルです。そのままコピーして使用してください。

### Noctalia の更新

1. `rm -rf ~/.config/noctalia` を実行して現在の設定を削除してください。必要になる可能性がある場合は、削除する代わりに別の場所へ移動してください。
2. `cp -r /etc/skel/.config/noctalia ~/.config` を実行し、新しい設定をホームディレクトリへコピーしてください。

:::note
重要なファイルは `config.toml` のみです。そのため、パッケージ更新時にフォルダー全体を置き換えたくない場合は、このファイルだけをコピーしても構いません。
:::

### その他の更新

他のファイルも更新されている場合があります。必要に応じて Meld を使用して変更を取り込んでください。その他の変更内容については、リリースの変更履歴を確認してください。

### 孤立パッケージを削除する (V4 → V5 移行)

パッケージを更新すると、古い依存パッケージが孤立状態になります。`shelly purify -o` を実行して削除してください。

### 再起動

変更を反映するため、再起動してください。シェルの起動に失敗した場合は、もう一度再起動してみてください。
