ROOT
ROOT
文章目录
  1. 已知问题
  2. 安装 i3wm
  3. 配置双显示器
  4. i3wm 配置

Linux 多显示器配合 i3wm 窗口管理器

很久没写博客了,来更新下关于 Linux 方面的问题。

已知问题

在 Linux 桌面环境下,使用多显示器会遇到很多 bug,例如窗口菜单栏无法下拉,Chrome 浏览器表单下拉框无法显示等等,头疼死了。

可能是由于多显示器的虚拟显示器过大,导致一些组件溢出无法显示。举个例子,我的外接显示器分辨率为1080x1920(竖屏),主显示的分辨率为1366x768(横屏),而两块屏幕拼接起来后的虚拟显示器分辨率却为2446x1920,也就是宽相加,1080+1366=2446,高取最大 1920,所以会导致组件溢出无法正常显示的现象。

最近了解到一个窗口管理器i3wm,可以完美解决由于多显示器导致的 bug,先来上图。图为 2 块显示器的效果,黑色部分不存在。

Screenshot_from_2017-03-17_10-35-32.png

官方视频:

安装 i3wm

因为 debian 源中有,可以直接安装,之后选择窗口管理器为 i3:

$ sudo apt-get install i3 i3status
$ sudo update-alternatives --config x-window-manager
There are 3 choices for the alternative x-window-manager (providing /usr/bin/x-window-manager).

  Selection    Path               Priority   Status
------------------------------------------------------------
  0            /usr/bin/metacity   60        auto mode
* 1            /usr/bin/i3         20        manual mode
  2            /usr/bin/metacity   60        manual mode
  3            /usr/bin/mutter     60        manual mode

Press <enter> to keep the current choice[*], or type selection number: 1

运行i3-config-wizard,将默认为 i3wm 配置,配置文件在~/.config/i3/config

然后重启,若没效果,就注销登录,然后选择 i3 作为默认的窗口管理器。

配置双显示器

我的显示器布局如图:

     0                  1080                       1080+1366
  0  A--------------------
     |                   |
     |                   |
     |                   |
     |                   |
     |                   |
     |                   |
     |                   |
     |      HDMI         |
     |    1080x1920      | (1080, y)
     |                   B-----------------------------
     |                   |                            |
     |                   |                            |
     |                   |            eDP             |
     |                   |          1366x768          |
     |                   |                            |
     |                   |                            |
1920 --------------------------------------------------

首先要确定的是 2 个显示器的位置(屏幕左上角坐标来确定)关系,HDMI 显示器在左边,eDP 显示器在右边,左屏做扩展屏。

注意左上角的坐标为(0, 0),也就是说 HDMI 显示器的坐标为(0, 0)。然后是 B 点的坐标为(1080, 1920-768=1152),也就是 eDP 显示器的坐标。

最后利用 xrandr 命令,如下:

$ xrandr --output HDMI-1 --auto --rotate left --pos 0x0 --output eDP-1 --pos 1080x1152

写进 i3wm 配置文件中:

$ exec xrandr --output HDMI-1 --auto --rotate left --pos 0x0 --output eDP-1 --pos 1080x1152

也可以使用 工具 来配置:

$ sudo apt-get install arandr
$ arandr

i3wm 配置

配置壁纸,将壁纸放到~/Pictures/wallpapers 中,然后编辑 i3wm 配置文件:

$ sudo apt-get install feh
$ vim ~/.config/i3/config
	exec feh --randomize --bg-fill ~/Pictures/wallpapers/*

配置音量键:

# Pulse Audio controls
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5% #increase sound volume
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5% #decrease sound volume
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle # mute sound

配置屏幕截图:

bindsym --release Print exec gnome-screenshot
bindsym --release Shift+Print exec gnome-screenshot -a
bindsym --release $mod+Print exec gnome-screenshot -w

剩下的就是看 i3wm 的官方文档了。

支持一下
扫一扫,支持Netcan
  • 微信扫一扫
  • 支付宝扫一扫