Skip to content

Hyprlandの設定

This content is a draft and will not be included in production builds.

インストールするパッケージ

Terminal window
pacman -S hyprland hyprlauncher
pacman -S hyprpolkitagent
pacman -S dms-shell xdg-desktop-portal-hyprland

https://satya164.page/posts/macos-like-shortcuts-in-hyprland#text-editing-shortcuts

モニター https://wiki.hypr.land/Configuring/Basics/Monitors/

設定 https://wiki.hypr.land/Configuring/Basics/Variables/

キーバインド https://wiki.hypr.land/Configuring/Basics/Binds/

キーコードは https://github.com/xkbcommon/libxkbcommon/blob/master/include/xkbcommon/xkbcommon-keysyms.h から探して XKB_KEY_ を削る。定数の値はUnicodeコードポイントの値なのでスペースなら 0x20 を探せばいい。

Xwaylandアプリ(特にSteam Client)でフォントが汚かったので設定した。

hl.config({
xwayland = {
use_nearest_neighbor = false,
}
})

これを設定しておかないと、ロマサガ2のゲーム自体もフォントがアンチエイリアス外れたような状態だった。ゲームはXwaylandではないはずだけど、何か引きずられているのかもしれない。

dms入れたら諸々入っているので、これで妥協するか、個別に入れるか迷う。好みで言えば個別だけど見た目はdmsがいいんだよねえ

これ最高、ElectronアプリでもCtl+Hがバックスペースとして使えるようになる。 なんかCtrlキーを押しっぱにするとHを離しても押したまま扱いされるから separate 入れたけど、合っているのかは知らない。あと release がないとアプリによってはキーリピートされてしまう。実装が腐っているのではないかとは思うが、どうか。

hl.bind("CTRL + H", hl.dsp.send_shortcut({ mods = "", key = "Backspace" }), {
repeating = true,
})
hl.bind("CTRL + H", hl.dsp.send_shortcut({ mods = "", key = "Backspace" }), {
release = true,
})

しかしこの場合、fcitx5のpre-edit状態にバックスペースが送れていないらしく、エディット中の描画は文字が消えるけれど内部の状態に反映されていなくて困る。Geminiで調べた限りでは send_shortcut で送信するキー入力はtext-inputプロトコルを通らないためらしい。正確なところは調べていないがおそらく正しい雰囲気があるのでいったん無効化。根本的に keyd のようなツールを使えというのはその通り。

non_consuming は主語が何なのか分からなかったけどHyprlandか。だからこれを設定するとHyprlandが消費しない(preventDefault 相当)ので伝播する。

togglegroupの使い方がわからない。色は変わるが

Layout 他にもあるけどdwindleが一般的だろう https://wiki.hypr.land/Configuring/Layouts/Dwindle-Layout/

下に配置したいとき、togglesplitを使うといい?

hl.dsp.layout("togglesplit")