程序设计包容性红黑榜

缘起

这两天先后遇上两件事:

  • 试用 Focus Launcher 发现中文 App 名称不是按照拼音排序的(然后就卸载了,俺寻思也不大可能是笔画排序吧……)
  • Fluent Search 新版本和 Rime 兼容问题,表现为 输入重复

于是,世界上并不是只有从左到右的拉丁文字和格里高利历,新开一贴希望收集大家遇到过的对其他语言文化背景,乃至残障人士的包容性设计特别好/差的软件应用。

本贴是维基贴形式,任何人均可直接编辑!

我想这类应用,除了当时并不会有多少人对其还有记忆。
另外,这种帖子设置成投票帖更好。

2 Likes

说到对中文的支持,就不得不提一大票编辑器,大部分没有针对CJK的断行做特殊处理,一段普通的中文文本直接当成一个长单词,要是只有中文倒也还好,中英文混排的时候那断行效果简直……能处理对的基本上只有开发者本身是东亚人。

我知道的可以正确处理的(也许不全):

  • Notepad:Windows自带
  • EverEdit:收费软件,开发者是中国人
  • EmEditor:收费软件,作者是日本人
  • EditPlus:收费软件,作者是韩国人
  • Notepad++:免费软件,默认无法处理,需要插件,作者是中国(台湾)人

其他什么notepad2,notepad3,SublimeText等非东亚开发者的基本上全军覆没(当然VSCode这种重量级选手不会有什么问题)。

2 Likes

看到“程序设计”和“红黑”,第一反应是红黑树,心想还有人在小众论坛学算法吗,仔细一看原来是红黑榜 :joy:

这个题目我第一想到的是各个程序的搜索功能,如果不是汉语母语开发者开发的,很少能够支持拼音搜索,有的即使支持了也不支持多音字。

这个问题的直接原因是,基于英语的键盘布局在输入任何字元比英语多的语言时都需要对字元进行编码,而像中文这种字元非常多的情况,很难找到一种容易学习的编码方式,最终靠部分编码和交互确认的输入法通过牺牲输入效率降低了学习难度,成为了主流。许多语言并不需要使用这种输入法,于是开发者不要说支持,很可能根本没想到过还会有这种事情;即使有用户反馈,因为设计完善处理的算法比较困难,可能也会不了了之。

更本质地来看,这实际上不只是中文输入法的问题,而是用于搜索的输入与用于显示的输入之间是不对等的。我会在给文件命名时打一长串拼音来输入准确的汉字,因为一个文件名显示的次数要远多于编辑它的次数,通过输入汉字来提高视觉识别效率是划得来的;而在搜索时,输入只会被使用一次,也很少用于显示,输入汉字没有直接输入拼音划算。这样来看,就不止中文有这样的问题,许多其它语言也有:

  • “Brontë” is six characters that should look like “Bronte”, but with double-dots on the “e” character.
  • “Résumé” is six characters that should look like “Resume”, but with /-shaped accents on the “e” characters.
  • “læti” should be four letters long-- the second letter should not be two letters “ae”, but should be a single letter that looks like an “a” entirely fused with an “e”.
  • “χρονος” is six Greek characters that should look kind of like: xpovoc
  • “КАК ВАС ЗОВУТ” is three short Russian words that should look a lot like: KAK BAC 3OBYT
  • “ടധ” is two Malayalam characters that should look like: sw
  • “Hello” is five characters that should look like: Hello
  • emoji 字符,例如“:innocent:”的 CLDR 短名称是“smiling face with halo”

Text::Unidecode 是一个用于将 Unicode 文本以人类可读的方式转换为 ASCII 文本(从键盘上能够直接输入的文本)的库,这个库在一定程度上能够解决上面的问题,但因为一个字符只能有一种对应 ASCII 表示,并不是很适合用于搜索,也无法支持多音字。不过即使它为一个字符提供了多种 ASCII 表示,搜索效果也还是比较局限,用户需要猜到准确的关键字才能搜到。NLP 中的语义搜索可以做到按语义进行模糊搜索,但在短查询上的准确性又可能不如关键字搜索。设计一种混合算法,对短查询倾向于关键字匹配,对中等查询倾向于通过编辑距离等度量实现的机械模糊匹配,对长查询倾向于语义匹配,可能是完美的解决方案。不过想让各种应用普及这种搜索,恐怕只有 Apple 生态有可能做到了。对于其它生态来说,等 AGI 实现可能还更现实些。

4 Likes

libreoffice也有点小问题,不过手动换行就是了,不是很在乎,现在已经基本脱离了office和wps,去哪里都是libreoffice导出的pdf,幻灯片放映文件啥的,拒绝不兼容

LibreOffice的问题可以在 ask.libreoffice.org 讨论了

还有用儒略历的:doge:

看了上面的网页,我下意识看了系统日期时间

不知道 ColorOracle 這款算不算?
以前聽聞喜歡的遊戲廠商 (FTL的開發者)說從他們的第一款遊戲起
配色就是為了色盲玩家優化過的,我一看還真的是這樣,心中大為感動

於是後來我開發遊戲時,也牢記了這個需求,找到了上述這個軟件
他可以把畫面轉成各種色盲類型眼中看到的世界,對於繪畫研究也很有幫助

*WhyNotWin11 也挺包容的,當出升win11還是先讓它測過一次做好準備的

当然算!其实我本人就是红绿色弱……

给感兴趣的人的延伸阅读:

什么精罗狂喜 :rofl: 牛顿爵爷点了赞:我就说我生日是圣诞!

说起来还是纯靠冬至日和月相的阴阳历更合我意,就是闰月这个东西确实不太方便给计算机用

需要专门开发一套算法才能搞定