Überarbeitungsverlauf[Zurück]
Klicke auf Einblenden/Ausblenden von Überarbeitungen 4

01 Okt '14, 13:41

Johannes's gravatar image

Johannes
7.3k294566

Das Paket `listings` kann keine Multibyte-codierten Zeichen verarbeiten. Dies fällt bei den Umlauten zuerst auf, da diese in der deutschen Sprache am ehesten vorkommen. Die Engines XeTeX und LuaTeX bieten einen nativen Support für Unicode und bieten damit eine interessante Alternative zum klassischen PdfTeX. Für Interessierte: [Was ist LuaTeX](http://texwelt.de/wissen/fragen/70/was-ist-luatex) Zu beachten ist dabei, dass die Pakete `inputec` und `fontenc` nicht geladen werden sollten. Das richtige Fontencoding wird durch das Paket `fontspec` ermittelt. Nähere Erläuterungen finden sich in [Was ist der Unterschied zwischen `latex`, `pdflatex`, `lualatex` und `xelatex`?](http://www.texwelt.de/wissen/fragen/5868/was-ist-der-unterschied-zwischen-latex-pdflatex-lualatex-und-xelatex) % XeLaTeX or LuaLaTeX \documentclass{article} \usepackage{fontspec} \usepackage{listings} \begin{document} Umlaute und Sonderzeichen im normalen Text: äöüß und als inline Codeschnipsel: \lstinline|\emph{Sütterlinstraße}| \begin{lstlisting} \chapter{Test} %Überschrift der Ebene chapter %ä Ö ß \end{lstlisting} \end{document} ---------- Um `listings` mit pdfTeX verwenden zu können, kann man das Paket [`listingsutf8`](www.ctan.org/pkg/listingsutf8) von Heiko Oberdiek verwenden. Es lädt im hintergrund Hintergrund selbstständig das Paket `listings` und gibt auch alle Optionen an dieses weiter. Allerdings ist dieses Vorgehen mit gewissen Beschränkungen verbunden. Die Programmschnipsel müssen vom Anwender in externe Dateien geschrieben werden, welche dann beim Kompilieren gelesen und geändert werden. Im Minimalbeispiel werden diese Dateien mit Hilfe der Umgebung `filecontents` geschrieben, dies dient nur der Anschaulichkeit (siehe auch [Was ist ein Minimalbeispiel?](http://texwelt.de/wissen/fragen/569/was-ist-ein-vollstandiges-minimalbeispiel-oder-kurz-vm-und-wie-erstelle-ich-dieses)). Warend Während der Kompilation wird eine Codedatei binär eingelesen, in einen String mit singlebit-encoding umgewandelt (in diesem Fall latin1), welcher dann wieder eingelesen wird. Momentan kann man mit `listingsutf8` gute Ergebnisse erzielen, allerdings sind inline-Schnipsel und die Verwendung der Umgebung `lstlisting` nicht möglich. %\RequirePackage{filecontents} \begin{filecontents*}{\jobname.lst} \chapter{Test} ö ä \end{filecontents*} \begin{filecontents*}{inlinecode.lst} \emph{Sütterlinstraße} \end{filecontents*} \documentclass{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{listingsutf8} \lstset{inputencoding=utf8/latin1}%hier passiert die Magie \begin{document} Umlaute und Sonderzeichen im normalen Text: äöüß und als inline Codeschnipsel: \lstinputlisting{inlinecode.lst} \lstinputlisting{\jobname.lst} \end{document}
Klicke auf Einblenden/Ausblenden von Überarbeitungen 3
zusätzlicher Hinweis auf utf8-engine-Verwenung

18 Aug '14, 15:19

Johannes's gravatar image

Johannes
7.3k294566

Das Paket `listings` kann keine Multibyte-codierten Zeichen verarbeiten. Dies fällt bei den Umlauten zuerst auf, da diese in der deutschen Sprache am ehesten vorkommen. Die Engines XeTeX und LuaTeX bieten einen nativen Support für Unicode und bieten damit eine interessante Alternative zum klassischen PdfTeX. Für Interessierte: [Was ist LuaTeX](http://texwelt.de/wissen/fragen/70/was-ist-luatex) Zu beachten ist dabei, dass die Pakete `inputec` und `fontenc` nicht geladen werden sollten. Das richtige Fontencoding wird durch das Paket `fontspec` ermittelt. Nähere Erläuterungen finden sich in [Was ist der Unterschied zwischen `latex`, `pdflatex`, `lualatex` und `xelatex`?](http://www.texwelt.de/wissen/fragen/5868/was-ist-der-unterschied-zwischen-latex-pdflatex-lualatex-und-xelatex) % XeLaTeX or LuaLaTeX \documentclass{article} \usepackage{fontspec} \usepackage{listings} \begin{document} Umlaute und Sonderzeichen im normalen Text: äöüß und als inline Codeschnipsel: \lstinline|\emph{Sütterlinstraße}| \begin{lstlisting} \chapter{Test} %Überschrift der Ebene chapter %ä Ö ß \end{lstlisting} \end{document} ---------- Um `listings` mit pdfTeX verwenden zu können, kann man das Paket [`listingsutf8`](www.ctan.org/pkg/listingsutf8) von Heiko Oberdiek verwenden. Es lädt im hintergrund selbstständig das Paket `listings` und gibt auch alle Optionen an dieses weiter. Allerdings ist dieses Vorgehen mit gewissen Beschränkungen verbunden. Die Programmschnipsel müssen vom Anwender in externe Dateien geschrieben werden, welche dann beim Kompilieren gelesen und geändert werden. Im Minimalbeispiel werden diese Dateien mit Hilfe der Umgebung `filecontents` geschrieben, dies dient nur der Anschaulichkeit (siehe auch [Was ist ein Minimalbeispiel?](http://texwelt.de/wissen/fragen/569/was-ist-ein-vollstandiges-minimalbeispiel-oder-kurz-vm-und-wie-erstelle-ich-dieses)). Warend der Kompilation wird eine Codedatei binär eingelesen, in einen String mit singlebit-encoding umgewandelt (in diesem Fall latin1), welcher dann wieder eingelesen wird. Momentan kann man mit `listingsutf8` gute Ergebnisse erzielen, allerdings sind inline-Schnipsel und die Verwendung der Umgebung `lstlisting` nicht möglich. %\RequirePackage{filecontents} \begin{filecontents*}{\jobname.lst} \chapter{Test} ö ä \end{filecontents*} \begin{filecontents*}{inlinecode.lst} \emph{Sütterlinstraße} \end{filecontents*} \documentclass{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{listingsutf8} \lstset{inputencoding=utf8/latin1}%hier passiert die Magie \begin{document} Umlaute und Sonderzeichen im normalen Text: äöüß und als inline Codeschnipsel: \lstinputlisting{inlinecode.lst} \lstinputlisting{\jobname.lst} \end{document}
Klicke auf Einblenden/Ausblenden von Überarbeitungen 2

24 Mär '14, 22:28

Johannes's gravatar image

Johannes
7.3k294566

Klicke auf Einblenden/Ausblenden von Überarbeitungen 1

24 Mär '14, 22:26

Johannes's gravatar image

Johannes
7.3k294566