Welche Tastenkombination ändert die Textgröße des xfce4-Terminals?

11

Früher war es so, dass Ctrl+ -und Ctrl+ +die Textgröße des Terminals in früheren Versionen von Ubuntu vergrößerten oder verkleinerten. Dies ist hilfreich, wenn Sie Präsentationen halten und Ihren Code in einer größeren Größe anzeigen möchten. Ich habe zu Xubuntu 12.04 gewechselt und mir fehlen diese Tastaturkürzel.

Gibt es eine Alternative, die ich verwenden kann? Oder wenn nicht, gibt es eine Möglichkeit, meine eigene Verknüpfung zu definieren, um diese zu ersetzen?

Update: Ich freue mich, Ihnen mitteilen zu können, dass diese Frage jetzt für aktuelle Versionen von xfce4-terminal! Siehe hier .

John Feminella
quelle

Antworten:

5

Anstatt mich auf Python und fehlende Module zu verlassen, wie in Noah K. Tiltons Github-Lösung, habe ich ein Bash-Skript entworfen, das der Portabilität einen Schritt näher kommt (zumindest für Installationen mit den allgemeinsten Standardpfaden).

Möglicherweise müssen Sie das Skript optimieren, um Ihren xfce-Konfigurationspfad, Ihre Lieblingsschriftart usw. einzurichten.

Nur 2 Dateien, die in den Ordner ~ / bin meines Hauses "zoomin" und "zoomout" abgelegt wurden. Ich bin nicht weiter gegangen, als kurze Befehle zu erstellen, die ich schnell eingeben kann. Daher habe ich keine Ahnung, wie ich diese Skripte so konfigurieren kann, dass sie NUR reagieren, wenn ich mich innerhalb des xfce4-Terminals befinde - was bedeutet Ich habe es aufgegeben, darüber nachzudenken, wie die Tastenkombinationen für Ctrl+ -und Ctrl+ erstellt werden können, +da ich derzeit nur über globale Tastaturbindungen Bescheid weiß und diese Tastendruckkombinationen nicht überschreiben wollte, da andere Anwendungen sie benötigen (z. B. Webbrowser, Texteditor).

Ich dachte auch darüber nach, "zoommin" und "zoommax" zu haben, um bei Bedarf zu meinen kleinsten und größten Schriftarten zu springen, normalerweise, wenn ich Tonnen von Text VS sehen muss, wenn ich einem Kollegen etwas auf meinem Bildschirm zeigen muss. Ich überlasse diese beiden Skripte Ihrer Fantasie, wie man sie erstellt: P.

~ / bin / zoomin

#!/bin/bash
SIZE=`grep 'FontName' ~/.config/xfce4/terminal/terminalrc | cut -d' ' -f 2`
NEWSIZE=$((SIZE + 2))
REGEXPR='s/FontName.*/FontName=Monospace '$NEWSIZE'/g'
sed -i "$REGEXPR" ~/.config/xfce4/terminal/terminalrc

~ / bin / zoomout

#!/bin/bash
SIZE=`grep 'FontName' ~/.config/xfce4/terminal/terminalrc | cut -d' ' -f 2`
NEWSIZE=$((SIZE - 2))
REGEXPR='s/FontName.*/FontName=Monospace '$NEWSIZE'/g'
sed -i "$REGEXPR" ~/.config/xfce4/terminal/terminalrc
Starlocke
quelle
Ich bin mir nicht sicher, ob ich dem folge, was Sie unter "fehlenden Modulen" verstehen. Mein Python-Skript verwendet die Standardbibliothek. Ich denke, Bash / Python-Portabilität ist ein Fehler. Ihre könnten jedoch leistungsfähiger sein - auf Kosten einer gewissen Lesbarkeit.
g33kz0r
Ich erlebte dies unter anderem. Noah K war fairerweise dagegen, sein Skript zu optimieren, um * buntu-Benutzern das Leben zu erleichtern. Ich habe das Ding einfach rückentwickelt, um es etwas universeller zu machen, und die Python-Anforderungen insgesamt entfernt. : 3
Starlocke
Sie haben einen Fehler gemeldet XDG_CONFIG_PATH- eine Zeichenfolge, die in meinem Skript nicht angezeigt wird. Huh? Angenommen , Sie sind gemeint XDG_CONFIG_HOME, die sich in meinem Skript erscheinen, können Sie prüfen , superuser.com/questions/365847/... die im Grunde sagt , dass es für den Benutzer ist es bis zu definieren. Ich bin mir nicht sicher, was die "anderen Dinge" waren :) Die Meinungen mögen abweichen, aber ich denke, 1 parametrisiertes Python-Skript ist etwas sauberer als 2 Bash-Skripte.
g33kz0r
1
Es geht um eine kurze lesbare Textänderung. Ich würde Perl vorschlagen, perl -pi -e 's/(FontName.*)(\d+)/$1.($2+2)/e' ~/.config/xfce4/terminal/terminalrcanstatt mit der Bash zu spielen
Hachi
1
Cool, basierend darauf habe ich drei Methoden erstellt, die ich in meine ~ / .bash_aliases-Datei eingefügt habe: zi, zo und z, die jeweils als erstes Argument entweder Schritte zum Zoomen (zi und zo) oder die Zielschriftgröße (z) verwenden. : gist.github.com/samuell/107a498821c88426fa5a . Um die Textgröße auf 12 zu setzen, würde ich dies tun z 12und um in einem Schritt zu zoomen, würde ich dies tun zi 1.
Samuel Lampa
3

Die von Ihnen erwähnten Verknüpfungen beziehen sich auf das Gnome-Terminal, das Standard-Terminal, das von Gnome (und im Folgenden von Standard-Ubuntu) verwendet wird. XFCE, die Hauptumgebung in Xubuntu, verfügt über eine eigene Terminalimplementierung. Soweit ich das beurteilen kann, ist es in xfce4-terminal jedoch nicht möglich, die Schriftgröße mit einer Verknüpfung zu ändern (die Liste der möglichen Verknüpfungen finden Sie unter Bearbeiten-> Einstellungen-> Verknüpfungen).

Wenn Sie sich auf diese Funktion verlassen, können Sie das Gnome-Terminal installieren. Da der Sinn der Verwendung von XFCE jedoch häufig darin besteht, dass die etwas schweren Gnome-Bibliotheken nicht beteiligt sind, ist dies möglicherweise etwas unproduktiv.

Januar
quelle
Danke für die Antwort. Wie enttäuschend! :(
John Feminella
Nun, XFCE soll schlank und schnell sein, also mussten sie natürlich auf Funktionen verzichten.
Januar
@ Januar Ich denke, Ihre Antwort verkauft diese Frage ein bisschen kurz, siehe meine Antwort unten.
g33kz0r
@ g33kz0r nah, starlocke (die akzeptierte antwort) hat schon einen guten fall gemacht.
Januar
@ Januar, nun, das wurde nach meiner Antwort gepostet :)
g33kz0r
3

Update: Ab diesem Commit wird die Größenänderung jetzt mit Ctrl +und unterstützt Ctrl -, was meine Frage überflüssig macht.

Die anderen Antworten in diesem Thread sind immer noch wertvoll, wenn Sie ältere Versionen von verwenden xfce4-terminal.

John Feminella
quelle
1
Auf einer en_US-Tastatur benötigen Sie Ctrl+ Shift+ =, um größer und Ctrl+ -, um kleiner zu werden. Weder Ctrl+ =noch Ctrl+ Shift+ -funktionieren, noch die Tastatur +und -, was zu schade ist.
Adam Katz
1

Es ist möglich, wenn auch nicht durch xfce4 ordnungsgemäße Verwendung dieses Problem zu umgehen:

https://github.com/noah/xfce4-terminal-font

(erfordert Python).

Ich benutze es in einem fantastischen Fenstermanager wie folgt:

awful.key({ "Control", "Shift" }, "Up", function () awful.util.spawn(script_dir .. "/xfce4-terminal-font +", false)end),
awful.key({ "Control", "Shift" }, "Down", function () awful.util.spawn(script_dir .. "/xfce4-terminal-font -", false)end),

Es ist ein bisschen wie ein Hack, aber es funktioniert.

g33kz0r
quelle
Dies hat den gleichen Nachteil wie die Antwort von @starlocke (der auch erwähnte, dass es sich um Noahs Lösung handelt): Es wird eine Windowmanager-Verknüpfung erstellt, keine Terminal-Verknüpfung. Da Strg-Umschalt-Aufwärts- oder Strg-Umschalt-Abwärts-Tastenkombinationen ziemlich häufig sind (ganz zu schweigen von den typischeren Tastenkombinationen Strg + und Strg +, die zum Ändern der Schriftgröße beispielsweise im Gnome-Terminal verwendet werden), kann dies zu Verknüpfungskollisionen und führen / oder mangelnde Konsistenz.
Januar
Alles wahr ... aber ich denke nicht, dass Kollision eine so große Sache ist - wenn sie kollidiert, ändern Sie einfach die Verknüpfung ... Ich würde auch bemerken, dass OP nicht nach einer Terminalverknüpfung gefragt hat - er hat nur allgemein gefragt, wie um es zu tun - und Ihre Antwort, dass "es in xfce4-terminal nicht möglich ist, die Schriftgröße mit einer Verknüpfung zu ändern", ist ungenau.
g33kz0r
1

Während die restlichen Antworten hier erfordern, dass Sie mithilfe von benutzerdefinierten Skripten eine Art "Hack" erstellen, der bei Upgrades Ihres Systems möglicherweise nicht funktioniert, wurde die tatsächliche / andere Antwort in einer StackOverflow-Frage hier gefunden:

Kann vim vergrößern und verkleinern?

Vom Benutzer: Chenming Zhang

Edit > Preferences > Appearance

Sie sehen die Option: Font

Welches sowohl die gewählte Schriftart als auch die Größe des Schrifttextes enthält.

Ich weiß, dass Sie nach einer Verknüpfung suchen, aber alle anderen Optionen erfordern anscheinend viele Anpassungen, während Sie auf diesem Weg sicherstellen, dass Sie Ihr Terminal nicht mit Anpassungen vermasseln.

Diese Antwort wird auch hier für alle veröffentlicht, die eine alternative Option zum ctrl +-Vergrößern / Verkleinern benötigen .

tentative_pimple
quelle
0

Das folgende Skript prüft, ob das Xfce4-Terminal ausgeführt wird. Ist dies nicht der Fall, wird das Skript beendet. Dieses Skript verwendet Argumente script-name --inzum Vergrößern und script-name --outVerkleinern. Es funktioniert für jeden Schrifttyp. (Verschiedene Schriftarten haben eine unterschiedliche Anzahl von Wörtern.)

Ich habe mein Skript terminal-zoom genannt und verwende es Ctrl Alt +für terminal-zoom --inund Ctrl Alt -für terminal-zoom --out.

#!/bin/bash

# Check if Xfce4 Terminal is running. If it is not, exit.
status=$(pgrep xfce4-terminal)

if [ -z "$status" ]; then
    notify-send "No Xfce4 Terminal session is open."
    exit 1
fi

# 1. Get the full line. 2. Get the entire line minus font size. 3. Get only font size. 
line=$(grep "FontName" ~/.config/xfce4/terminal/terminalrc)
font_name=$(echo "$line" | sed s/'\w*$'//)
font_size=$(echo "$line" | grep -oE '[^ ]+$')

# Increase or decrease font size. You might want to change this to increase and decrease by two.
if [ "$1" = "--in" ]; then
    new_size=$((font_size + 1))
elif [ "$1" = "--out" ]; then
    new_size=$((font_size - 1))
else
    notify-send "Argument options: --in --out"
    exit 1
fi

# Replace the line with the new font size.
action='s/'$font_name$font_size'/'$font_name$new_size'/'
sed -i "$action" ~/.config/xfce4/terminal/terminalrc

# Show the new current font being used.
notify-send -t 200 "$new_size pt font"
jbrock
quelle
0

Derzeit werden von xfce-term keine Zoom-Verknüpfungen angeboten. Betrachten Sie Terminator, das im Gegensatz zu Gnome-Term leicht von Abhängigkeiten abhängig ist und das Vergrößern und Verkleinern über STRG + UMSCHALT + "+" bietet.

Slawomir
quelle
0

Dies ist ein alter Thread, aber ich war neugierig, wie andere das gemacht haben. Ich benutze i3-wm und habe dieses Skript geschrieben, um es damit zu verwenden

#!/bin/bash

TRC=~/.config/xfce4/terminal/terminalrc
OldLine=$(grep FontName $TRC)
FontSize=$(echo $OldLine |sed 's/FontName=.* \([[:digit:]]\+\)/\1/g')
OldFont=$(echo $OldLine | sed 's/\(FontName=.*\) [[:digit:]]\+/\1/g')

if [ "$1" == "in" ] 
    then
        FontSize=$((FontSize+1))
fi

if [ "$1" == "out" ]
    then
        FontSize=$((FontSize-1))
fi

if [ "$1" == "reset" ]
    then
        FontSize=11
fi

NewLine="$OldFont $FontSize"
sed -i "s/$OldLine/$NewLine/g" $TRC

Ich habe es verbessert, indem ich mir das Skript von jemand anderem hier angesehen habe

#!/bin/bash

#Check if xfce4-terminal is running, If not exit.
Status=$(pgrep xfce4-terminal)
if [ -z "$Status" ] 
    then
        exit 1
fi

TRC=~/.config/xfce4/terminal/terminalrc
OldLine=$(grep FontName $TRC)
FontSize=$(echo $OldLine |sed 's/FontName=.* \([[:digit:]]\+\)/\1/g')
OldFont=$(echo $OldLine | sed 's/\(FontName=.*\) [[:digit:]]\+/\1/g')

if [ "$1" == "in" ] 
    then
        FontSize=$((FontSize+1))
fi

if [ "$1" == "out" ]
    then
        FontSize=$((FontSize-1))
fi

if [ "$1" == "reset" ]
    then
        FontSize=11
fi

NewLine="$OldFont $FontSize"
sed -i "s/$OldLine/$NewLine/g" $TRC
dman79
quelle