这个问题的思考来自于前一阵的一个工作上的小事。我们可能经常会遇到,在一些纯文本的场景下,有的人能把一个字符使用非常不同于上下文中所使用的字体的形式展示出来。例如,在当前环境下,我们正常看到的数字应该是 1、2、3、4 这样的,但有的人可以让你看到这样的:“¹、²、³、⁴”。即使你复制到其他的地方去,这两者也不会变成相同的样子。这个问题很复杂,其根本存在于 Unicode 将某一个字符或者某一组字符纳入其编码范围时的考虑。如果非要简单说一下,你可以认为,在同意不同形式的同一个字符(我们普通认知中的)—— 例如 1 和 ¹ —— 各自作为一个独立字符时,专家们确实认为它们所代表的事物是有区别的。这样的认识,以及这种认识带来的衍生做法,当然都是有争议的。
存在争议并不奇怪,然而如何对待争议点,是需要警惕的地方。对于 Unicode 的这一实践方法,我在知乎上找到了一个话题,《Unicode 编码有什么不合理的地方吗?》。top 的回答,目前答主已经显示为“知乎用户N7Nkv2”,状态为已经注销。他在回答中,对 Unicode 这种做法表达了否定态度,认为招致了更多的麻烦问题的出现。其下有另一个发自“Kushim Jiang”的回答,则对前述回答持激烈的否定且蔑视的态度,认为 Unicode 组织的做法是正确的。
从回答内容来看,双方均非相关领域小白,涉及到一些相当专业的问题点,以及思考方法。然而针对一个现象/决策/行动,或者其他的什么观点,你无论是持拥护还是反对的态度,在如何对待与你持相反意见的人这件事上,特别容易陷入误区。而这一误区,又是拥护派踏入的概率较大,那就是,无视反对者所(能)感受到的切身的不便、额外成本或者痛苦。事实上,这是在一定程度上对存在的问题予以掩耳盗铃式的忽略,是粗暴的不能、甚至于不去试图理解和关怀他人的冷漠行径。这是需要自省且努力避免的。
另,与 Unicode 以及字体相关的,知乎上还有一个话题《有没有人把 Unicode 按 Code Chart 里的字体完整地做成一个字体?》,也很有意思,可以看看。