从 SO 移至 SU:
我搜索了互联网并阅读了 roxterm 手册页,但无济于事。有人能解释一下吗:我正在尝试禁用 roxterm 中的粗体文本。我个人认为粗体文本看起来很糟糕。
我假设我必须在 ~/.config/roxterm.sourceforge.net/Colours/theme 文件或 ~/.Xresources 中放入一些内容
答案1
有两个方面:
- 可能会删除终端绘制粗体文本的功能
- 告诉终端中运行的应用程序不要使用粗体文本
对于前者,您可能不会取得太大的成功:roxterm 缺乏 xterm 的可配置性。相反,它假设字体提供了该功能,并在应用程序要求时使用它。
对于应用程序来说,至少有三种类型:
- 那些使用 termcap/terminfo 的人
- 那些使用他们的自己的数据库(
ls
最常见的是 GNU) - 硬编码应用程序(那些只编写转义序列的应用程序)。groff 不会这,但如果您设置了环境变量
GROFF_NO_SGR
,则可以抑制这种情况。还有其他情况。
如果您可以忽略最后一个,那么对于前两个,可以修改终端数据库条目。即使是 Linux 上的“termcap”应用程序也几乎总是使用 ncurses 的 terminfo 数据库(Slackware 可能仍提供 termcap...)。您可以制作不使用 SGR 1 的自定义终端描述,例如,\E[1m
在 terminfo 语法中(该bold
功能也显示为部分的sgr
能力)。至少,可以使用以下命令完成此操作,并使用以下命令进行编译tic
:
nobold|my custom,
bold@, sgr@, use=xterm,
并设置TERM
为“nobold”。这样做的ls
副作用是破坏数据库。