मैं टर्मिनल एम्यूलेटर के रूप में टर्मिनेटर 0.96 का उपयोग कर रहा हूं। मैं इसे पृष्ठभूमि में कैसे चला सकता / सकती हूं और इसे गुके टर्मिनल (जैसे शॉर्टकट कुंजी का उपयोग) के रूप में प्रकट / गायब कर सकता हूं।
मैं टर्मिनल एम्यूलेटर के रूप में टर्मिनेटर 0.96 का उपयोग कर रहा हूं। मैं इसे पृष्ठभूमि में कैसे चला सकता / सकती हूं और इसे गुके टर्मिनल (जैसे शॉर्टकट कुंजी का उपयोग) के रूप में प्रकट / गायब कर सकता हूं।
जवाबों:
मैं एक ही काम कर रहा था (गाइक और टर्मिनेटर दोनों का प्रशंसक होने के नाते)। यहाँ मैं इस सवाल का जवाब ( desqua के एक अनुकूलित संस्करण) के साथ आया था :
किसी एप्लिकेशन को लॉन्च करने के लिए या उसकी विंडो को दिखाने के लिए यदि पहले से लॉन्च किया गया हो या कम से कम फोकस किया जाए तो
1) wmctrl और xdotool , या एक टर्मिनल में स्थापित करें :sudo apt-get install wmctrl xdotool
2) एक स्क्रिप्ट बनाओ:
और इसे पेस्ट करें:
#!/bin/bash
#
# This script does this:
# launch an app if it isn't launched yet,
# focus the app if it is launched but not focused,
# minimize the app if it is focused.
#
# by desgua - 2012/04/29
# modified by olds22 - 2012/09/16
# - customized to accept a parameter
# - made special exception to get it working with terminator
# First let's check if the needed tools are installed:
tool1=$(which xdotool)
tool2=$(which wmctrl)
if [ -z $tool1 ]; then
echo "Xdotool is needed, do you want to install it now? [Y/n]"
read a
if [[ $a == "Y" || $a == "y" || $a = "" ]]; then
sudo apt-get install xdotool
else
echo "Exiting then..."
exit 1
fi
fi
if [ -z $tool2 ]; then
echo "Wmctrl is needed, do you want to install it now? [Y/n]"
read a
if [[ $a == "Y" || $a == "y" || $a = "" ]]; then
sudo apt-get install wmctrl
else
echo "Exiting then..."
exit 1
fi
fi
# check if we're trying to use an app that needs a special process name
# (because it runs multiple processes and/or under a different name)
app=$1
if [[ $app == terminator ]]; then
process_name=usr/bin/terminator
else
process_name=$app
fi
# Check if the app is running (in this case $process_name)
#pid=$(pidof $process_name) # pidof didn't work for terminator
pid=$(pgrep -f $process_name)
# If it isn't launched, then launch
if [ -z $pid ]; then
$app
else
# If it is launched then check if it is focused
foc=$(xdotool getactivewindow getwindowpid)
if [[ $pid == $foc ]]; then
# if it is focused, then minimize
xdotool getactivewindow windowminimize
else
# if it isn't focused then get focus
wmctrl -x -R $app
fi
fi
exit 0
chmod +x ~/bin/launch_focus_min.sh
3) अपना कीबोर्ड शॉर्टकट बनाएं:
अपनी कीबोर्ड सेटिंग्स खोलें और कमांड के साथ एक कस्टम शोरकट बनाएं: /home/<user>/bin/launch_focus_min.sh terminator
(~ / बिन काम नहीं करेगा)
इस कमांड को Shift + Escape (या जो भी कीबोर्ड शॉर्टकट के लिए आपने इस्तेमाल किया है) को असाइन करें।
#!/bin/bash
ऐसा करने का सबसे आसान तरीका होगा xdotool
, और windowunmap/windowmap
वांछित वर्ग के विंडोज़ को छिपाने / अनहाइड करने के लिए कमांड का उपयोग करना । (इस दृष्टिकोण का उल्लेख किए गए अन्य उत्तरों में उल्लेख नहीं किया गया था xdotool
।) समाधान सभी डेस्कटॉप पर अच्छी तरह से काम करेगा, जो भी विंडो प्रबंधक वे उपयोग कर रहे हैं। जैसा कि मैनपेज नोट करता है ,
X11 शब्दावली में, एक विंडो को मैप करने का मतलब है कि इसे स्क्रीन पर दिखाई देना।
तो, एक विंडो को अनमैपिंग करना विपरीत कार्य करेगा और विंडो को छिपाएगा। दुर्भाग्य से, xdotool
मानचित्र / अनमैप राज्यों के बीच स्विच करने के लिए उपयोग करने के लिए कोई टॉगल उपलब्ध नहीं है, लेकिन आपके लिए आवश्यक दो कमांड नीचे हैं। पहले खिड़की को छुपाता है:
xdotool search --class terminator windowunmap %@
और दूसरा प्रभाव को उलट देता है:
xdotool search --class terminator windowmap %@
कृपया ध्यान दें कि यदि खिड़की पहले से ही कम से कम है, तो windowunmap
कमांड असफल हो जाएगी।
अधिक जानकारी के लिए देखें man xdotool
, उबंटू ऑनलाइन और इस संबंधित प्रश्न का उत्तर देता है ।
टर्मिनेटर में वरीयताओं के एक सेट का चयन करके, आप इसे लगभग गीके के समान काम कर सकते हैं।
विस्तृत विवरण के लिए निम्नलिखित लेख देखें।
http://www.webupd8.org/2011/07/install-terminator-with-built-in-quake.html
मैं आपको वांछित परिणाम प्राप्त करने के लिए लेख के सभी चरणों का पालन करने की सलाह दूंगा। मैंने कुछ कदमों को छोड़ दिया, यह सोचते हुए कि वे आवश्यक नहीं थे, लेकिन वास्तव में कुछ कीड़े को दूर करने की आवश्यकता थी।
मैं केवल उपयोग करने की सलाह yakuake
दूंगा, केडी डेस्कटॉप के लिए एक ही शैली में एक टर्मिनल।
आप इसे चलाकर स्थापित कर सकते हैं sudo apt-get install yakuake
।
मैंने लिनोक्स टकसाल में ब्युनोबू के साथ गनोम टर्मिनल को बढ़ाने और कम करने के लिए एक स्क्रिप्ट लिखी, क्योंकि ग्यूके में कुछ अजीब कंसोल आउटपुट हैं। फिर मैंने इसे एडमिनिस्ट्रेटर कीबोर्ड-> शार्टकट्स सेक्शन में शॉर्टकट में जोड़ा।
स्क्रिप्ट जिसका नाम guake-toggling-for-gnome-terminal.sh है :
#!/usr/bin/env bash
if ! pgrep -x "gnome-terminal" > /dev/null
then
gnome-terminal --app-id us.kirkland.terminals.byobu -e byobu
fi
byobuVisible=$(xdotool search --onlyvisible byobu)
byobuNotVisible=$(xdotool search byobu)
xdotool windowminimize ${byobuVisible}
xdotool windowraise ${byobuNotVisible}
बायोबू यहां सिर्फ खिड़की का नाम है।