
Im Webbrowser Lynx habe ich es geschafft, Nicht-ASCII-Zeichen mit der Einstellung
CHARACTER_SET:UNICODE (UTF-8)
in /etc/lynx-cur/lynx.cfg
. Habe es auch probiert ASSUME_CHARSET
, macht keinen Unterschied. Das Eintippen von Nicht-ASCII-Zeichen in Eingabefelder funktioniert allerdings nicht richtig. Wenn ich z.B. 狐
in das Formularfeld kopiere, wird es richtig angezeigt. Wenn ich dann aber die Leertaste drücke, wird die Einfügemarke an den Zeilenanfang gesetzt. Mache ich das mit Äpfel
, wird es auch beim Einfügen richtig angezeigt. Beim Schreiben wird das Ä zwar richtig angezeigt, beim Eintippen der restlichen Buchstaben wird die Einfügemarke aber erst ganz nach links gesetzt und dann werden keine Zeichen mehr angezeigt.
Welche Einstellung benötige ich? Meine Lokalisierung ist vollständig UTF-8. Ich verwende Lynx 2.8.9dev.1 unter Debian 8.7. Alle anderen Anwendungen, einschließlich Emacs, funktionieren einwandfrei mit Nicht-ASCII-Zeichen.
Antwort1
Ich habe Lynx Version 2.8.9rel.1 (08. Juli 2018) auf Manjaro 18. Nach der Installation von Lynx habe ich die Seite getestethttps://zh.wikipedia.org/wiki/Lynxund bemerkte, dass chinesische Schriftzeichen nicht richtig angezeigt wurden. Dann fügte ich die Zeile hinzu
CHARACTER_SET:utf-8
zur Datei /etc/lynx.cfg
.
Beachten Sie, dass der Wert utf-8
, wie in der Spalte MIME-Name in der cfg-Datei aufgeführt, nicht UNICODE (UTF-8)
aus der Spalte "Zeichenfolge für 'Optionsmenü'" stammt. Danach wurden die chinesischen Schriftzeichen auf der oben genannten Seite korrekt angezeigt. Die Suche nach "Äpfel" oder "狐", wie in derChatraumhat auch gut geklappt.
Ich weiß nicht, ob die von Thomas Dickey erwähnten Fehler relevant sind; für mich hat die Verwendung des richtigen Werts in der CFG-Datei das Problem gelöst.
Antwort2
Es ist Zufall, ein Fehler, der behoben wurdekürzlich:
2017-04-29 (2.8.9dev.13)
* amend fix for Debian #841155, adding check for special case where the
expected number of cells is zero (report by Larry Hynes) -TD
2017-04-28 (2.8.9dev.12)
* correct logic in cell2char(), which gave up too early in determining the
number of cells needed for a multibyte string in the editable text-fields
(Debian #841155) -TD
Debian #841155wurde letzten Herbst gemeldet, aber das Problem war in der ersten Version von cell2char
, hinzugefügt in2.8.7Entwickler.10hier erwähnt:
* rewrite LYRefreshEdit(), to display multibyte/multicolumn characters properly
when using wide-character curses -TD
Kurz gesagt verwendet Lynx Curses zum Anzeigen von Zeichen und um sicherzustellen, dass es die Breite eines Multibyte-Zeichens auf dem Bildschirm kennt, zeichnet es den Text in einem versteckten Fenster und zählt die Zellen.