Unicode im Gnuplot-Terminal

Unicode im Gnuplot-Terminal

Beispielsweise kann ich in der Bash-Befehlszeile mit der Compose-Taste und einer Ad-hoc ~/.XCompose-Datei ein δ-Zeichen eingeben. Wenn ich jedoch versuche, dasselbe in Gnuplot zu tun, erhalte ich Folgendes:

13:48 boffi@debian:~ $ δ
bash: δ: command not found
13:48 boffi@debian:~ $ gnuplot

        G N U P L O T
        Version 5.2 patchlevel 6    last modified 2019-01-01 

        Copyright (C) 1986-1993, 1998, 2004, 2007-2018
        Thomas Williams, Colin Kelley and many others

        gnuplot home:     http://www.gnuplot.info
        faq, bugs, etc:   type "help FAQ"
        immediate help:   type "help"  (plot window: hit 'h')

Terminal type is now 'qt'
gnuplot> δ

Die beste Antwort zeigt mir, wie ich Gnuplot dazu bringe, Unicode-Zeichen zu akzeptieren. Eine gute Antwort erklärt, warum Gnuplot keine Unicode-Zeichen akzeptiert.

13:53 boffi@debian:~ $ env | grep LANG
LANG=C.UTF-8

Antwort1

gnuplot in Debian wird mit der editlineBibliothek zum Verwalten des Verlaufs auf der gnuplot-Befehlszeile erstellt, und diese unterstützt kein UTF-8. Tatsächlich configureerwähnt das Skript Folgendes:

  --with-readline=builtin  use the built-in readline
  --with-readline=gnu      use the GNU readline library (default if present)
  --with-readline=bsd      use the NetBSD editline library (NB: does not handle UTF-8!)

Es gibt einen 15 Jahre alten Fehler zu diesem Verhalten,#273002, mit einer entsprechenden Gnuplot-Funktionsanforderung,#265(das geschlossen ist, vermutlich weil es durch das Hinzufügen der internen Implementierung von behoben wurde readline).

Fedora verwendet die integrierte Funktion readlineund ist von diesem Fehler nicht betroffen. (Allerdings sind andere Fehler vorhanden – versuchen Sie, „δ“ einzugeben und dann die Rücktaste zu drücken.)

Um dies zu beheben, erstellen Sie das Debian-Paket neu:

cd /tmp
apt source gnuplot
cd gnuplot-5.0.5+dfsg1
sed -i 's/readline=bsd/readline=builtin/' debian/rules
sudo apt install devscripts equivs
mk-build-deps debian/control
sudo apt install ./gnuplot-build-deps_5.0.5+dfsg1-6+deb9u1_all.deb
mv ./gnuplot-build-deps_5.0.5+dfsg1-6+deb9u1_all.deb ..
dch -n "Use built-in readline."
dch -r ignored
dpkg-buildpackage -us -uc
sudo apt purge gnuplot-build-deps

Dadurch werden Gnuplot-Pakete im übergeordneten Verzeichnis erstellt, die Sie mit installieren können sudo dpkg -i.

verwandte Informationen