我最近发现,如果我在没有 lightDM 的情况下登录 Debian 系统,仅使用命令行提示符,然后不直接输入“startx”,而是直接使用命令行,“man”页面中的颜色比我以前任何时候都好看到了。不是颜色的选择(总是青色),而是颜色的应用方式。
echo $TERM
linux
我无法让这个linux
设置在 Xfce-terminal 中工作,显然是因为它需要termcap
,而它已经不在 Debian 存储库中了,甚至compat
连 2005 年以前的软件包也没有了。
我是否可以使用另一个终端来为我提供与登录控制台中相同的颜色?我无法让默认的 xterm 程序显示颜色,并且我读到gnome-terminal
和其他几个程序都与xfce4-terminal
.
请注意,我尝试过通过研究发现的其他解决方案,包括使用 Vim 作为手册页、编辑.bashrc
或.Xdefaults
等。没有什么比linux
登录tty
控制台中的设置更有效的了。
我当前的解决方法是按Ctrl+ Alt+F2并登录到另一个tty
控制台。但我想避免这样做并linux
在终端模拟器中进行着色。
答案1
设置TERM
不会改变终端的行为。您可以设置TERM
告诉应用程序终端可以做什么。
根据年龄,VTE 可能依赖于捆绑的 termcap 文件(从 2008 年或更早通过 ncurses 读取)。最初(2002 年),想法是读取 termcap 文件并模拟相应的终端。这个想法半途而废长的以前,VTE 从一开始就只是模拟 xterm 的一个子集。 2014 年出现了一些用 terminfo 取代 termcap 的活动,最终将所有相关逻辑硬编码。
使用 VTE 的应用程序不受此影响:它们使用 ncurses 和 terminfo(某些应用程序使用 termcap界面ncurses,它使用下面的 terminfo)。
主要的视觉差异Linux 控制台和 X 中运行的终端之间的区别在于后者通常使窗口更小,因此分辨率比 Linux 控制台更低。您可以使颜色匹配(毕竟是相同的硬件)。
同意 XFCE Terminal 只是 VTE 的另一个皮肤,VTE 本身并不重复 Linux 控制台的功能:
- 它使用不同的字体
- 它无法识别用于切换字体的转义序列,
- 它不能识别 Linux 控制台调色板的转义序列
字体与问题更相关(您不太可能依赖那些调色板转义序列,但如果您想要相同的行为,这是相关的)。控制台字体是为控制台的文本模式配置而设计的,并且在相对较低的分辨率下看起来不错(通常)。
Linux 控制台支持 16 种颜色;您可以选择的所有 X 终端仿真器都至少支持 16 种颜色。VTE 上的某些皮肤提供了更改调色板的功能,以便您可以匹配所使用的颜色色调。
答案2
我听说 xfce4-terminal 无法使用 terminfo,但我很确定大多数其他 gtk 终端可以处理它。如果这不起作用,xterm、(u)rxvt qterminal、konsole 都应该适用于极简到极繁的设置。