URxvt: Tabbed nur wenn mehr als ein Tab
Vielleicht benutzt der ein oder andere auch rxvt-unicode als Standard Terminalemulator. Ich jedenfalls mache das seit Jahren und bin sehr glücklich damit. Da ich vor einigen Wochen von Debian (mal wieder) auf Gentoo umgestiegen bin, musste ich erneut mein Terminal einrichten. Dabei fiel mir auf, dass es noch durchaus interessantere Scripts gibt als matcher. Besonders angetan hat es mir hierbei das Script tabbed. Tabbed erstellt, wie der Name schon sagt, Tabs im Terminal. Diese sind via Maus oder Tastatur ganz einfach mit Shift+Left oder Shift+Right zu erreichen. Mit Shift+Down kann man einen neuen Tab erstellen. Schließen kann man die Tabs einfach, indem man wie gewöhnlich das darin laufende Programm schließt. Meistens ist das wohl bash, d.h. Ctrl+D oder exit schließen einen Tab.
Leider stört es mich ein wenig, dass die Tab-Leiste immer angezeigt wird, selbst wenn nur ein Tab offen ist. Dabei hat man einen ziemlich unnötigen Overhead, da dann in jedem Terminal völlig redundante Informationen zu sehen sind – auf Kosten einer ganzen Zeile im Terminal!^^ Da das für seine Funktionalität gar nicht mal so umfangreiche Script in Perl geschrieben ist, habe ich mich kurz rangesetzt und das Problem behoben. Die Tab-Leiste wird jetzt nur noch angezeigt, wenn mehr als ein Tab vorhanden ist. Das Ganze ist sogar über die Konfigurationsoption URxvt.tabbed.hide-when-empty: true einstellbar. Installiert habe ich die Version 9.10 von rxvt-unicode. Wer Interesse an dieser Funktionalität hat, kann folgenden Patch auf /usr/lib/urxvt/perl/tabbed anwenden.
-
5a6,10
-
> my $num_tabs = scalar @{$self->{tabs}};
-
> if ($self->{hide} ne 0 and $num_tabs < 2) {
-
> return;
-
> }
-
>
-
77a83,87
-
> my $num_tabs = scalar @{$self->{tabs}};
-
> if ($self->{hide} ne 0 and $num_tabs < 2) {
-
> return;
-
> }
-
>
-
225a236
-
> my $hide = $self->x_resource ("hide-when-empty");
-
230a242
-
> defined $hide or $hide = 0;
-
233a246
-
> $self->{hide} = $hide;



