Kann man LaTex beibringen (°) Zeichen zu lesen?

Fragen und Probleme, die nicht den obigen Kategorien zugeordnet werden können


bm-magic
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: Mi 17. Mär 2021, 21:29

Kann man LaTex beibringen (°) Zeichen zu lesen?

Beitrag von bm-magic »

In meinem Dokument füge ich Quellcode aus xxx.h Dateien. Wenn in der Datei das (°) Zeichen vorkommt,
bekomme ich eine Fehlermeldung. Um weiter machen zu können, lösche ich in der xxx.h Datei das Zeichen und schreibe "Grad". Das ist nicht schön, weil ich dann die Original Datei damit "zerstöre".
 Original -> 808 #define LCD_ROTATE      * switch X and Y (rotate by 90 Grad) */ 
Latex Eingabe -> \begin{lstinputlisting}[style=MyStyle,caption={Anzeige drehen}\label{kit-b14},captionpos=b,linerange={809-809},firstnumber=809]{../SW/config_328.h}
\end{lstinputlisting}
Fehler -> ! LaTeX Error: Invalid UTF-8 byte "B0.See the LaTeX manual or LaTeX Companion for explanation.Type H <return> for immediate help.... ... / rotate output by 180�
Gibt es dafür eine "bessere" Lösung?

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2806
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Re: Kann man LaTex beibringen (°) Zeichen zu lesen?

Beitrag von Stefan Kottwitz »

Die Datei hat anscheinend nicht utf8-Format, etwa Latin1. Du kannst sie umwandeln in eine zusätzliche utf8-Version (zum Behalten der Originaldatei), etwa mit iconv.

Oder sowas wie
{%
\UseRawInputEncoding
  \lstinputlisting{xxx.h}%
}
Stefan

bm-magic
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: Mi 17. Mär 2021, 21:29

Re: Kann man LaTex beibringen (°) Zeichen zu lesen?

Beitrag von bm-magic »

@Stefan, DANKE Sehr.
Dein Vorschlag funktioniert ;-)
nur ich bin zu doof es richtig anzuwenden :-(
- Die Fehlermeldung ist weg und das *.pdf wird erzeugt. Aber,
a. die ganze Datei erscheint vor dem Aufruf
b. statt (°) wird (ř) angezeigt. Schade.
Bild
Bild
Die Ausgabe
Die Ausgabe
- Ich habe bei der Ausgabe nur das Ende fotografiert. Die Datei ist 4 Seiten lang.
- Wie und wo muss ich Dein Vorschlag einfügen?
Vielen Dank für Deine Mühe im Voraus
Bohu
Dateianhänge
Die Eingabe
Die Eingabe

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2806
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Re: Kann man LaTex beibringen (°) Zeichen zu lesen?

Beitrag von Stefan Kottwitz »

Hallo Bohu,

probier mal das:
\lstset{literate={°}{{\textdegree}}1}
Stefan

bm-magic
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: Mi 17. Mär 2021, 21:29

Re: Kann man LaTex beibringen (°) Zeichen zu lesen?

Beitrag von bm-magic »

@Stefan,
Danke sehr für Dein Vorschlag.
Nur...ich bin damit überfordert. Wo soll ich es anfügen?
In dem Haupt Dokument, oder irgendwo in dem Kapitel?
Ebenfalls hätte ich gern gewusst, wo ich Dein vorheriges Eintrag einfügen soll,
damit in dem Dokument das gesamte Listing nicht im *.pdf erscheint.
- Ich Bitte im Voraus um Entschuldigung, das ich mich so dumm anstelle,
und danke noch einmal
Bohu

bm-magic
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: Mi 17. Mär 2021, 21:29

Re: Kann man LaTex beibringen (°) Zeichen zu lesen?

Beitrag von bm-magic »

@Stefan, vorsorglich.
Habe ich u.U. in dem MasterDatei etwas nicht richtig:
\documentclass[pdftex,11pt,a4paper,oneside,ngerman]{scrreprt}
\usepackage{lmodern}
\usepackage[T1]{fontenc}			% Unterschiedliche Kodierung; umlaute!
\usepackage[utf8x]{inputenc}		% Erweitert Zeichenvorrat abgewählt wegen Problemen mit Dateiimport!
\usepackage[cm]{fullpage}
\usepackage[ngerman]{babel}		% Anpassung für verschiedene Sprachen; Silben-trennung \mbox nicht trennen
\usepackage{textcomp}			% Schriften mit zusätzlichen Textsymbolen
\usepackage[pdftex]{graphicx}		% Einbindung von externen Grafiken
\usepackage{pdfpages}			% einbinden von PDF
\usepackage[labelsep=period]{caption}
\captionsetup{position=top}
\usepackage{subcaption}
\usepackage{xcolor}             %x-Vorschlag
\usepackage{wrapfig}				%ins Bild schreiben
\usepackage[percent]{overpic}   %ins Bild schreiben
\usepackage{mwe}                %ins Bild schreiben
\usepackage{epstopdf}
\usepackage{hyperref}		

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2806
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Re: Kann man LaTex beibringen (°) Zeichen zu lesen?

Beitrag von Stefan Kottwitz »

Das \UseRawInputEncoding nur, wo Du das Listing einliest. Die geschweiften Klammern begrenzen die Wirkung. Vllt. auch egal wenn Du es an den Anfang schreibst, vor \begin{document}. Was dort steht, gilt Dokumentweit. Also auch das \lstset kann dahin.

Zu Deiner Master-Datei einige schnelle Gedanken als Kommentare:
\usepackage[utf8x]{inputenc}% braucht man normalerweise nicht, utf8 ist Standard
\usepackage[cm]{fullpage}% nur wenn man volle Seiten mit minimalen oder keinen Rändern braucht
\usepackage{pdfpages}% wenn Du wirklich PDF einbindest
\usepackage{mwe}% brauchst Du nicht für ein normales Dokument
\usepackage{epstopdf}% nur wenn Du .eps-Grafiken einbindest, selbst dann kann man es weglassen
Stefan

bm-magic
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: Mi 17. Mär 2021, 21:29

Re: Kann man LaTex beibringen (°) Zeichen zu lesen?

Beitrag von bm-magic »

@Stefan, DANKE SEHR, für die Super schnelle Antwort.
Leider zeigt
\lstset{literate={°}{{\textdegree}}1}
überhaupt keine Wirkung. Es erscheint immer noch (ř). ;-(
Nun bekomme ich den Fehler:
! Undefined control sequence.\lst@arg ->{lstlisting} \lstinputlisting{../SW/config_328.h}
Schade
Bohu

Antworten