有没有办法保存我的显示器设置?我在工作时有一个外接显示器,但每天早上我都必须插上电源,重新排列窗口,从并排排列改为上下排列。我可以直接保存这个吗?
答案1
长话短说(即:做什么尼古拉斯·伯纳茨建议,但我省略了细节):监视器配置实际上保存在中~/.config/monitors.xml
,但它不会在启动/登录时应用。
解决此问题的步骤如下:
使用错误的监视器配置登录。
删除当前监视器配置:
cd .config
mv monitors.xml{,.bak}
使用显示器应用程序按照您的意愿排列显示器(我将一侧显示器逆时针旋转)。
一旦您按下申请,一个新的monitors.xml
就创建了。
现在,下载并执行脚本和启动器,根据新创建的配置文件强制执行监视器配置:
$ sudo wget -O /usr/local/sbin/update-monitor-position https://raw.githubusercontent.com/NicolasBernaerts/ubuntu-scripts/master/ubuntugnome/update-monitor-position
$ sudo chmod +x /usr/local/sbin/update-monitor-position
$ sudo wget -O /usr/share/applications/update-monitor-position.desktop https://raw.githubusercontent.com/NicolasBernaerts/ubuntu-scripts/master/ubuntugnome/update-monitor-position.desktop
$ sudo chmod +x /usr/share/applications/update-monitor-position.desktop
此时,可以通过启动更新监视器位置应用。
如果您希望自动执行此操作,只需添加一个启动应用程序,并包含以下条目:
- 姓名:
Update Monitors Position
- 命令:
update-monitor-position 5
- 评论:
Force monitors position 5 seconds after login
答案2
所有显示器的配置(无论是否热插拔)应该由 的插件$HOME/.config/monitors.xml
存储在 中,这实际上应用了您在监视器 capplet 中所做的配置。 xrandr
gnome-settings-daemon
由于这似乎对每个人都不起作用,显然某个地方有错误。呃。
答案3
前三个步骤按照您想要的方式连接外接显示器,第四个步骤是保存设置。
连接外接显示器并检查其支持的分辨率:
xrandr -q
给出以下命令(这将禁用您的笔记本电脑显示器):
xrandr --output LVDS1 --off --output TV1 --off --output VGA1 --mode 1280x1024 --pos 0x0 --rotate normal
如果您希望同时启用笔记本电脑和外部设备:
xrandr --output LVDS1 --mode yyyyXzzzz --pos 0x0 --rotate normal --output TV1 --off --output VGA1 --mode 1280x1024 --pos 0x0 --rotate normal
(yyyyXzzzz - 您的笔记本电脑分辨率。)
上述配置将克隆您的屏幕。如果您愿意,可以使用“
--right-of
/ ”选项。--left-of
如果您在登录时需要此设置,请添加检查
/etc/X11/Xsession.d/45custom_xrandr-settings
(您可能需要创建一个)。xrandr |grep VGA1 | grep " connected " | if [ $? -eq 0 ]; then xrandr --output LVDS1 --off --output TV1 --off --output VGA1 --mode 1280x1024 --pos 0x0 --rotate normal #Change the way u need ; fi
答案4
我更喜欢从终端运行此脚本,因为我登录后会先打开一个终端。
首次登录时配置不正确-监视器放置不正确:
cd ~/.config
mv ~/.config/monitors.xml{,.bak}
现在使用系统设置来设置您的监视器,以创建~/.config/monitors.xml
具有适当设置的新文件。
从我的仓库复制 Nicolas Bernaerts 的修复脚本:https://raw.githubusercontent.com/alextomko/monitors/master/monitors并将其放在从终端运行的路径中。
$ ls -l ~/bin
# if you don't have this directory then create it - do not be logged in as root here.
$ mkdir /home/$USER/bin
$ echo $PATH
# should show /home/username/bin if the dir existed or if you had to create.
$ wget -P ~/bin https://raw.githubusercontent.com/alextomko/monitors/master/monitors
$ chmod +x ~/bin/monitors
# Log out, lock, reboot or whatever it takes to make monitor settings lost for you and run the script.
$ monitors