Help us understand the problem. What is going on with this article?

East Asian WidthとiTerm2

チラ裏品質

とりあえず気になる問題

スクリーンショット 2017-07-18 15.29.36.png

この動作がちと気に入らなかった。

まず、実はiTerm2においてもFAQレベルの問題である。

https://www.iterm2.com/faq.html

Q: I'm a Chinese, Japanese, or Korean user and some characters don't line up because they are not rendered in double-width.
A: Go to Preferences->Profiles->Text and change the setting of "Treat ambiguous-width characters as double-width."

で、これをやろうとすると……最近のバージョン(筆者環境: Build 3.0.15)ではこれが「Not recommended」になっている。

スクリーンショット 2017-07-18 15.22.41.png

スクリーンショット 2017-07-18 15.22.32.png

追記(2019-10-31): 3.3.4 ではPreferencesの構成が変わって見た目には「not recommended」が消えたが、チェック非推奨という点では差はない。

スクリーンショット 2019-10-31 16.06.49.png

実際、効果があると同時に頂けない副作用がある。

スクリーンショット 2017-07-18 15.35.42.png

これは良い結果。ところが履歴をたどると

スクリーンショット 2017-07-18 15.36.25.png

明らかにバグっている。

説明が非常にめんどくさいので端折るが「…」で扱いがおかしくなる。上のチェックを外すと半角として扱われ、一貫性がある。

上はたまたまPythonだが (そもそもUnicodeの別のことを調べてた)、 echo ★ で遊んでいても酷いことは起こるものだ。

オプションチェックなしだと、表示がおかしいだけで動作は一貫していて予測はできる。一方全体としてカーソルの動作に一貫性がなくなる。
どちらでも100%まともに動作しているように見えない点は変わらないが「なぜ」かは分からない(今のところ興味もない)。

東アジアの文字幅

こんなのがある。

東アジアの文字幅

Unicode® Standard Annex #11 EAST ASIAN WIDTH

Unicode 10.0.0
2017-05-14
...
Revision 33
Reissued for Unicode 10.0.0.

Annexとは「付録」の意味だ。

A Unicode Standard Annex (UAX) forms an integral part of the Unicode Standard, but is published online as a separate document. The Unicode Standard may require conformance to normative content in a Unicode Standard Annex, if so specified in the Conformance chapter of that version of the Unicode Standard. The version number of a UAX document corresponds to the version of the Unicode Standard of which it forms a part.

いやーつまりだいぶややこしい話だな? (バカ

「プロポーショナルフォントとかそういう世界で全角と半角の二種類に綺麗にぶった切れるなどとついぞ思いなさんな」みたいなオーラがある。

おそらくiTerm2に欧米圏的に重要度が低いambiguous-widthな文字の扱いにバグがある。また、「Monacoフォントの★が本来半角であって欲しいところで堂々と全角を出してくる」という問題にも同時に思える。

正確な原因は結局よく分からんが、そもそも本でちら見して調べたにしてちょっとややこしすぎるのでここでおしまいにする。少なくとも「例によってUnicodeは複雑だなぁ」と思い直すに至る。

とりあえず、カーソルの動作があまりにもすんごく異様になるのでこのオプションは当座は付けないことにした。どうせ見た目だけの問題だ。

ターミナルそれぞれで設定があることが多いようだ。まともに動作するかは分からないが他のターミナルソフトウェアでも、気になったらプリファレンスあたりを確認してみると良い (「曖昧幅の文字」とかそういう表現をしているようだ)

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした