Monitör ayarlarımı kaydetmenin bir yolu var mı? İş yerinde harici bir monitör var, ancak her sabah fişi takmam gerekiyor, pencereleri yan yana olmaktan üst üste olmak için yeniden düzenliyoruz. Bunu kurtarabilir miyim?
Monitör ayarlarımı kaydetmenin bir yolu var mı? İş yerinde harici bir monitör var, ancak her sabah fişi takmam gerekiyor, pencereleri yan yana olmaktan üst üste olmak için yeniden düzenliyoruz. Bunu kurtarabilir miyim?
Yanıtlar:
Uzun öykü kısa (yani: Nicolas Bernaerts'in önerilerini yapın, ancak size ayrıntıları yedekliyorum ): monitör yapılandırması aslında kaydedilir ~/.config/monitors.xml
, ancak başlangıç / girişte uygulanmaz.
Bunun üstesinden gelmek için adımlar:
Yanlış monitör yapılandırması ile giriş yapın.
Geçerli monitör yapılandırmasını kaldır:
cd .config
mv monitors.xml{,.bak}
Monitörleri istediğiniz gibi düzenlemek için Ekranlar uygulamasını kullanın (bir tarafı monitörün saat yönünün tersine döndürülmüşüm).
Uygula'ya bastıktan sonra yeni monitors.xml
bir tane oluşturulur.
Şimdi, yeni oluşturulan yapılandırma dosyasına göre monitör yapılandırmasını zorlayan komut dosyasını ve başlatıcıyı indirin ve yürütülebilir yapın:
$ 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
Bu noktada, monitörlerin konfigürasyonu güncelleme monitörü pozisyon uygulaması başlatılarak düzeltilebilir .
Bunun otomatik olmasını istiyorsanız, aşağıdaki girişleri içeren bir başlangıç uygulaması eklemeniz yeterlidir:
Update Monitors Position
update-monitor-position 5
Force monitors position 5 seconds after login
Takılı-sıcak veya değil - - tüm monitörler için yapılandırma gerektiğini saklanabilir $HOME/.config/monitors.xml
tarafından xrandr
için eklenti gnome-settings-daemon
aslında Monitörler capplet yapmak yapılandırmayı geçerli olduğu kuraldır.
Bu herkes için düzgün çalışmıyor gibi görünüyor, açıkça bir yerde bir hata var. Urgh.
Harici monitörünüzü istediğiniz şekilde bağlamak için ilk üç adım ve dördüncü ise ayarları kaydetmektir.
Harici monitörünüzü bağlayın ve desteklenen çözünürlüğünü kontrol edin:
xrandr -q
Aşağıdaki komutu verin (Bu, dizüstü monitörünüzü devre dışı bırakır):
xrandr --output LVDS1 --off --output TV1 --off --output VGA1 --mode 1280x1024 --pos 0x0 --rotate normal
Hem dizüstü bilgisayarın hem de harici özelliklerin etkinleştirilmesini istiyorsanız:
xrandr --output LVDS1 --mode yyyyXzzzz --pos 0x0 --rotate normal --output TV1 --off --output VGA1 --mode 1280x1024 --pos 0x0 --rotate normal
(yyyyXzzzz - dizüstü bilgisayarınızın çözünürlüğü.)
Yukarıdaki yapılandırma ekranınızı klonlayacaktır. İle oyna " --right-of
/--left-of
İsterseniz " seçeneğiyle .
Giriş yaparken bu ayarlara ihtiyacınız varsa, kontrolleri ekleyin /etc/X11/Xsession.d/45custom_xrandr-settings
(Bir tane oluşturmanız gerekebilir).
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
Ofiste, dizüstü bilgisayarımda 3, evde 2 monitör var. Ofis monitörlerinden ikisi dikey olarak ayarlanırken, diğer monitörler normal yöndedir.
A. monitors.xml dosyası ~ / .config dizinindedir.
B. Kabuk betiği alın, "update-monitor-position".
"MONITOR_XML" tanımını, "monitors.xml" yerine "monitors-office.xml" olarak değiştirin.
Yürütülebilir yolda (/ usr / local / sbin /) "update-monitor-position-office" olarak kaydedin.
C. Masaüstü kısayolunu edinin, "update-monitor-position.desktop"
güncelleme monitör-pozisyon-office.desktop:
[Desktop Entry]
Type=Application
Exec=update-monitor-position-office
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[en_US]=Office Monitors Position
Name=Office Monitors Position
Comment[en_US]=Force monitors position from monitor-office.xml
Comment=Force monitors position from monitor-office.xml
Icon=display
Kabuk betiği, güncelleme-izleme-konum-ofis
#!/bin/bash
# -------------------------------------------------
# Get monitors configuration from monitor.xml and apply it for current user session.
# In case of multiple definitions in monitor.xml only first one is used.
#
# See http://bernaerts.dyndns.org/linux/74-ubuntu/309-ubuntu-dual-display-monitor-position-lost
# for instructions
#
# Parameters :
# $1 : waiting time in sec. before forcing configuration (optional)
#
# Revision history :
# 19/04/2014, V1.0 - Creation by N. Bernaerts
# 10/07/2014, V1.1 - Wait 5 seconds for X to fully initialize
# 01/09/2014, V1.2 - Correct NULL file bug (thanks to Ivan Harmady) and handle rotation
# 07/10/2014, V1.3 - Add monitors size and rate handling (idea from jescalante)
# 08/10/2014, V1.4 - Handle primary display parameter
# 08/12/2014, V1.5 - Waiting time in seconds becomes a parameter
# -------------------------------------------------
# monitor.xml path
MONITOR_XML="$HOME/.config/monitors-office.xml"
# get number of declared monitors
NUM=$(xmllint --xpath 'count(//monitors/configuration['1']/output)' $MONITOR_XML)
# loop thru declared monitors to create the command line parameters
for (( i=1; i<=$NUM; i++)); do
# get attributes of current monitor (name and x & y positions)
NAME=$(xmllint --xpath 'string(//monitors/configuration['1']/output['$i']/@name)' $MONITOR_XML 2>/dev/null)
POS_X=$(xmllint --xpath '//monitors/configuration['1']/output['$i']/x/text()' $MONITOR_XML 2>/dev/null)
POS_Y=$(xmllint --xpath '//monitors/configuration['1']/output['$i']/y/text()' $MONITOR_XML 2>/dev/null)
ROTATE=$(xmllint --xpath '//monitors/configuration['1']/output['$i']/rotation/text()' $MONITOR_XML 2>/dev/null)
WIDTH=$(xmllint --xpath '//monitors/configuration['1']/output['$i']/width/text()' $MONITOR_XML 2>/dev/null)
HEIGHT=$(xmllint --xpath '//monitors/configuration['1']/output['$i']/height/text()' $MONITOR_XML 2>/dev/null)
RATE=$(xmllint --xpath '//monitors/configuration['1']/output['$i']/rate/text()' $MONITOR_XML 2>/dev/null)
PRIMARY=$(xmllint --xpath '//monitors/configuration['1']/output['$i']/primary/text()' $MONITOR_XML 2>/dev/null)
# if position is defined for current monitor, add its position and orientation to command line parameters
[ -n "$POS_X" ] && PARAM_ARR=("${PARAM_ARR[@]}" "--output" "$NAME" "--pos" "${POS_X}x${POS_Y}" "--fbmm" "${WIDTH}x${HEIGHT}" "--rate" "$RATE" "--rotate" "$ROTATE")
# if monitor is defined as primary, adds it to command line parameters
[ "$PRIMARY" = "yes" ] && PARAM_ARR=("${PARAM_ARR[@]}" "--primary")
done
# if needed, wait for some seconds (for X to finish initialisation)
[ -n "$1" ] && sleep $1
# position all monitors
xrandr "${PARAM_ARR[@]}"
jay'in yanıtı neredeyse benim için çalıştı, ama birkaç adım daha atmam gerekiyordu. Buna cevabı hakkında bir yorum yapardım ama itibarım yok.
Update-monitor-position-office dosyasında:
Giriş yaptıktan sonra ilk açtığımdan beri bu komut dosyasını bir terminalden çalıştırmayı tercih ediyorum.
Kötü yapılandırma ile ilk giriş - monitörler doğru yerleştirilmedi:
cd ~/.config
mv ~/.config/monitors.xml{,.bak}
Şimdi ~/.config/monitors.xml
uygun ayarlarla yeni bir dosya oluşturmak için monitörlerinizi sistem ayarlarıyla ayarlayın .
Nicolas Bernaerts'in sabit komut dosyasını depomdan kopyala: https://raw.githubusercontent.com/alextomko/monitors/master/monitors ve terminalden çalıştırmak için bir yola koy.
$ 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
Hayır, yapılandırmaları çalışırken takılan monitörlere kaydetmenin bir yolu yoktur. Önyüklemeden önce takarsanız, GNOME her önyüklemedeki yapılandırmayı cihaz başına esasına göre hatırlamalıdır (yani, monitörünüzü evdekine karşı işyerinizde bağlama).
~/.config/monitors.xml
, ancak başlangıçta uygulanmaz