मैं अपने प्रदर्शन को सबसे आसान तरीके से कैसे घुमा सकता हूं?


54

मैं एक धुरी मॉनिटर का भाग्यशाली मालिक हूं, जो स्क्रीन को घुमाया जा सकता है (शारीरिक रूप से)। जब मैं अपना मॉनिटर चालू करता हूं, तो मेरे प्रदर्शन को मोड़ने का सबसे आसान तरीका क्या है?

फिलहाल मैं सबसे पहले 'डिस्प्ले' ऐप लॉन्च करता हूं, और फिर सेटिंग्स बदलकर पुष्टि करता हूं। लेकिन यह वास्तव में काफी एक प्रयोगशाला प्रक्रिया है, क्योंकि मैं अपने अभिविन्यास को प्रति मिनट कुछ समय तक स्विच करना चाहता हूं।

तो क्या इसके लिए कोई संकेतक है, या समकक्ष है? क्या मैं एक कीबोर्ड शॉर्टकट सेट कर सकता हूं जो एक समर्पित कमांड लॉन्च करेगा? वास्तव में मैं विंडोज प्रोग्राम iRotate के समान कुछ सोच रहा हूं

जवाबों:


94

कीबोर्ड -> शॉर्टकट में जाएं, "शॉर्टकट शॉर्टकट" चुनें, और नया शॉर्टकट जोड़ने के लिए "+" दबाएं।

"नाम" कार्रवाई के लिए एक वर्णनात्मक नाम है (यानी "घुमाएँ मॉनिटर")। "कमांड" में शॉर्टकट सक्रिय होने पर चलने के लिए कस्टम कमांड टाइप करें।

शॉर्टकट सूची में आने के बाद, उसकी पंक्ति का चयन करें, ENTER दबाएँ, फिर कुंजी संयोजन जिसे आप सक्रिय करना चाहते हैं। यदि कोई विरोध है, तो शॉर्टकट प्रबंधक आपको ऐसा बताएगा, और आप एक अलग संयोजन चुन सकते हैं।

आपके पास घुमाए हुए प्रदर्शन को सक्षम करने के लिए शॉर्टकट हो सकता है और दूसरा इसे एक ईमानदार स्थिति में वापस लाने के लिए। आप भी, यदि आप काफी जानकार हैं, तो एक कमांड लिख सकते हैं जो राज्य को बनाए रखता है और सिर्फ ऊपर / घुमाए जाने के बीच टॉगल करता है।

अब, जिस कमांड का आपको उपयोग करने की आवश्यकता है, वह संभवतः xrandr है:

xrandr --output HDMI1 --rotate left

xrandr --output HDMI1 --rotate normal

आउटपुट पैरामीटर इस बात पर निर्भर करता है कि आपके मॉनिटर को किस पोर्ट में प्लग किया गया है। यह देखने के लिए कि आपके पास वर्तमान में क्या है, टाइप करें:

xrandr -q

मेरा कहता है:

Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192
LVDS1 connected 1366x768+0+0 (normal left inverted right x axis y axis) 309mm x 174mm
   1366x768       60.0*+
   1360x768       59.8     60.0  
   1024x768       60.0  
   800x600        60.3     56.2  
   640x480        59.9  
VGA2 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
DP1 disconnected (normal left inverted right x axis y axis)

इस मामले में, मेरा --output LVDS1 होगा, क्योंकि बाकी सभी को काट दिया गया है।


2
यह उत्कृष्ट है।
6

मैं लिनक्स के लिए नया हूं और मैंने इसे स्थापित करने की कोशिश की, लेकिन जब मैं कमांड का उपयोग करता हूं तो कुछ भी नहीं होता है। क्या मेरे कस्टम कीबोर्ड शॉर्टकट काम सुनिश्चित करने के लिए मुझे कुछ और कॉन्फ़िगर करना होगा? बिल्ट इन कमांड काम करते हैं, न कि मेरे द्वारा बनाए गए कस्टम। मैं Ubuntu 14.04 का उपयोग कर रहा हूं। मैंने निर्देशों का पालन किया और कमांड लाइन में निम्नलिखित लिखा। xrandr --output HDMI1 - छोड़ दिया मैंने शॉर्टकट के रूप में ctrl + left का उपयोग किया। जब मैं टर्मिनल में उस कमांड का उपयोग करता हूं, तो सब कुछ बहुत अच्छा काम करता है। बस कीबोर्ड शॉर्टकट के साथ नहीं।
नेल्सन

@ क्या आपने यह सत्यापित किया कि आप HDMI1 का उपयोग कर रहे हैं xrandr -q?
एल्डर गीक

11
अरे, काम xrandr -o rightभी कर रहा है और वर्तमान लक्ष्य को निर्दिष्ट करने की आवश्यकता नहीं है
वाइटेनोइसेब बीटी

मुझे मिल गया output LVDS1 not found;और output HTMI1 not found;@ whitenoisedb की टिप्पणी के लिए धन्यवाद xrandr -o normal, मैंने बस --outputस्क्रीन को सामान्य दिशा में वापस रखने के तर्क को निर्दिष्ट किए बिना, उपयोग किया ।
पॉल रौजीक्स

16

के साथ बढ़िया काम करता है

xrandr --output LVDS1 --rotate left
xrandr --output LVDS1 --rotate right
xrandr --output LVDS1 --rotate inverted
xrandr --output LVDS1 --rotate normal

क्या कोई विकल्प है जो मेरी स्क्रीन को चालू और बंद नहीं करता है (मैं fglrx का उपयोग कर रहा हूं)
Suici Doga

सही समाधान
वसीम

5

सेंसर इनपुट के आधार पर इसे कैसे करें, इसका एक अच्छा उदाहरण है: https://linuxappfinder.com/blog/auto_screen_rotation_in_ubuntu

तो मूल रूप से ऊपर की कोशिश उस स्क्रीन की पहचान करने के लिए जिसे आप घुमाए हुए देखना चाहते हैं। मॉडल मॉनिटर के आधार पर एक सेंसर हो सकता है जो सिग्नल भेजता है?

यह बिलियन रोटेशन सेंसर के साथ मेरे लेनोवो योगा 2 11 के लिए अच्छी तरह से काम करता है और यह एकता डॉक को भी आगे बढ़ाता है।

लिपी:

#!/bin/sh
# Auto rotate screen based on device orientation

# Receives input from monitor-sensor (part of iio-sensor-proxy package)
# Screen orientation and launcher location is set based upon accelerometer position
# Launcher will be on the left in a landscape orientation and on the bottom in a portrait orientation
# This script should be added to startup applications for the user

# Clear sensor.log so it doesn't get too long over time
> sensor.log

# Launch monitor-sensor and store the output in a variable that can be parsed by the rest of the script
monitor-sensor >> sensor.log 2>&1 &

# Parse output or monitor sensor to get the new orientation whenever the log file is updated
# Possibles are: normal, bottom-up, right-up, left-up
# Light data will be ignored
while inotifywait -e modify sensor.log; do
# Read the last line that was added to the file and get the orientation
ORIENTATION=$(tail -n 1 sensor.log | grep 'orientation' | grep -oE '[^ ]+$')

# Set the actions to be taken for each possible orientation
case "$ORIENTATION" in
normal)
xrandr --output eDP1 --rotate normal && gsettings set com.canonical.Unity.Launcher launcher-position Left ;;
bottom-up)
xrandr --output eDP1 --rotate inverted && gsettings set com.canonical.Unity.Launcher launcher-position Left ;;
right-up)
xrandr --output eDP1 --rotate right && gsettings set com.canonical.Unity.Launcher launcher-position Bottom ;;
left-up)
xrandr --output eDP1 --rotate left && gsettings set com.canonical.Unity.Launcher launcher-position Bottom ;;
esac
done

और सेंसर के लिए शर्त:

sudo apt install iio-sensor-proxy inotify-tools

monitor-sensorकोई आउटपुट नहीं करता है। क्या आप जानते हैं कि क्या मैं इसे कॉन्फ़िगर कर सकता हूं? मेरे पास एक hp और lsmod | grep accशो हैhp_accel 28672 0 lis3lv02d 20480 1 hp_accel
मीना माइकल

@MinaMichael में आपको कर्नेल बग का अनुभव हो सकता है। देखो यहाँ
JrBenito

यह कर्नेल 4.8 पर काम करता है, यह वास्तव में बाद के संस्करणों में एक बग हो सकता है, क्योंकि मैं जिस स्क्रिप्ट का उपयोग करता हूं वह कभी भी संस्करणों पर काम करना बंद नहीं करता है। कृपया बग रिपोर्ट में योगदान करें यदि आप लागू होते हैं या एक नया बग दर्ज कर सकते हैं।
विंसेंट गेरिस

1

मैंने ऐसा करने के लिए एक शेल स्क्रिप्ट लिखी। (Xrandr grep awk की आवश्यकता है)

#!/bin/sh
# invert_screen copyright 20170516 alexx MIT Licence ver 1.0
orientation=$(xrandr -q|grep -v dis|grep connected|awk '{print $4}')
display=$(xrandr -q|grep -v dis|grep connected|awk '{print $1}')
if [ "$orientation" == "inverted" ]; then
   xrandr --output $display --rotate normal
else
   xrandr --output $display --rotate inverted
fi

अगर आपको वन-लाइनर्स पसंद हैं:

[ "$(xrandr -q|grep -v dis|grep con|awk '{print $4}')" == 'inverted' ] && xrandr -o normal || xrandr -o inverted

1
मेरे लिए $5इसके बजाय है $4
निकोलई

1
Xrandr के साथ --version 1.5.0 $ 5 मेरे लिए काम कर रहा है (पाठ आउटपुट का उपयोग करने का खतरा) अधिक [ "$(xrandr -q|grep -v dis|grep con|awk '{print $5}')" != 'inverted' ] && xrandr -o inverted || xrandr -o normalसुरक्षित है क्योंकि यह "सामान्य" के लिए चूक है
Alexx Roche
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.