待辦事項 #24255

mutt-1.5.21での画面乱れ

啟用日期: 2011-01-24 23:09 最後更新: 2012-12-07 06:30

回報者:
負責人:
類型:
狀態:
關閉
元件:
(無)
里程碑:
(無)
優先權:
5 - 中
嚴重程度:
5 - 中
處理結果:
檔案:
1

細節

mutt 1.5.21 で、UTF-8環境で表示させると画面が乱れます。添付のようになります。

Ticket History (3/16 Histories)

2011-01-24 23:09 Updated by: ribbon
  • New Ticket "mutt-1.5.21での画面乱れ" created
2011-01-24 23:11 Updated by: ribbon
  • File mutt-bug.PNG (File ID: 4496) is attached
2011-01-26 22:05 Updated by: ribbon
  • 負責人 Update from (無) to ribbon
2011-01-26 22:06 Updated by: ribbon
  • Ticket Close date is changed to 2011-01-26 22:06
  • 狀態 Update from 開啟 to 關閉
  • 處理結果 Update from to Won't Fix
評語

ja-libslangは古くてだめで、ncusresかlibslang2を使う必要があります。

2011-02-01 00:04 Updated by: tamomo
評語

ncursesw でも ambiguous width 文字の扱いに問題がある、というか半角幅になって困るときがあるそうですね。

ターミナル、ncursesw、(使っていれば screen)、mutt、エディタ、などなどが east asian ambiguous width な文字に対して認識する幅を揃えないと問題になるようです。

しかし ncursesw には全角幅にする設定はないはずなので (たぶん)、 基本的には、現状、半角幅で揃えるしかないのではないでしょうか。

全角幅で揃えるには ncursesw (or libc の wcwidth) にパッチをあてる必要があるでしょう。 # あれ、じゃあ --enable-cjk-width は何のためのオプションだったっけ……?

2011-02-01 20:24 Updated by: ribbon
  • 狀態 Update from 關閉 to 開啟
評語

--enable-cjk-ambiguous-widthをつけたら、かなり改善されましたが、まだ問題があります。

1) ◆のような文字が入る文字列をindex画面で表示すると、次の行に移る時、左端に

カーソルのゴミが表示されます。

2) 題名を入力する時、全角文字が半角文字幅で表示されてしまいます。

2011-02-01 20:24 Updated by: ribbon
  • File mutt-bug.PNG (File ID: 4496) is deleted
2011-02-01 22:47 Updated by: tamomo
評語

4498 の test-utf8.JPG は、システムが半角幅と思っているところに 全角の「フォント」を使っている問題のような気がします。

ふつうの Unicode フォントを使うと、◆や■が半角になって、うまくいくのではないかなぁ。

2011-02-01 22:53 Updated by: tamomo
評語

インデックスでは◆が切れないのにラインエディタで切れるのは、 enter.c の mutt_enter_string (後者) が addwch のたびに move しているからですね。

だから、その画面は「◆の wcwidth は 1 である」ということを意味しているはず。

2011-02-01 23:14 Updated by: tamomo
評語

あれ……?

■を FFED の半角と 25A0 の全角のどちらにするかは iconv の問題としても、

◆はまさに East Asian Ambiguous Width なので、"set cjk_width" で全角幅に認識されるはずなんですけどね……。

いずれにせよ、この件は mutt (や日本語パッチ) のバグではなく、ユーザサイドの利用法の問題のような気がします。 「ロカール、ターミナルとフォントの設定を見直してください」としか言いようがない気がするのですが、どうなんでしょうか。

2011-02-01 23:41 Updated by: ribbon
  • 處理結果 Update from Won't Fix to Remind
評語

今試しているのはFreeBSD 8.1だけなので、他の環境でどうなるかは 明日テストしてみます。

2011-02-02 10:51 Updated by: t-tkzw
評語

ターミナルの問題の一例としてgnome-terminalの例を挙げると、環境変数VTE_CJK_WIDTHの値を1に設定してgnome-terminalを起動しないと◆とかは正しく全角幅で表示されません。

2011-02-02 13:22 Updated by: ribbon
評語

OpenSUSE 11.3 において ./configure --enable-pop --enable-imap --enable-smtp --enable-debug --enable-cjk-ambiguous-width でコンパイルするとうまくいきますね。 ./mutt -v Mutt 1.5.21 (2010-09-15) Copyright (C) 1996-2009 Michael R. Elkins and others. Mutt comes with ABSOLUTELY NO WARRANTY; for details type mutt -vv'. Mutt is free software, and you are welcome to redistribute it under certain conditions; type mutt -vv' for details.

System: Linux 2.6.34.7-0.7-desktop (i686) ncurses: ncurses 5.7.20100109 (compiled with 5.7) libidn: 1.15 (compiled with 1.15) Compile options: -DOMAIN +DEBUG -HOMESPOOL -USE_SETGID +USE_DOTLOCK -DL_STANDALONE +USE_FCNTL -USE_FLOCK +USE_POP +USE_IMAP +USE_SMTP -USE_SSL_OPENSSL -USE_SSL_GNUTLS -USE_SASL -USE_GSS +HAVE_GETADDRINFO +HAVE_REGCOMP -USE_GNU_REGEX +HAVE_COLOR +HAVE_START_COLOR +HAVE_TYPEAHEAD +HAVE_BKGDSET +HAVE_CURS_SET +HAVE_META +HAVE_RESIZETERM +CRYPT_BACKEND_CLASSIC_PGP +CRYPT_BACKEND_CLASSIC_SMIME -CRYPT_BACKEND_GPGME -EXACT_ADDRESS -SUN_ATTACHMENT +ENABLE_NLS -LOCALES_HACK +ENABLE_CJK_WIDTH +HAVE_WC_FUNCS +HAVE_LANGINFO_CODESET +HAVE_LANGINFO_YESEXPR +HAVE_ICONV -ICONV_NONTRANS +HAVE_LIBIDN +HAVE_GETSID -USE_HCACHE ISPELL="/usr/bin/ispell" SENDMAIL="/usr/sbin/sendmail" MAILPATH="/var/mail" PKGDATADIR="/usr/local/share/mutt" SYSCONFDIR="/usr/local/etc" EXECSHELL="/bin/sh" -MIXMASTER To contact the developers, please mail to <mutt-dev@mutt.org>. To report a bug, please visit http://bugs.mutt.org/.

patch-1.5.21.tt.wcwidth.1 patch-1.5.21.tt.sanitize_ja.1 patch-1.5.21.tt.create_rfc2047_params.1 patch-1.5.21.tt+yy.delete_prefix.1

2011-03-02 15:04 Updated by: ribbon
評語

FreeBSDでの乱れ原因はわかりました。システム側が持っているテーブルの問題です。

2012-12-07 06:30 Updated by: ribbon
  • Ticket Close date is changed to 2012-12-07 06:30
  • 狀態 Update from 開啟 to 關閉
  • 處理結果 Update from Remind to

Attachment File List

編輯

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