그놈 터미널을 바로 가기 키 하나로 표시하지 않거나

그놈 터미널을 사용하기 시작한 것



하나의 키로 터미널을 표시하거나 최소화 할 수없는 것이 다르다 ......

macOS에서 iTerm2를 사용하고 있었다고 생각했습니다. 거기서, Hotkey를 실현시키기 위해, 조금 뭔가 했습니다.
항상 다른 창에 겹치거나 여러 작업 공간에 걸쳐 표시되지 않습니다. 단지, 곧바로 호출할 수 있을 뿐입니다.
되었습니다 . 기사 아래에 추가하고 있습니다.

다른 방법이 있는지 확실하지 않습니다. 초도 아마추어이므로 용서해주십시오.

환경



우분투 20.04

xdotool 설치



명령줄에서 창을 조작할 수 있는 xdotool을 설치합니다.
$ sudo apt install xdotool

자세한 조작 방법은 여기을 참조하십시오.

쉘 스크립트 작성



원하는 곳에 두십시오. termwindow.sh라는 이름으로 홈 디렉토리에 저장했습니다.
$ vim ~/termwindow.sh

termwindow.sh
#!/bin/bash

TERMID=`xdotool search --onlyvisible gnome-terminal`
ACTIVEID=`xdotool getactivewindow`

if [ $TERMID = $ACTIVEID ]; then
        xdotool windowminimize $TERMID
  else
        xdotool windowactivate $TERMID
fi
xdotool search --onlyvisible gnome-terminal 에서 그놈 터미널 창 ID를 가져옵니다. 보이지 않는 부분에서 움직이고 있는 것도 히트해 버리므로, --onlyvisible 라고 하고 있습니다. 여러 창이 열려 있으면 해당 ID는 그 수만 있습니다만, 거기까지의 처리는 적당하게 하고 있습니다. 어떻게 해야 합니다. 죄송합니다....... → 어쨌든 . 이쪽도 추기를 봐 주세요.
xdotool getactivewindow 에서 활성 창의 ID를 가져옵니다.

if문의 내용은, 그놈 터미널의 윈도우가 액티브하면 버리는, 액티브가 아니면 액티브하게 한다. 그냥 그냥.

그런 다음 권한을 변경합니다.
$ sudo chmod u+x termwindow.sh

설정에서 키보드 단축키에 스크립트 할당



Ubuntu 설정에서 키보드 단축키 → 자신의 단축키로 이동하여 추가를 누르면 명령 열에 bash/home/ユーザー名/termwindow.sh 같은 느낌으로 명령과 스크립트의 위치를 ​​입력하여 실행하게 합니다. 풀 패스가 아니면 움직이지 않습니다. 좋아하는 이름과 키를 설정하여 완료됩니다.

터미널을 표시 할 때마다 "xdotool search 괜찮습니다.



설정한 키를 누르면 터미널이 날아 옵니다. 기뻐요!

(가비 가비 GIF로 무례합니다)

추가



바로 가기 키 하나로 윈도우를 전환하거나 작업 공간을 자유자재로 왕래할 수 있는 GNOME Terminal용 쉘 스크립트를 어쩐지 할 수 있었습니다. xdotool 재미 있습니다. 기사 편집이 매우 귀찮기 때문에 코드만 넣습니다....... 죄송합니다.
여기 에 명령의 상세가 들어 있습니다.

termwindow.sh
#!/bin/bash

TERMID=`xdotool search --onlyvisible gnome-terminal | tail -n1`               # ターミナルのウィンドウのIDを取得
LASTTERMID=`xdotool search --onlyvisible gnome-terminal | head -n1` # 他のウィンドウのうち最後に控えているやつのIDを取得
ACTIVEID=`xdotool getactivewindow`                                            # アクティブなウィンドウのIDを取得
CURRENTSPACE=`xdotool get_desktop` # get current workspace                    # 現在使用中のワークスペース(デスクトップ)番号を取得
TERMSPACE=`xdotool get_desktop_for_window $TERMID`                            # ターミナルのウィンドウがいるワークスペース番号を取得


if [ $TERMSPACE != $CURRENTSPACE ]; then                                      # ターミナルがいないワークスペースで呼んだら
    xdotool set_desktop_for_window $TERMID $CURRENTSPACE                      # ウィンドウを使用中ワークスペースへ移動
    xdotool set_desktop_for_window $LASTTERMID $CURRENTSPACE
    xdotool set_desktop $CURRENTSPACE                                         # 自分も目的のワークスペースに戻る
    xdotool windowactivate $TERMID
else
    if [ $TERMID = $ACTIVEID ]; then                                          # 以下、ターミナルがいるワークスペースで呼んだ時の処理
        xdotool windowminimize $TERMID
        if [ $LASTTERMID != $TERMID ]; then
            xdotool windowactivate $LASTTERMID ; xdotool windowminimize $LASTTERMID # ここで $TERMID と $LASTTERMID が入れ替わる
        else
            :
        fi
    else
        xdotool windowactivate $TERMID
    fi
fi


참고



참고로 했습니다. 감사합니다! !
  • xdotool 명령 전 26 실례
  • Bash의 편리한 구문이지만 잘 잊어 버리는 것의 비망록 - Qiita
  • 쉘 스크립트 (bash)의 if 문과 test 명령 ([]) 자신 메모 - Qiita
  • Linux / Unix | 표준 오류 출력 버리기 - Qiita
  • 좋은 웹페이지 즐겨찾기