구식처럼 터미네이터 에뮬레이터를 표시하고 사라지게하려면 어떻게해야합니까?


14

터미널 에뮬레이터로 터미네이터 0.96을 사용하고 있습니다. 백그라운드에서 실행하여 구크 터미널처럼 표시되거나 사라지는 방법 (예 : 바로 가기 키 사용)


1
@hashken 대답은 정말 쉽게이 있습니다 : webupd8.org/2011/07/install-terminator-with-built-in-quake.html
브랜든 Bertelsen

답변:


17

나는 똑같은 일을하려고 노력했다 (구아와 터미네이터의 팬이 됨). 다음은 내가 생각해 낸 내용입니다 ( 이 질문에 대한 desqua 의 답변 의 사용자 정의 버전 ).

응용 프로그램을 시작하거나 이미 시작된 경우 창을 표시하거나 초점이 맞춰진 경우 최소화

1) wmctrl & xdotool 또는 터미널에 설치하십시오.sudo apt-get install wmctrl xdotool

2) 스크립트를 작성하십시오.

  • 파일을 gedit ~ / bin / launch_focus_min.sh로 만드십시오.

그리고 이것을 붙여 넣으십시오 :

#!/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) 키보드 단축키를 만드십시오.

  • 키보드 설정을 열고 다음 명령을 사용하여 사용자 정의 shorcut을 만듭니다. /home/<user>/bin/launch_focus_min.sh terminator(~ / bin이 작동하지 않습니다)

  • 이 명령을 Shift + Escape (또는 구킹에 사용한 키보드 단축키)에 할당하십시오.


나는 이것을 시도했지만 그것은 나를 위해 작동하지 않는 것 같습니다.
Chirag

이것은 완벽한 솔루션입니다. 최고의 Terminator를 갖춘 Guake의 최고입니다. 감사합니다.
wranvaud

나를 위해 작동하려면 "~ / bin / launch_focus_min.sh terminator"를 "/home/<user>/bin/launch_focus_min.sh terminator"로 변경해야합니다.
Vituel

파일의 시작 부분에 bash shebang을 추가하여 zsh에서 제대로 실행되도록해야했습니다.#!/bin/bash
sean_j_roberts

4

가장 쉬운 방법은 use xdotool이며 windowunmap/windowmap명령을 사용 하여 원하는 창 클래스를 숨기거나 숨기기를 해제합니다. (이 접근법은 언급 된 다른 답변에서는 언급되지 않았습니다 xdotool.) 솔루션은 사용중인 창 관리자에 관계없이 모든 데스크탑에서 잘 작동합니다. 현상태대로 맨 노트 ,

X11 용어에서 창을 매핑하면 화면에서 창을 볼 수 있습니다.

따라서 창의 매핑을 해제하면 반대의 작업이 수행되고 창이 숨겨집니다. 불행히도, xdotool맵 / 맵 해제 상태를 전환하는 데 사용할 수있는 토글은 없지만 필요한 두 명령은 다음과 같습니다. 첫 번째는 창을 숨 깁니다.

xdotool search --class terminator windowunmap %@

두 번째는 효과를 되돌립니다.

xdotool search --class terminator windowmap %@

창이 이미 최소화 된 경우 windowunmap명령이 실패합니다.

자세한 내용은 다음을 참조 man xdotool온라인 우분투 맨 페이지를 , 그리고 이 관련 질문에 대한 내 대답 .


2

터미네이터에서 환경 설정 세트를 선택하면 Guake와 거의 유사하게 작동 할 수 있습니다.

자세한 설명은 다음 기사를 참조하십시오.
http://www.webupd8.org/2011/07/install-terminator-with-built-in-quake.html

기사의 모든 단계를 수행하여 원하는 결과를 얻는 것이 좋습니다. 나는 그것이 필요하지 않다고 생각하면서 몇 단계를 건너 뛰었지만 실제로 몇 가지 버그를 극복하기 위해 필요했습니다.


0

yakuakekde 데스크탑의 guake와 동일한 스타일의 터미널 인을 사용 하는 것이 좋습니다 .

를 실행하여 설치할 수 있습니다 sudo apt-get install yakuake.


터미네이터를 떠날 수 없습니다. 지난 2 년 이후로 사용하고 있습니다. 지금까지 거의 중독되었습니다. :)
Chirag

0

가장 간단한 해결책은 Terminator를 실행기잠그고 Ubuntu가 제공 하는 바로 가기 를 사용하는 것 입니다.

실행기 바로 가기를 사용하여 실행기에 잠겨있는 모든 응용 프로그램을 시작할 수 있습니다.

슈퍼 + 1 ~ 9

준비된 바로 가기의 전체 목록을 보려면 Super 키를 누르십시오.


0

guake에는 이상한 콘솔 출력 엉망이 있기 때문에 리눅스 민트에서 byobu로 그놈 터미널을 올리고 최소화하는 스크립트를 작성했습니다. 그런 다음 관리자 키보드-> shurtcuts 섹션의 바로 가기에 추가했습니다.

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}

Byobu는 여기서 창 이름 일뿐입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.