Yanıtlar:
zsh
İTerm2'nin pencere başlığını ayarlamak için aşağıdakini girebilirsiniz :
echo -ne "\e]1;this is the title\a"
Bunu geçerli saati veya çalışma dizini eklemek için otomatikleştirmek istiyorsanız zsh
, precmd()
fonksiyondaki başlığı ayarlamak için yapılandırma dosyalarınızı düzenleyin $PWD
.
echo -ne "\e]1;$PWD\a"
precmd
İşlev hakkında man zshmisc
bölümdeki bilgileri okuyabilirsiniz SPECIAL FUNCTIONS
.
Profiles > Terminal > Terminal Emulation > Terminal may set tab/window title
.
iTerm2
(3.2.9) '
Benim için ne işe yarar:
echo -e "\033];this is the title\007"
Mac OSX ve iTerm kullanıyorsanız, iTerm2 ::
Zsh kullanıyorsanız, ayarlarınızı düzenlemeniz gerekebilir. Ayarlarınız tipik olarak dosyadadır ~/.zshrc
. Bu çizginin bulunduğundan emin olmak için ayarlarınızı eklemek veya düzenlemek istiyorsunuz:
DISABLE_AUTO_TITLE="true"
İTerm kullanmanın kolaylıklarından biri, pencere başlığını ve sekme başlığını ayrı ayrı ayarlama imkanıdır:
# $1 = type; 0 - both, 1 - tab, 2 - title
# rest = text
setTerminalText () {
# echo works in bash & zsh
local mode=$1 ; shift
echo -ne "\033]$mode;$@\007"
}
stt_both () { setTerminalText 0 $@; }
stt_tab () { setTerminalText 1 $@; }
stt_title () { setTerminalText 2 $@; }
Bu şekilde hangi pencereye hangi pencereye bağlandığınızı anında görebilirsiniz ve her sekmenin pencere başlığı kullanıcı ve CWD'yi gösterir.
.bashrc
, değil mi?
DISABLE_AUTO_TITLE="true"
, sorunu
A precmd
hile yapar. Bununla birlikte, bazı oh-my-zsh temaları pencere başlığına karışıyor. PR_TITLEBAR
Düzeltmek için boş bir dizeye ayarlayın .
set-window-title() {
# /Users/clessg/projects/dotfiles -> ~/p/dotfiles
window_title="\e]0;${${PWD/#"$HOME"/~}/projects/p}\a"
echo -ne "$window_title"
}
PR_TITLEBAR=''
set-window-title
add-zsh-hook precmd set-window-title
İTerm2'nin sekme ayarlarıyla Tercihler -> Görünüm'de dolaşmanızı da tavsiye ederim.
Cevapların hiçbiri benim için işe yaramadı, muhtemelen iterm2 versiyonu için (3.3.3).
Bunu öğrendim: https://gist.github.com/phette23/5270658#gistcomment-3020766
Temel olarak, diğer tüm cevaplarda söylenenleri yapabilirsiniz, fakat aynı zamanda
Preferences > Profiles > General > Title -> Name (Job)
Bu benim için çalıştı.
General
o altında, sekmesi Profiles
sekmesi
> Profiles
Birini özledim . Benim hatam. Güncellenmiş.
Kabul edilen cevap uzun süredir benim için çalıştı, ancak şimdi iTerm2'nin en son sürümünde bozulmuştur. Bulduğum bir geçici çözüm Python API'sini etkinleştirmek ve sekme adını şöyle ayarlayan bir komut dosyası oluşturmaktı:
#!/usr/bin/env python3.7
import argparse
import iterm2
def get_args():
parser = argparse.ArgumentParser(description='Set the tab name')
parser.add_argument('name')
return parser.parse_args()
ARGS = get_args()
async def main(connection):
app = await iterm2.async_get_app(connection)
window = app.current_terminal_window
if window is not None:
tab = window.current_tab
await tab.async_set_title(ARGS.name)
else:
# You can view this message in the script console.
print("No current window")
iterm2.run_until_complete(main)
"Tab_name.py" olarak kaydedildi, sonra:
~/Library/ApplicationSupport/iTerm2/iterm2env/versions/*/bin/python3 ~/Library/ApplicationSupport/iTerm2/Scripts/tab_name.py "new tab name"
Neredeyse kabul edilen cevap kadar hoş ya da zarif değil, ama işe yarıyor.
iTerm -> Tercihler -> Görünüm -> Pencere ve Sekme başlıkları -> kontrol et Profil adı seçeneğini göster