![最近的 Debian 中未突出显示 cal 中的当前日期](https://linux22.com/image/194241/%E6%9C%80%E8%BF%91%E7%9A%84%20Debian%20%E4%B8%AD%E6%9C%AA%E7%AA%81%E5%87%BA%E6%98%BE%E7%A4%BA%20cal%20%E4%B8%AD%E7%9A%84%E5%BD%93%E5%89%8D%E6%97%A5%E6%9C%9F.png)
正如中所回答的突出显示 cal 中的当前日期
如果输出到终端,输出形式 cal 中的当前日期会自动突出显示(反色)。
这就是我一直得到的。
然而,对于我当前的 Debian GNU/Linux,情况不再如此,我想知道修复是什么。
$ echo $TERM
xterm
$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux bullseye/sid
Release: testing
Codename: bullseye
答案1
我相信这个问题的正确“答案”已记录在案在 GitHub 上
要引用添加
alias cal="if [ -t 1 ] ; then ncal -b ; else /usr/bin/cal ; fi"
到你的 shell rc 文件中。
这是一个极其令人恼火的变化。改变一个经常使用的 cli 命令的行为至少 17 年以使其“正确”,这有点疯狂。现在我明白为什么这么多人如此讨厌 Windows 但仍然不愿意转向 Linux。我很确定几乎所有使用的软件包维护者cal
(实际上我认为他们中的大多数人无论如何都使用日期)都经过培训来使用cal -h
关闭突出显示。现在,这一更改甚至破坏了与cal -h
.
更改已记录在案这里
解决“无亮点”的一个更简单的方法是别名cal
为ncal -b
,但它并不 100% 正确地符合包ncal
维护者的期望。
答案2
cal -3
在别名之后不起作用,这接受选项:
if [ -t 1 ] ; then alias cal="ncal -b" ; else alias cal="/usr/bin/cal" ; fi