Quel raccourci clavier modifie la taille du texte du terminal `xfce4-terminal`?

11

Il fut un temps que Ctrl+ -et Ctrl+ +devrait augmenter ou diminuer la taille du texte du terminal dans les versions antérieures d'Ubuntu, qui est utile lorsque vous donnez des présentations et que vous voulez montrer votre code dans une plus grande taille. Je suis passé à Xubuntu 12.04 et je manque ces raccourcis clavier.

Y a-t-il une alternative que je peux utiliser? Sinon, existe-t-il un moyen de définir mon propre raccourci pour les remplacer?

Mise à jour: heureux d'annoncer que cette question est désormais sans objet pour les versions récentes de xfce4-terminal! Voyez ici .

John Feminella
la source

Réponses:

5

Au lieu de s'appuyer sur Python et les modules manquants, comme dans la solution github de Noah K. Tilton, j'ai rédigé un script bash qui est un peu plus proche d'être plus portable (au moins, pour les installations utilisant les chemins par défaut les plus génériques).

Vous devrez peut-être modifier le script pour configurer votre chemin de configuration xfce, votre police préférée, etc.

À seulement 2 fichiers, déposés dans mon dossier de la maison ~ / bin, « zoomin » et « zoomout ». Je ne suis pas aller plus loin que de faire de courtes commandes que je peux taper rapidement, donc je n'ai pas la moindre idée comment je serais en mesure de configurer ces scripts pour répondre uniquement quand je suis à l' intérieur de xfce4-terminal - ce qui signifie que J'ai renoncé à penser sur la façon d'obtenir les raccourcis clavier faites pour Ctrl+ -et Ctrl+ +parce que je sais actuellement que sur les liaisons de clavier global et ne voulait pas passer outre les Keypress Combos depuis d' autres applications auront besoin (ex: navigateur web, éditeur de texte).

Je pensais aussi d'avoir « zoommin » et « zoommax », pour passer à mes plus petits et les plus grandes polices en cas de besoin, généralement quand je dois voir des tonnes de texte VS quand je dois montrer une chose collègue sur mon écran. Je vais laisser ces deux scripts à votre imagination sur la façon de créer: 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 / zoom arrière

#!/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
la source
Pas sûr que je suis ce que vous entendez par « modules manquants » - mon script Python utilise la bibliothèque standard. Je pense que la portabilité bash / python est un toss-up. Cependant, la vôtre peut - être plus performant - au prix d' une certaine lisibilité.
g33kz0r
J'ai vécu cela entre autres. Noah K était, toute justice accordée contre peaufinage son script pour rendre la vie plus facile pour les utilisateurs * de buntu. J'ai simplement la rétroingénierie la chose à être un peu plus universel, en supprimant l'exigence de python tout à fait. : 3
starlocke
vous avez signalé un bug XDG_CONFIG_PATH- une chaîne qui ne figure pas dans mon script. Hein? En supposant que vous vouliez dire XDG_CONFIG_HOME, qui n'apparaît dans mon script, vous pouvez vérifier superuser.com/questions/365847/... qui dit essentiellement c'est à l'utilisateur de définir. Je ne sais pas ce que les « autres » étaient :) Les opinions peuvent différer, mais je pense que 1 script python est paramétrés un peu plus propre que 2 scripts bash.
g33kz0r
1
ce qu'il est sur un court changement de texte lisible Je suggère perl perl -pi -e 's/(FontName.*)(\d+)/$1.($2+2)/e' ~/.config/xfce4/terminal/terminalrcplutôt que de jongler avec le bash
Hachi
1
Cool, sur cette base, j'ai créé trois méthodes que j'ajouter dans mon fichier ~ / .bash_aliases: zi, zo et z, chacun prend comme premier argument soit étapes pour effectuer un zoom (zi et Zo), ou de la taille de la police de destination (z) : gist.github.com/samuell/107a498821c88426fa5a . Ainsi, à la taille du texte ensemble à 12, je le ferais z 12, et pour zoomer en une seule étape, je le ferais zi 1.
Samuel Lampa
4

Mise à jour: à partir de ce commit , le redimensionnement est maintenant pris en charge avec Ctrl +et Ctrl -, ce qui rend obsolète ma question.

Les autres réponses de ce fil sont toujours utiles si vous utilisez des versions antérieures de xfce4-terminal.

John Feminella
la source
1
Sur un clavier en_US, vous avez besoin Ctrl+ Shift+ =pour obtenir plus et Ctrl+ -pour obtenir plus petits. Ni Ctrl+ =ni Ctrl+ Shift+ -ne fonctionne, pas plus que le clavier +et -, ce qui est trop mauvais.
Adam Katz
3

Les raccourcis que vous mentionnez sont pour gnome-terminal, le terminal par défaut utilisé par GNOME (et, ce qui suit, par Ubuntu standard). XFCE, qui est l'environnement principal de Xubuntu, a sa propre implémentation de terminal. Cependant, pour autant que je sache, il n'est pas possible dans xfce4-terminal de changer la taille de la police avec un raccourci (vous pouvez voir la liste des raccourcis possibles lorsque vous allez dans Édition-> Préférences-> Raccourcis).

Si vous comptez sur cette fonctionnalité, vous pouvez installer gnome-terminal, mais comme l'intérêt d'utiliser XFCE est souvent qu'il n'implique pas les bibliothèques Gnome quelque peu lourdes, cela peut être un peu improductif.

janvier
la source
Merci d'avoir répondu. Mais combien décevant! :(
John Feminella
Eh bien, XFCE est censé être léger et rapide, donc naturellement, ils ont dû abandonner les fonctionnalités.
Janvier
@Janvier Je pense que votre réponse vend cette question un peu courte, veuillez voir ma réponse ci-dessous.
g33kz0r
@ g33kz0r nah, starlocke (la réponse acceptée) a déjà fait une bonne affaire.
Janvier
@Janvier, eh bien cela a été posté après ma réponse :)
g33kz0r
1

Il est possible, mais pas via xfce4 proprement dit, d'utiliser cette solution de contournement:

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

(nécessite python).

Je l'utilise dans un gestionnaire de fenêtres génial comme celui-ci:

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),

C'est un peu un hack, mais ça marche.

g33kz0r
la source
Cela a le même inconvénient que la réponse de @starlocke (qui a également mentionné qu'il s'agit de la solution de Noah): il crée un raccourci windowmanager, pas un raccourci terminal. Étant donné que ctrl-shift-up ou ctrl-shift-down sont des combinaisons de touches assez courantes (sans parler des raccourcis ctrl + et ctrl plus typiques utilisés pour changer la taille de la police par exemple dans gnome-terminal), cela pourrait conduire à des collisions de raccourcis et / ou manque de cohérence.
Janvier
Tout est vrai ... mais je ne pense pas que la collision soit si grave - si elle entre en collision, changez simplement le raccourci ... Je noterais également que OP n'a pas demandé de raccourci terminal - il a simplement demandé de manière générale comment pour le faire - et votre réponse selon laquelle "il n'est pas possible dans xfce4-terminal de changer la taille de la police avec un raccourci" est inexacte.
g33kz0r
1

Bien que le reste des réponses ici vous oblige à créer un certain type de `` piratage '' à l'aide de scripts personnalisés, qui peuvent ou non se casser lors des mises à niveau de votre système, la réponse réelle / autre a été trouvée dans une question StackOverflow ici:

Vim peut-il zoomer et dézoomer?

Par l'utilisateur: Chenming Zhang

Edit > Preferences > Appearance

Vous verrez l'option: Font

Qui contient à la fois la police choisie et la taille du texte de la police.

Je sais que vous recherchez un `` raccourci '', mais toutes les autres options semblent nécessiter beaucoup de personnalisation, alors que suivre cette voie vous garantira de ne pas visser votre terminal avec des personnalisations.

Cette réponse est également publiée ici pour tous ceux qui ont besoin d'une autre option ctrl +-pour effectuer un zoom avant / arrière.

tentative_pimple
la source
0

Le script suivant vérifie si le terminal Xfce4 est en cours d'exécution. Si ce n'est pas le cas, le script se ferme. Ce script utilise des arguments script-name --inpour effectuer un zoom avant et un script-name --outzoom arrière. Cela fonctionnera pour tout type de police. (Différents types de polices ont un nombre de mots différent.)

J'ai nommé mon script terminal-zoom, et j'utilise Ctrl Alt +pour terminal-zoom --inet Ctrl Alt -pour 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
la source
0

Il n'y a actuellement aucun raccourci de zoom offert par xfce-term. Considérez Terminator, qui est léger sur les dépendances (contrairement à Gnome-term) et offre un zoom avant et arrière via CTRL + MAJ + "+"

Slawomir
la source
0

Ce vieux fil, mais était curieux sur la façon dont d'autres ont fait. J'utilise i3-wm et j'ai écrit ce script pour l'utiliser avec

#!/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

Je l'a amélioré regardant le script par quelqu'un d'autre ici

#!/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
la source