Ticket #40669

treeコマンドで文字化けする

Open Date: 2020-08-27 12:21 Last Update: 2023-02-04 00:04

Reporter:
Owner:
Type:
Status:
Open [Owner assigned]
Component:
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
None
Vote
Score: 0
No votes
0.0% (0/0)
0.0% (0/0)

Details

Tera Term 4でtreeコマンドで文字化けが発生する

原因

該当部分ではU+00A0 NO-BREAK SPACE(NBSP) が使われており、これが変換出来ていない。

対処

NBSPをスペースに変換して表示する

備考

他に同様の対処をした方がいい文字を確認する。スペース系が結構漏れている?

Ticket History (3/6 Histories)

2020-08-27 12:21 Updated by: doda
  • New Ticket "treeコマンドで文字化けする" created
2021-05-22 01:02 Updated by: zmatsuo
2023-01-10 12:59 Updated by: nmaya
Comment

Tera Term 5 でも発生する現象なのか要確認

2023-01-13 01:20 Updated by: zmatsuo
Comment

こんな感じでテストできます(UTF-8です)

echo -e "NBSP U+00a0 '\xc2\xa0'"

teraterm/teraterm/uni2sjis.map に

   { 0x00a0, 0x0020 },
を追加すればokそうです。

TT5ではNBSPのフォントが表示されるのでokですが、 ANSI描画時にuni2sjis.mapで変換されるので、 同じ修正を入れればよさそうです。

他のスペースもあるようなのですが、どれを入れたらよいのか…。 https://unicode-explorer.com/articles/space-characters

とりあえずこれぐらいでしょうか?

echo -e "EN_QUAD U+2000 '\xe2\x80\x80'"
echo -e "EM_QUAD U+2001 '\xe2\x80\x81'"
echo -e "EN_SPACE U+2002 '\xe2\x80\x82'"
echo -e "EM_SPACE U+2003 '\xe2\x80\x83'"

2023-01-21 20:57 Updated by: zmatsuo
  • Owner Update from (None) to zmatsuo
  • Resolution Update from None to Fixed
Comment

次の文字を U+0020 SPACE に変換するようにしました

  • U+00A0 NBSP
  • U+2000 EN_QUAD
  • U+2001 EM_QUAD
  • U+2002 EN_SPACE
  • U+2003 EM_SPACE

4-stable r10526, trunk r10527 です。

Tera Term 5 では Unicode API で描画している(標準状態)のときは文字化けしませんが、 ANSI API で描画するとき同様に文字化けしていました。

この修正で、ANSI API で描画するときも文字化けしなくなりました。

2023-02-04 00:04 Updated by: nmaya

Attachment File List

No attachments

Edit

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Login