web-dev-qa-db-ja.com

guakeタブの名前を変更して現在のコマンドを表示できますか?

私はguakeを非常に頻繁に使用し、任意の時点で3台以上のコンピューターにsshします。また、いくつかのタブ(ターミナル)でデーモンを実行しています。私が知りたいことは、現在のコマンドの名前をターミナルの名前にすることは可能ですか?タブを右クリックし、その名前を変更すると、これが発生します:(ターミナル5の後のタブを見てください)

Look at the tab after Terminal 5

ありがとう。

13
theTuxRacer

これは、guake(0.4.1)のバグです。筆者はこれが最善の方法ではないと言っていますが、私はこのバグレポートでこの問題を見つけて解決しています: https://github.com/Guake/guake/issues/205

タブラベルを設定するコード(行986)の後にダイアログ破壊コード(guake.py行983)を下に移動すると、実際に問題が解決されることがわかりました。だから私のために働くコードは次のようになります:

    response = dialog.run()
    # dialog.destroy() 

    if response == gtk.RESPONSE_ACCEPT:
        self.selected_tab.set_label(entry.get_text())

    dialog.destroy()

gtkとダイアログに問題があるかもしれませんが、バージョン0.4.1 diffでgtkに関連するコードの変更は見つかりませんでした。

編集:guake 0.4.2はタブ名を正しく変更できます

4
hutushen222

これがguakeで動作するかどうかはわかりませんが、ほとんどのターミナルエミュレータで動作します。端末のタイトルを変更するには、スクリプトにエコーを含めることができます。

echo -ne "\033]0;your_title_here\007"
3
João Pinto

ちょっとしたハックですが、これは現在の端末の名前をssh'edに変更します。

function ssh() {
    guake -r "$@";
    /usr/bin/ssh $@
}

また、Prompt_COMMANDを更新する場合、毎回端末名を更新する機能を使用できます。ただし、コマンドの実行後に名前が変更されるだけなので、これはsshの問題には機能しません。

例えば.

export Prompt_COMMAND=renameTerminal

function renameTerminal() {
    guake -r "$SOMENAME";
}
3
user257818

Guakeでタブ名を変更する場合は、タブ名を右クリックして名前を変更します。新しい名前を入力するためのポップアップボックスが開きます。

2
charlie-tca

単にタブ名を変更することができます

guake -r newtabname

最新の実行中のコマンドを取得したい場合は、例えば

echo "!!" | cut -f 1 -d " "

!!は、入力時にbashによって展開されます。エイリアス置換によって拡張されません。したがって、historyビルトインを使用して展開を行い、エイリアスに配置する必要があります。

alias setguaketitle='guake -r $(echo "$(history -p !! )"| cut -f 1 -d " ")'

最後のコマンドが

echo this is a test

それから

setguaketitle

タイトルを「エコー」に設定します。

1
rubo77

シェルをzshに変更する場合、これを~/.zshrcに追加できます。

preexec() {
    echo -n '\e]0;'
    echo -nE "$1"
    print -nP '  (%~)'
    echo -n '\a'
}

現在のコマンドと現在の作業ディレクトリが表示されます。これは、guakeだけでなく、すべてのターミナルエミュレーターで機能します。

Zshをインストールするには:

Sudo apt-get install zsh

試してみてください

zsh

新しいターミナルのデフォルトにする:

chsh -s /bin/zsh 
0
poolie