我选择哪个终端?
我使用 xterm。没错,就是 xterm。这可能看起来像是一个老派的选择,而且我现在也使用 GNOME 3,但在多年尝试一些终端,忽略另一些终端,然后又回到旧的常用终端之后,我发现我不需要(或不喜欢)像 GNOME Terminal 这样的新东西。
我的理念:从简单开始,随着时间推移改进,并以生产力为目标。
背景色和前景色
我使用这个脚本启动 xterm
#!/bin/bash
bg=rgbi:`dd if=/dev/urandom bs=1 count=3 2>/dev/null | od -tu1 | awk
'{b=0.1/256; printf("%s/%s/%s\n", $2*b, $3*b, $4*b); exit(0)}'`
exec xterm -bg $bg -fg white "$@"
-bg
选项设置一个相对较暗的随机背景色,而 -fg
设置前景色(文本)为白色。
我喜欢将我的显示器设置为相当暗的(对比度 70,亮度 10),因为纯白色在黑色背景上对我来说有点太暗,而较浅的背景又有点太亮。
点击
我喜欢 xterm 的一点是 选择 的工作方式。鼠标左键 (LMB) 双击选择一个词,三击选择“更长的词”(参见配置),四击选择行,鼠标中键粘贴(或 Shift-Insert),最后,鼠标右键扩展选择。
当扩展选择时,它继续遵守现有选择的“规则”。 如果您双击,则左键将选择扩展到它包含的整个单词。 这是 $HOME/.Xresources
中的相关部分
XTerm*on2Clicks: word
XTerm*on3Clicks: regex [^ \n]+
XTerm*on4Clicks: line
“词”的概念(对于双击选择)是一个狭义的定义。当双击文件路径的一部分时,只会选择该部分。三击选择完整路径。
备用屏幕
我喜欢禁用备用屏幕。你可能会问,为什么?
假设您打开一个终端,并且您想运行一些命令,但后来决定必须先在其手册页中查找一些内容。因此,您运行 man somecommand
,找到您想要的内容,使用 q
退出 less
,然后突然 man
文本消失了!
如果您打算从中复制和粘贴,则必须重新启动它,或者在单独的终端窗口中打开它。
我明白为什么过去添加了这个功能——为了让您回到以前的上下文——但我不喜欢这种行为。
所以,我使用 .Xresources
中的这段代码禁用它
XTerm*titeInhibit: true
字体
我使用 xterm 和自定义位图字体,该字体是我通过调整标准的 10x20 Unicode 字体并编辑希伯来字母以适应我的口味而创建的。我想我应该找一种更现代的可缩放字体了;随着 HiDPI 显示器和 Wayland 变得流行,我可能很快就别无选择,但我的自定义字体目前效果良好。
Vim 的颜色
使用白色文本在深色背景上,颜色通常对我来说太暗了,尤其是使用 Vim 的默认语法高亮显示。我更喜欢将它们设置为稍微浅一些的颜色
! red, green, yellow, blue, magenta, cyan
XTerm*VT100*Color1: #ff8080
XTerm*VT100*Color2: #b0ffb0
XTerm*VT100*Color3: #ffffb0
XTerm*VT100*Color4: #b0b0ff
XTerm*VT100*Color5: #ffb0ff
XTerm*VT100*Color6: #b0ffff
! bright: red, green, yellow, blue, magenta, cyan
XTerm*VT100*Color9: #ffd0d0
XTerm*VT100*Color10: #d0ffd0
XTerm*VT100*Color11: #ffffd0
XTerm*VT100*Color12: #d0d0ff
XTerm*VT100*Color13: #ffd0ff
XTerm*VT100*Color14: #d0ffff
X 选择和剪贴板
我希望选择同时存在于 X 选择和剪贴板中,这样我就不必考虑目标应用程序(我想粘贴到的位置)想要使用什么,或者它想要如何使用它。
XTerm*VT100*selectToClipboard: true
登录操作
在相当遥远的过去,X 上的登录过程会自动从 $HOME/.Xresources
加载资源。我不确定默认情况下还剩下多少这种做法,但它在 RHEL8 和 GNOME 3 上对我不起作用。这是我修复它的方法。
首先,我将这个脚本放在 $HOME/bin/xrdb-merge-resources
中
#!/bin/sh
xrdb -merge $HOME/.Xresources
然后我创建了文件 $HOME/.config/autostart/xrdb-merge-resources.desktop
[Desktop Entry]
Name=xrdb-merge-resources
Exec=/home/ybardavi/bin/xrdb-merge-resources
Type=Application
最后,我通过将其添加到 GNOME 的启动应用程序中来设置它自动加载。
xterm
Xterm 比您想象的更具可定制性,这是它的众多优点之一。 熟悉它,它会回报您的努力。
1 条评论