Im Moment ist der Titel standardmäßig reattach-to-user-namespace
(OS X), was ziemlich ärgerlich ist. Gibt es eine Option, die ich in meinen einfügen kann, tmux.conf
um einen anderen Standardtitel zu erhalten?
Wenn nicht, wie würde ich eine Schlüsselbindung erstellen, die ein neues Fenster erstellt und mich dann zur Eingabe eines Namens auffordert?
set-option -g default-command "reattach-to-user-namespace -l zsh"
und ende die meiste Zeit mit einem Fenster mit dem Namenzsh
, wie gewünscht. Aus unbekannten Gründen ändert sich manchmal der Name nicht und das Fenster wird aufgerufenreattach-to-user-namespace
. Ich habe immer noch kein Muster bemerkt, wann / warum dies passiert, aber es scheint, als gäbe es einen subtilen Fehler oder etwas in meiner Konfiguration.Antworten:
Es gibt keinen globalen Standardfensternamen, der auf alle neuen Fenster angewendet wird. Sie verwenden standardmäßig das erste „Wort“ des Befehls (oder die Standard-Shell, wenn es keinen Befehl gibt) (einen Teil davon). Ihre Fenster sind wahrscheinlich standardmäßig,
reattach-to-user-namespace
weil Sie das erste interessante Stück Ihresdefault-command
Wertes sind.Es wäre ein bisschen rund, aber Sie könnten Ihren Standardbefehl in ein Shell-Skript einfügen und
default-command
stattdessen auf dieses Skript verweisen . Bei dieser Konfiguration ist der Standardfenstername (für Fenster, die ohne expliziten Befehl erstellt wurden) der Name des Shell-Skripts.Andernfalls gibt es verschiedene Möglichkeiten, ein Fenster manuell zu benennen / umzubenennen:
Zur Erstellungszeit mit
-n
:Sie können erneut binden
c
(der Standardschlüssel, der zum Erstellen eines Fensters verwendet wird), um einen „Standardnamen“ Ihrer Wahl einzufügen:Benennen Sie ein vorhandenes Fenster um:
Es gibt auch eine Standardbindung (Präfix
,
), die Sie zur Eingabe eines neuen Namens auffordert und das Fenster umbenennt.Benennen Sie ein Fenster über eine „Escape-Sequenz“ um, die an das tty eines Fensters gesendet wird:
So können Sie mich auffordern, einen Namen für ein neues Fenster einzugeben (Aufforderung vor oder nach dem Erstellen des Fensters):
quelle
set-option -g default-command "tmux rename-window base; reattach-to-user-namespace -l zsh"
legt einen Standardtitel von festbase
. Vielleicht möchten Sie dies zu Ihrer Antwort hinzufügen. :)tmux wählt den ersten Befehl als Fensternamen.
Angenommen, Sie möchten, dass "i" der Standardtitel ist, können Sie es so austricksen.
Das ist besser als
Wenn Sie einen Bereich erstellen, nachdem Sie einen Fenstertitel manuell festgelegt haben, wird der Titel wieder in "i" umbenannt.
quelle
Zusätzlich zu Chris 'Antwort zum Festlegen des Fenstertitels mithilfe von
new window -n 'somename'
können Sie auch eine leere Zeichenfolge''
als Namen eines Fensters angeben. Auf diese Weise kann ich die Standardverknüpfung (Präfix + c) verwenden und muss keinen Namen für temporäre Fenster festlegen, kann sie jedoch bei Bedarf umbenennen:bind-key c new-window -n ''
quelle
Keine wirkliche Antwort mehr als ein Hack:
Ich habe einen Symlink mit erstellt
sudo ln -s /usr/local/bin/reattach-to-user-namespace /usr/local/bin/pbash
Und jetzt wird es
pbash
als Standardtitel angezeigt.quelle