これは GNOME-terminalの設定で「曖昧な文字幅を半角で表示する」ようになっているのを全角表示に変更するものです。
解説します。
ちょっとパソコン知ってる人ならパソコンの文字に半角(ASCII文字など)と全角(日本語のひらがな・漢字等)の二種があるのはご存じだと思います。
(まぁ、これらとは別に可変幅と固定幅の問題の方が最近は大きいかもですが)
これはCP932(WindowsでシフトJISと言われているやつの最新の実装)でもEUC-JPでもiso-2022-jp(いわゆるJIS)でも同様なんですが、実はUnicodeの一派である UTF-8 には「幅がどちらとも決まってない曖昧な文字列」があるんですよ。たとえば「…」や「◇」がいい例で、GNOME-Terminalのデフォルト設定では、これを半角表示してしまうので文字がつぶれたり表示がおかしくなります。
これは 非漢字圏むけの仕様 なので変更すれば当然、基本的には解決するはずです。
対応する方法は今のところ三つ。
これはガチで有効ですけどたいへん不便なので却下。
mltermは実は日本初のTerminalエミュレータでたいへん有能で、これ入れるだけですぐ解決します。
しかしGNOME環境の場合は……親和性が微妙 なので「んー」という人もいらっしゃるでしょう。実は私もここの問題で「んー」となってしまいました。
GNOME-Terminalの設定みればみつかると思いますが、曖昧幅(ambiguous-width)のフォントを全角(wide)半角(narrow)どちらで表示するかっていうのがみつかると思います。デフォルトは半角(narrow)になっているので、これを全角(wide)にしてください。
ふふ、にっくき「◇」や「…」のダブりがきれいに解消されますよ?
正直申し上げると、そもそもこのCJKむけ対策でも完璧とは言い難いと思います。GNOME-Terminalはそれほど高性能のターミナルじゃないですしね。
現状で表示まわりでベターを選ぶなら mlterm かなと思います(それでも完璧ではないが)