具体情况是: 不同的文字用的是不同的字体。
最先是在Emacs里发现的,如下图
有一些生僻字的字体和常见的不一样,我觉得是我的Emacs没设置好,而且这些字也不常用,就没有在意。可是最近在用spyder IDE时也发现了类似的问题,而且表现得更为严重,一些常用字都显示得怪怪的:
上图中“是”就用了不同的字体。
有没有人知道这是什么原因,是不是系统没设置好的原因,我是Ubuntu 16.04.
具体情况是: 不同的文字用的是不同的字体。
最先是在Emacs里发现的,如下图
有一些生僻字的字体和常见的不一样,我觉得是我的Emacs没设置好,而且这些字也不常用,就没有在意。可是最近在用spyder IDE时也发现了类似的问题,而且表现得更为严重,一些常用字都显示得怪怪的:
上图中“是”就用了不同的字体。
有没有人知道这是什么原因,是不是系统没设置好的原因,我是Ubuntu 16.04.
生僻字不一样可能是因为你用的字体里面没有这个字。然后就fallback了。
比如你用了日文字体就会这样。然后一些中文字体字符集也不是很全。
不过一些老牌的字体,比如黑体宋体字一类的,估计就不会这样。
换黑体后确实可以了。我原来在Emacs中用的中文字体是仿宋_GB2312
那另外那个难道也是编辑器设置的问题,我在spyder 的font设置里改了好几种字体了,显示都不正常。
另外一个我没用过,但是可能不是同样的原因,说不定是编码问题。。
不知道是不是你字体库不全,可以装一下google noto cjk sc
第一个的原因大家已经说了,明显是生癖字在字体中不存在所以 fallback 到另外的字体上了。 第二个推测是 spyder-ide 自身的问题,在 github issue 上也看见了诸如中文字体大小无法修改的 bug(已修复), issue 列表里也有大量 bug report, 看起来是一个活跃的新的 ide,那么有 bug 再所难免。提供你的问题以及详细描述到 github issue 上帮助它改进吧~
PS: 有点强迫症了,你试试在注释符 #
后面加个空格吧,说不定和 py 标准有关系(我也不知道我在扯什么哈哈哈
我的/etc/fonts/conf.avail/64-language-selector-prefer.conf是这样子的。
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>sans-serif</family>
<prefer>
<family>Noto Sans CJK SC</family>
<family>Noto Sans CJK TC</family>
<family>Noto Sans CJK JP</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Noto Sans Mono CJK SC</family>
<family>Noto Sans Mono CJK TC</family>
<family>Noto Sans Mono CJK JP</family>
</prefer>
</alias>
</fontconfig>
默认配置是日文在第一个,我现在修改成这样后,然后重启电脑。字体问题就好多了。至少“门”,再也不会是那个奇怪的“门”了。