Alter Linux i3wm Editionを Aerobook Plusにインストールした。で、Aerobook Plusは3840x1920解像度ディスプレイなので、画面表示は美しい。しかし、そのままだと文字が小さすぎて見づらい。
なので i3でどうやって表示スケールを変更するのか調べたら、答えはここに↓
x11 - How do I scale i3 window manager for my HiDPI display? - Unix & Linux Stack Exchange
ターミナル、アプリのdpi変更
下記ファイルを作成する。
~/.Xresources
Xft.dpi: 192
~/.xinitrc でxrdb -merge ~/.Xresources
とする必要はなく、ファイルを作って置くだけでOKだった。
また、 ~/.profile でexport GDK_SCALE=2
すると良いとあるが、必要を感じなかったので、 ~/.Xresources だけとした。
i3ステータスバーのdpi変更
これだけだとターミナル、殆どのアプリ表示はいけるがi3ステータスバーやrofi
といったものが小さいまま1なのでdpi = 192
を設定ファイルに追記。で、これだと高さが足らないので、高さも倍にした。
~/.config/polybar/config.ini
[bar/main]
font-0 = "SauceCodePro Nerd Font:style=Regular:size=15;4"
font-1 = "FontAwesome:style=Regular:size=10;4"
font-2 = "Font Awesome 5 FreeRegular:style=Regular:size=10;4"
width = 100%
- height = 20
+ height = 40
padding = 0
bottom = false
background = ${color.bg-bar}
radius-bottom = 15.0
scroll-up = i3wm-wsnext
scroll-down = i3wm-wsprev
modules-left = launcher i3 left-end
modules-center = left-begin clock right-end
#modules-right = right-begin network cpu memory battery right-end right-begin power
modules-right = right-begin network cpu memory battery right-end fcitx right-begin power
+ dpi = 192
rofiのdpi変更
オプション-dpi 192
を付ける。
~/.config/i3/config
- bindsym $mod+Shift+e exec --no-startup-id rofi -show power
+ bindsym $mod+Shift+e exec --no-startup-id rofi -show power -dpi 192
・・・中略・・・
- bindsym $mod+d exec --no-startup-id TERMINAL=kitty rofi -show drun
+ bindsym $mod+d exec --no-startup-id TERMINAL=kitty rofi -show drun -dpi 192
で、i3ステータスバーをクリックして起動すると小さいままなので、i3ステータスバーの設定ファイルも修正する。
~/.config/polybar/modules.ini
- click-left = exec rofi -show drun
+ click-left = exec rofi -show drun -dpi 192
・・・中略・・・
- click-left = exec rofi -show power
+ click-left = exec rofi -show power -dpi 192
Spotifyの表示スケール表示
Spotifyも小さいままなので、オプション--force-device-scale-factor=2.0
を付ける。
/var/lib/snapd/desktop/applications/spotify_spotify.desktop2
- Exec=env BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/spotify_spotify.desktop /var/lib/snapd/snap/bin/spotify %U
+ Exec=env BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/spotify_spotify.desktop /var/lib/snapd/snap/bin/spotify --force-device-scale-factor=2.0 %U
壁紙も4kに
ちょうど?Fascode壁紙(16:9,4K)を作成されていたので、nitrogen
で設定3。
Full HDの別ディスプレイに複製する
HiDPIの方がフォントや4k動画は美しいが、たまに15インチより大きいディスプレイで表示したいときがある。1920x1080の別ディスプレイに、普段のHiDPI表示設定そのままに画面複製できないかな?と思ったら、
HiDPI - ArchWikiにやり方があった。
xrandr --output HDMI1 --scale 2x2
で、ノートパソコンの4kディスプレイeDP1は解像度3840x1920のまま、別ディスプレイのHDMI1は1920x1080だけど、表示領域は1/4になることなく4k表示領域に拡大されて表示される。
起動時に画面表示がおかしくなったら
ただ、次回、別ディスプレイに接続したまま起動する4と、HDMIディスプレイの画面表示されなかったり、eDP1ディスプレイの表示がおかしくなる。
この場合、下記の手順で戻せる。
- まずは別ディスプレイHDMI1を無効化するか、切断する。
- 4kディスプレイeDP1の解像度を3840x1920に設定する。
$mod+Shift+r
するなりしてi3
を再起動して壁紙の表示を直す。- 別ディスプレイHDMI1を有効化する。
xrandr --output HDMI1 --mode 1920x1080 --scale 2x2
を叩く
追記 2021-11-17
コマンドだとこうかな
xrandr --output HDMI1 --off
xrandr --output eDP1 --mode 3840x2160 --primary
xrandr --output HDMI1 --mode 1920x1080 --scale 2x2 --same-as eDP1
i3-msg restart
追記ここまで
これで元どおり。まあ、4kディスプレイを買えばこんな手間はいらなくなるが…
-
alterlinux-i3-manager
などは文字が大きく、ウィンドウサイズが小さいまま。こちらについては修正方法はまだ分かってない。 ↩︎ -
deb版だと /usr/share/applications/spotify.desktop ↩︎
-
nitrogen
については Alter Linuxの壁紙を変更するで触れてる。 ↩︎ -
別ディスプレイに接続せずに起動した場合は問題ない。または、起動後に後で接続する分には、問題ない。 ↩︎