Debian tcsh 不尊重字符类扩展的区域设置

Debian tcsh 不尊重字符类扩展的区域设置

使用Debian 11,tcsh版本

tcsh 6.21.00 (Astron) 2019-05-08 (x86_64-unknown-linux) options wide,nls,dl,al,kan,sm,rh,nd,color,filec

在包含两个文件的目录中,aA,

$ echo [a-z]  
a A

这是从刚刚扩张到的一个意想不到的变化a。我希望这种行为与语言环境相关,并且使用widenls选项构建的 tcsh 应该尊重语言环境设置 AIUI - 但更改LC_ALLC而不是en_US.UTF-8不会改变它。

在最近的某个时刻(比我几个月前的 Debian 11 升级更近),某些东西一定发生了变化,从而影响了排序规则行为。花半个小时浏览手册页和相关文档并没有发现任何有用的东西。只有 tcsh 和 csh 会出现这种行为,bash/dash/sh 不会。

虽然我认为为了可移植性,应该使用 POSIX 字符类,但我并不担心这个问题的可移植性。我只想确定如何恢复我习惯的 ASCII 排序规则行为。

答案1

更新:这似乎是 tcsh 中的一个错误。我从头开始构建了最新的 tcsh 6.23.00,字符类按预期工作。向 Debian 报告,已经固定在上游https://github.com/tcsh-org/tcsh/commit/4679bde3e1ceca63d6eb4de5ce41c996405e61aa作为邮件列表中注明

相关内容