哪种键盘快捷键会更改“ xfce4-terminal”终端文本大小?


11

过去,Ctrl+ -Ctrl+ +会增加或减小Ubuntu早期版本中终端的文本大小,这在您进行演示并希望以更大的尺寸显示代码时很有用。我切换到Xubuntu 12.04,但缺少这些键盘快捷键。

我可以使用替代方法吗?否则,是否有办法定义自己的快捷方式来替换这些快捷方式?

更新:很高兴地报告,这个问题现在对于最新版本的xfce4-terminal!看这里

Answers:


5

我没有像Noah K. Tilton的github解决方案那样依赖Python和缺少的模块,而是起草了一个bash脚本,该脚本距离更易于移植(至少对于使用最通用,默认路径的安装而言)。

您可能需要调整脚本以设置xfce配置路径,您喜欢的字体等。

只有2个文件分别放入我家的〜/ bin文件夹中,分别为“ zoomin”和“ zoomout”。我所做的仅是快速输入可以快速键入的简短命令,因此我不知道如何配置这些脚本以仅在xfce4-terminal内部时才响应-这意味着我放弃了有关如何获取Ctrl+ -Ctrl+ 的键绑定的想法,+因为我目前仅了解全局键盘绑定,并且不希望覆盖那些Keypress Combo,因为其他应用程序将需要它们(例如:Web浏览器,文本编辑器)。

我还考虑过使用“ zoommin”和“ zoommax”在需要时跳转到最小和最大字体,通常是当我需要在屏幕上向同事展示某些东西时需要看到大量文本VS。我将把这两个脚本留给您如何创建: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 /缩小

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

不确定我是否遵循“缺少模块”的意思-我的python脚本使用标准库。我认为bash / python可移植性是一个折腾。但是,您的性能可能更高-牺牲了一些可读性。
g33kz0r 2014年

我经历了这个等等。出于公平考虑,Noah K反对调整他的脚本以使* buntu用户的生活更加轻松。我只是对它进行了反向工程,使其更具通用性,完全删除了python要求。:3
starlocke 2014年

您报告了一个错误XDG_CONFIG_PATH-脚本中未出现一个字符串。??假设你的意思是XDG_CONFIG_HOME,这不会出现在我的脚本,你可能想看看superuser.com/questions/365847/...基本上说,这是由用户来定义它。不知道什么是“其他” :)意见可能有所不同,但是我认为1个参数化的python脚本比2个bash脚本更干净。
g33kz0r 2014年

1
这是关于简短易读的文本更改,我建议使用perl perl -pi -e 's/(FontName.*)(\d+)/$1.($2+2)/e' ~/.config/xfce4/terminal/terminalrc而不是摆弄bash
Hachi

1
很酷,基于此,我创建了三个方法,将它们添加到〜/ .bash_aliases文件中:zi,zo和z,每个方法都将缩放(zi和zo)或目标字体大小(z)作为第一个参数。 :gist.github.com/samuell/107a498821c88426fa5a。因此,将文本大小设置为12,我会这样做z 12,并且将一步放大,我会这样做zi 1
塞缪尔·兰帕2014年

4

更新:从此提交开始Ctrl +和现在支持调整大小Ctrl -,这使我的问题过时了。

如果您使用的是旧版本的,则该线程中的其他答案仍然很有价值xfce4-terminal


1
在en_US键盘上,您需要Ctrl+ Shift+ =变大,而Ctrl+ + -变小。无论是Ctrl+ =Ctrl+ Shift+ -会的工作,也不会对键盘+-,这是太糟糕了。
亚当·卡兹

3

您提到的快捷方式用于gnome-terminal,这是gnome(以及随后的标准Ubuntu)使用的默认终端。XFCE是Xubuntu的主要环境,它具有自己的终端实现。但是,据我所知,无法在xfce4-terminal中使用快捷方式更改字体大小(转到“编辑”->“首选项”->“快捷方式”时,可以看到可能的快捷方式列表)。

如果依靠此功能,则可以安装gnome-terminal,但是由于使用XFCE的全部目的通常是它不涉及有些沉重的Gnome库,所以这可能会有些无用。


谢谢你的回答。多么令人失望!:(
约翰·费米内拉

好吧,XFCE应该是精简且快速的,因此自然而然地他们不得不放弃功能。
1

@一月,我认为您的答案将这个问题推了很短,请在下面查看我的答案。
g33kz0r

@ g33kz0r不,starlocke(接受的答案)已经是一个很好的案例。
1

@一月,好吧,这是我回答后发布的:)
g33kz0r 2014年

1

可能的,虽然不是通过XFCE4正确,使用此解决方法:

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

(需要python)。

我在像这样的出色窗口管理器中使用它:

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

这有点hack,但是可以用。


这与@starlocke(也提到这是Noah的解决方案)的答复具有相同的缺点:它创建了windowmanager快捷方式,而不是终端快捷方式。由于ctrl-shift-up或ctrl-shift-down是相当常见的键组合(更不用说更典型的ctrl +和ctrl-用于更改字体大小的快捷方式,例如在gnome-terminal中),因此可能会导致快捷方式冲突和/或缺乏一致性。
1

没错,但是我不认为冲突有什么大不了的-如果发生碰撞,只需更改快捷方式...我还要注意,OP并没有要求终端快捷方式-他只是询问了如何这样做-并且您的回答“在xfce4-terminal中无法使用快捷方式更改字体大小”是不正确的。
g33kz0r 2014年

1

虽然此处的其余答案要求您使用自定义脚本创建某种类型的“ hack”,但在升级系统时可能会或可能不会中断,但在此处的StackOverflow问题中找到了实际/其他答案:

vim可以放大和缩小吗?

用户:张晨明

Edit > Preferences > Appearance

您将看到以下选项: Font

其中包含所选字体和字体文本的大小。

我知道您正在寻找“捷径”,但是所有其他选项似乎都需要大量自定义,而采用这种方法将确保您不会因任何自定义而使终端搞砸。

此答案也发布在此处,供需要其他选项以ctrl +-进行放大/缩小的任何人使用。


0

以下脚本检查Xfce4 Terminal是否正在运行。如果不是,则脚本退出。该脚本使用参数script-name --in进行放大和script-name --out缩小。它适用于任何字体类型。(不同的字体类型具有不同的单词数。)

我将脚本命名为terminal-zoom,并且正在使用Ctrl Alt +for terminal-zoom --inCtrl Alt -for 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"

0

xfce-term当前没有提供缩放快捷方式。考虑终结者,它对依赖项是轻量级的(不同于Gnome-term),并且可以通过CTRL + SHIFT +“ +”进行放大和缩小。


0

这是一个老话题,但对其他人如何做到这一点感到好奇。我正在使用i3-wm并编写了此脚本以供使用

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

我在这里看别人的脚本时改进了它

#!/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
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.