그놈 터미널을 바로 가기 키 하나로 표시하지 않거나
7333 단어 우분투20.04gnome-terminal리눅스
그놈 터미널을 사용하기 시작한 것
하나의 키로 터미널을 표시하거나 최소화 할 수없는 것이 다르다 ......
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
참고
참고로 했습니다. 감사합니다! !
$ sudo apt install xdotool
$ vim ~/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
$ sudo chmod u+x 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
Reference
이 문제에 관하여(그놈 터미널을 바로 가기 키 하나로 표시하지 않거나), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/loon/items/79c4c2a7e361460f35b6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)