Hallo,

bisher hat in meinem Dokument die Darstellung von Umlauten problemlos funktioniert. Nun habe ich ein neues Kapitel angefangen und in diesem und allen folgenden werden die Umlaute durch einen Satz falscher Zeichen dargestellt. Hier ein paar Codeschnipsel:

Open in writeLaTeX
...
\usepackage[ansinew]{inputenc}
...
% KAPITEL
\pagestyle{headings}
...
\include{Aufbau}

\include{PFESi}
...

Bis einschließlich Kapitel "Aufbau" ist alles ok. Ab "PFESi" und ff tritt der Fehler auf. Am Ende von Kap. Aufbau und Anfang von PFESi stehen keine Befehle, es hört mit Text auf und geht mit Text weiter.

Woher könnte der Fehler stammen?

gefragt 21 Jun '13, 17:44

Pepe's gravatar image

Pepe
49113
Akzeptiert-Rate: 0%

bearbeitet 26 Jan '15, 07:32

saputello's gravatar image

saputello
11.1k174365

da das theoretisch nicht möglich ist, wenn du keine Schrift- oder Kodierungsumschaltung vornimmst, musst du wohl ein komplettes Beispiel liefern, wobei PFESi ja nur einen Umlaut enthalten muss.

(21 Jun '13, 17:56) Herbert

Denkbar wäre, dass PFESi.tex in einer anderen Zeichencodierung vorliegt als die anderen Dateien, beispielsweise wenn Du sie zuerst auf einem MAC oder Linux-PC erstellt hast und dann auf Windows weiterverwendest. Workaround dann: mach sie nochmal neu in Windows und übertrage den Text mit Kopieren&Einfügen. Gibt natürlich auch Konverter.

(21 Jun '13, 18:05) stefan ♦♦

Du hast vermutlich das Dokument ursprünglich mit einem Editor erstellt, der Dateien in der Windows-Codierung cp1251 aka ansinew speichert. Die neuen Dateien wurden entweder mit einem anderen Editor, der in der Voreinstellung eine andere Codierung verwendet, erstellt, oder aber die Einstellungen des Editors wurden so geändert, dass er die neuen Dateien nun in einer anderen Codierung gespeichert hat. Beispielsweise konnte TeXnicCenter 1 Dateien nur mit der Codierung ansinew verarbeiten und speichern, während moderne Editoren wie TeXStudio, Texmaker oder TeXnicCenter 2 in der Voreinstellung immer mit utf8 arbeiten.

Bevor du dich an die Lösung des eigentlichen Problems machst, solltest du sicherstellen, dass deine TeX-Distribution zumindest halbwegs aktuell ist. Es wird min. LaTeX 2018-04-01 empfohlen

Zur Lösung Deines Problems hast du verschiedene Möglichkeiten:

  1. Umkodieren der alten Dateien: Dazu legst Du zunächst eine Kopie des gesamten Verzeichnisses an, weil beim Umkodieren auch Fehler geschehen können, die nur mühsam wieder zu beheben sind. Dann öffnest du die alte Datei im neuen Editor, suchst in den Editoreinstellungen die Einstellung für die (Eingabe- oder Zeichen-)Codierung und änderst diese in "utf8" oder "Unicode (UTF-8)" und speicherst die Datei anschließend. Bei einigen Editoren genügt das allerdings nicht, weil vorhandene Sonderzeichen nicht automatisch beim Speichern umkodiert werden. Siehe dazu auch: Wie kann ich Dateien umkodieren?
    Da außerdem seit LaTeX 2018/04/01 unabhängig von der verwendeten TeX-Engine UTF-8 auch die voreingestellte Codierung für LaTeX ist, entfernst du außerdem das Paket inputenc aus der Dokumentpräambel. Nur falls wirklich eine uralte TeX-Installation verwendet wird, die seit mehreren Jahren kein Update mehr erfahren hat, sollte die Option von inputenc von ansinew, latin1, latin9, cp1251 oder was immer dort steht, in utf8 geändert, also \usepackage[utf8]{inputenc} verwendet werden.

  2. Umkodieren der neuen Dateien: Dazu legst Du zunächst eine Kopie des gesamten Verzeichnisses an, weil beim Umkodieren auch Fehler geschehen können, die nur mühsam wieder zu beheben sind. Dann öffnest Du eine der neuen Dateien, suchst in den Editoreinstellungen die Einstellung für die (Eingabe- oder Zeichen-)Codierung und änderst diese in "ansinew" oder "Windows irgendwas", ersatzweise "ISO-Latin-1" oder "ISO-8859-1" und speicherst die Datei anschließend.

  3. Ohne Umkodierung mit Dateien in gemischter Codierung arbeiten: Dazu legst Du zunächst eine Kopie des gesamten Verzeichnisses an, weil Du Dateien in unterschiedlicher Codierung editieren musst, und niemand so genau weiß, ob diese dabei korrekt gespeichert werden. Dann fügst Du nach dem Laden von inputenc noch das Paket selinput ein:

    \usepackage{selinput}
    

    Am Anfang der ersten Datei mit den fehlerhaften Umlauten fügst Du dann die folgende Anweisung ein:

    \SelectInputMappings{
      adieresis={ä},
      germandbls={ß},
    }
    

    Dabei ersetzt Du das ä und das ß jeweils durch eine Kopie des entsprechenden Zeichens aus der Datei selbst. Außerdem, sollte auch in diesem Fall mit inputenc zunächst die Codierung utf8 geladen und bestenfalls danach mit \inputencoding{ansinew} oder eben \SelectInputMappings auf eine andere Codierung umgeschaltet werden, falls irgendwo im Dokument mit utf8 gearbeitet wird. Das verkompliziert das gesamte Vorgehen also eher.

Ich empfehle die erste Möglichkeit, da Du mit dem Umkodieren in utf8 auch für die Zukunft gerüstet bist. Die dritte Möglichkeit ist eher eine theoretische Möglichkeit. Empfehlen kann ich sie nicht wirklich, da es hier zu Folgeproblemen kommen kann.

Permanenter link

beantwortet 21 Jun '13, 18:20

saputello's gravatar image

saputello
11.1k174365
Akzeptiert-Rate: 51%

bearbeitet 01 Mai '21, 09:23

Ich habe jetzt Variante 2 gewählt, das war weniger Arbeit als 1. Die Umlaute musste ich dann von Hand in den "falschen" Dokumenten ersetzen. Jetzt klappt es aber. Danke!

(24 Jun '13, 13:39) Pepe
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×18
×14
×14
×9

gestellte Frage: 21 Jun '13, 17:44

Frage wurde gesehen: 65,792 Mal

zuletzt geändert: 01 Mai '21, 09:23