Probleme mit utf8, latin1 und ansinew

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


Lorz
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 67
Registriert: Mi 26. Feb 2020, 22:13
Wohnort: Bremen

Probleme mit utf8, latin1 und ansinew

Beitrag von Lorz »

Hallo!

normalerweise binde ich \usepackage[latin1]{inputenc} ein.
Das geht immer eine ganze Zeit lang gut. Bis plötzlich aus heiterem Himmel eine Fehlermeldung kommt "(...)Keyboard character used is undefined(inputenc)(...)". Ich tausche dann latin1 gegen utf8 und das Kompilieren klappt wieder.
Andersherum passiert das genauso und ich löse, dann das Problem analog.

Heute ist nun ein böser Tag weder latin1 noch utf8 sind gut gelaunt, bei utf8 erhalte ich "(...)Invalid UTF-8 byte "FC. ...w_2$}}(...)", bei latin1 obige Fehlermeldung.

Folgend das Beispiel, wobei der zwischen \begin{documents} und \end {documents} liegende Teil eingebunden in ein anderes Dokument vorher noch nie eine Fehlermeldung verursacht hat.

Ich bin völlig ratlos und würde mich sehr über Hilfe freuen.

TestMainQMMinimalbeispiel.tex
(1.5 KiB) 133-mal heruntergeladen
Zuletzt geändert von Lorz am Di 8. Dez 2020, 00:35, insgesamt 1-mal geändert.

Lorz
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 67
Registriert: Mi 26. Feb 2020, 22:13
Wohnort: Bremen

Re: Probleme mit utf8, latin1 und ansinew

Beitrag von Lorz »

OK, habe es jetzt die Lösung in einem anderen Post entdeckt:

"So, wer TeXstudio hat, muss nicht nur über Optionen->texstudio konfigurieren ->Editor auf UTF8 stellen, sondern auch unten rechts im Fenster auf UTF8. Neben "Fertig - Automatisch" "

AAAAAAAAAAAAAlllter auf so was wäre ich NIIIIIIIIIIIEEE selbst gekommen. Kann mir jemand erklären warum TeXstudio so einen Unfug zulässt?! Das ist ja wohl skandalös:-(


Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Re: Probleme mit utf8, latin1 und ansinew

Beitrag von Bartman »

Auch wenn es nicht zum Thema passen mag, so möchte ich dennoch eine Alternative zu Deinem Beispiel vorschlagen:

\documentclass[fontsize=14pt, DIV=calc]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[ngerman]{babel}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage[tmargin=0.25cm, bmargin=0.1cm, lmargin=0.52cm, rmargin=0.08cm]{geometry}
\usepackage{setspace}
\usepackage{graphicx}
\usepackage{varwidth}
\usepackage[locale=DE]{siunitx}
\usepackage{tcolorbox}% lädt xcolor

\setparsizes{0pt}{3.5\baselineskip}{0pt plus 1fil}

\begin{document}
    \thispagestyle{empty}
    \begin{tcolorbox}[colback=white, boxrule=1mm, hbox]
	    \begin{varwidth}{\linewidth}
	    \small
	    Im Wasserstoffatom gilt\par\medskip
	    \parbox{2.4cm}{\includegraphics[width=\linewidth]{example-image-a}}%
	    \hspace{2mm}%
	    $\begin{aligned}
	        E_1&=\SI{-13.6}{\eV}\\
	        E_2&=\SI{-3.4}{\eV}\\
	        E_3&=\SI{-1.5}{\eV}\\
	        E_4&=\SI{-0.85}{\eV}
	    \end{aligned}$\par\medskip
	    $E_5=\SI{-0.54}{\eV}, E_6=\SI{-0.38}{\eV}$\par 
	    Berechne die Photonenenergie\par 
	    z. Zustandsübergang $\textcolor{blue}{w_1}\;\rightarrow\;\textcolor{green}{w_2}$.\par
	    Bearbeitungszeit: \SI{30}{\s}
	    \end{varwidth}
    \end{tcolorbox}% Karte QM01 Wasserstoffatomübergangsenergie
\end{document}

Lorz
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 67
Registriert: Mi 26. Feb 2020, 22:13
Wohnort: Bremen

Re: Probleme mit utf8, latin1 und ansinew

Beitrag von Lorz »

Hey Bartman,

das schaut sehr interessant aus, was Du da so alternativ benutzt. Das ziehe ich mir morgen mal genauer rein - vielen Dank schon mal!


Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Re: Probleme mit utf8, latin1 und ansinew

Beitrag von u_fischer »

Kann mir jemand erklären warum TeXstudio so einen Unfug zulässt?! Das ist ja wohl skandalös:-(

Weil jeder vernünftige Editor zum einen eine Einstellung braucht, welche Kodierung standardmäßig bei neuen Dateien verwendet wird und zum anderen eine Möglichkeit bei einzelnen Dateien eine andere Kodierung zu erzwingen.

Da du offensichtlich noch Dateien hast, die latin1 kodiert sind, sollte es dich freuen, dass TeXStudio das kann und das nicht als Unfug bezeichnen. Oder wäre es lieber, wenn TeXStudio sich einfach weigert, die nicht utf8-Dateien zu öffnen?


Lorz
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 67
Registriert: Mi 26. Feb 2020, 22:13
Wohnort: Bremen

Re: Probleme mit utf8, latin1 und ansinew

Beitrag von Lorz »

Hallo u–fischer,

Du magst da schon recht haben. Irgendwo hat das alles seinen Sinn.
Doch für mich als reinen Anwender sind solche möglichen Zeichenkodierungskonflikte einfach ein Fallstrick der übelsten Sorte. Der Fehler ist sau schwer zu finden, insbesondere, weil man ja schon meint als Standardkodierung in den Optionen utf8 eingestellt zu haben. Und die Fehlermeldung weist auf in keiner Weise darauf, dass mit einer anderen Kodierung gespeichert als gelesen wurde.
Ich bin einfach verzweifelt, dass ich mich nicht auf funktionierendes LaTex verlassen kann. Warum muss man immer hochgradig vertieftes Fachwissen über die im LaTex–System ablaufenden Prozesse haben, um damit arbeiten können? Kurzum, wenn LaTex auch einem Otto-normal-Texfreund zugänglich sein soll, dann darf so ein Fehler wie in meinem Fall einfach nicht passieren bzw. die Fehlermeldung muss die Ursache zielsicher erkennen.
Hinweis: Ich arbeite seit etwa 16 Jahren fast jeden Tag mit Tex und habe bereits mehrere Physikbücher mit Projektdatein getext, die danach auch in den Druck gingen wie zB „Physik mit Pfiff“ oder die Physikolympiadenbücher. Ich bin also noch nicht mal Leihe. Deshalb zum dritten Mal - obiges Problem DARF so nicht vorkommen. Ich bin gern bereit Geld an die Entwickler zu spenden, um TexStudio an dieser Stelle zu verändern/zu verbessern.


Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Re: Probleme mit utf8, latin1 und ansinew

Beitrag von u_fischer »

Warum muss man immer hochgradig vertieftes Fachwissen über die im LaTex–System ablaufenden Prozesse haben, um damit arbeiten können?

In einem aktuellen LaTeX ist utf8 der Default. Alle TeX-Editoren haben mittlerweile auch utf8 als Standardkodierung. Neue LaTeX-Nutzer brauchen daher kein vertieftes Fachwissen über Kodierungen, die kommen mit nichts anderem als utf8 in Kontakt. Wenn du also Geld ausgeben willst, verwende es lieber dafür, dass jemand auf deinem Computer aufräumt und all die alten latin1-Dateien nach utf8 konvertiert. Dann muss du nicht mehr lernen, was es mit den Kodierungen und inputenc auf sich hat.


markusv
Forum-Meister
Forum-Meister
Beiträge: 947
Registriert: Do 3. Sep 2015, 17:20
Wohnort: Leipzig

Re: Probleme mit utf8, latin1 und ansinew

Beitrag von markusv »

Nunja, das "Problem" tritt ja nicht auf, wenn man aktuelle Systeme nutzt, die Entwicklung von TeX verfolgt und nicht uralte Vorlagen immer wieder stumpf übernimmt.
Und bei Fehlern einfach in der Paketoption die Kodierung zu ändern, ohne auf die tatsächliche Kodierung der Datei zu achten, ist auch nach 16 Jahren Erfahrung mit TeX zumindest sehr laienhaftes Verhalten.
Dass texstudio nicht einfach die Kodierung einer beliebigen Datei ändert, ist denke ich weder skandalös noch ein Problem. Du kannst aber gern helfen, texstudio zu verbessern: https://github.com/texstudio-org/texstudio

Wäre Microsoft Word für das Schreiben von Büchern entwickelt worden,
würde es Microsoft Book heißen.

Unkomplizierte und schnelle LaTeX-Hilfe, bspw. Erstellung von Vorlagen und Bewerbungen:
Help-LaTeX@web.de

Forenleser

Re: Probleme mit utf8, latin1 und ansinew

Beitrag von Forenleser »

@Lorz: Hast du eigentlich die Seite, die dir zum Thema UTF-8 empfohlen wurde aufmerksam gelesen und verstanden?

In den vergangenen Wochen, Monaten, – ja eigentlich – Jahren wurden Leute hier immer wieder darauf hingewiesen, dass es sinnvoll ist, sich von alten Zöpfen wie ISO-Latin-1 (aka ISO-8859-1), ansinew (aka Windows-CP1252) und eigentlich auch \usepackage[utf8]{inputenc} zu verabschieden. Auch auf viele anderen veralteten Dinge müssen wir hier immer und immer wieder hinweisen. Leider halten sich LaTeX-Anwender nicht daran. Leider verwenden sie sogar immer und immer wieder Dinge, die schon ursprünglich nicht empfehlenswert waren. Leider machen sich auch nur wenige Anwender die Mühe, mal etwas mehr als nur die Antworten auf ihre eigenen Fragen zu lesen. Und selbst, wenn man sie explizit auf Probleme hinweist, ignorieren diverse Anwender das weiterhin. (Es gibt selbstverständlich auch Anwender, die jede Information aufsaugen und direkt umzusetzen versuchen). Seit Jahren mit LaTeX unterwegs zu sein, ist also noch lange nicht gleichbedeutend mit guten Code zu produzieren. Ich selbst verwende TeX inzwischen seit über 30 Jahren und LaTeX seit rund 28 oder 29. Trotzdem entdecke ich immer wieder Neues und weiß noch lange nicht alles.

Natürlich kann man sich auf den Standpunkt stellen, dass ein Editor all diese Fehler von vornherein verhindern soll. Du darfst das gerne umsetzen bzw. Geld dafür ausgeben, damit das jemand für dich erledigt. TeXstudio selbst ist ja entstanden, weil jemand mit Texmaker nicht zufrieden war. Das ist bei OpenSource also nichts ungewöhnliches.

Ich auf der anderen Seite bin ganz froh, wenn mir der Editor erlaubt, alte Dateien einfach umzucodieren oder notfalls auch einmal mit der alten Codierung kurzzeitig weiter zu verwenden. Keinesfalls will ich, dass dann die nächste neu angelegte Datei deshalb versehentlich mit der veralteten Codierung erstellt wird. Da ist mir schon lieber, dass der Editor zwischen Voreinstellung und Einstellung für die aktuelle Datei unterscheidet. Ich will auch sonst nicht, dass mir der Editor mehr Vorschriften macht, als unbedingt notwendig sind. Keinesfalls will ich zu der alten Zeit zurück als Editoren nur eine einzige Codierung beherrscht haben, die dann auch noch in unterschiedlichen Welten oder je nach Editor teilweise sehr unterschiedlich war.

Übrigens gehörten Texmaker und TeXstudio mit zu den ersten LaTeX-Editoren, die unter Windows die Beschränkung auf ansinew durchbrochen haben. Wobei auch schon zu Windows-ansinew-Zeiten (damals oft mit TexnicCenter 1) eine Menge Unsinn über die richtige Codierungseinstellung erzählt wurde. Das hat sich teilweise leider bis heute gehalten.


Lorz
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 67
Registriert: Mi 26. Feb 2020, 22:13
Wohnort: Bremen

Re: Probleme mit utf8, latin1 und ansinew

Beitrag von Lorz »

@Forenleser: ich habe den Text zum Thema UTF8 inzwischen gelesen und finde solche Recherchen ja auch grundsätzlich interessant. Hilft mir aber für mein Problem leider nicht. Ich habe zudem nicht immer die Möglichkeit mich jederzeit so intensiv weiter zu bilden. Ich bin auf Latex gestoßen, weil ich Mathematik und Physik studiert habe. Oft muss ich "schnell mal" was texen, weil ich Latex für die Vorbereitung von Unterricht (Arbeitsblätter, Klassenarbeiten, sonstiges Lehrmaterial) benutze.
Es gibt dann ja auch Menschen, die stellen Latex so https://www.youtube.com/watch?v=k8Bzlu5h9WA dar. Und das ist wirklich mal gelogen - du bekommst mit Latex zwar interessantere Probleme und lernst dabei auch viel mehr und entwickelst dich deutlich weiter, als wenn du mit Word arbeitest. Aber die Probleme, die auch nur ein falscher Befehl oder ein falsches Paket bewirken sind haarsträubend. Der Latex-Stress hat meine Lebenszeit mit Sicherheit schon um 2% verkürzt (zum Glück gibt es auf der anderen Seite auch viel freudige Momente mit Latex, sodass ich hier vielleicht plusminusnull raus gehe :-)). Ich habe diesen Stress allerdings WEIL ich so hartnäckig bin und ein Problem mich nicht loslässt. Und dann wird es halt 3 Uhr nachts und der Wecker zur Arbeit klingelt trotzdem um 6 Uhr.

Naja zurück zum Thema. Ich sollte vielleicht eine Info geben, wie das Problem mit UTF8 zustande kam: Ich habe seit langer Zeit wieder angefangen mit Projektdateien zu arbeiten und binde dabei mit dem input-Befehl Dateien ein. Und für diese eingebundenen Dateien war dann ärgerlicherweise eine Speicherung mit Latin-Codierung eingestellt, die Projektdatei jedoch mit UTF8 formatiert. Dies regt mich nach wie vor auf und ich betitele - trotz der Antworten von u_fischer, markusv und Forenleser - dies weiterhin als Unfug von TexStudio, denn - wie ich bereits sagte - ich bekomme eine Fehlermeldung, dass die Formatierung nicht stimme. Aber unter Optionen -> TexStudio konfigurieren -> Standard Kodierung: UTF8 und auch das inputenc hat utf8 als Option eingestellt (seit dem ich den Artikel gelesen weiß ja nun, dass ich dieses Paket gar nicht extra einbinden muss). Warum ist dann im Optionsmenü nicht auch gleich das Speicherformat aufgeführt? Und wenn schon das nicht der Fall ist - warum gibt TexStudio dann keine Warnung, dass Speicherformat und Standardformatierung ungleich sind?
Aus genau solchen Gründen, würde ich einem Schüler - egal ob mit oder ohne Latex-Vorerfahrung - leider davon abraten, zB eine Facharbeit mit Latex zu schreiben. Und das macht traurig, weil ich eigentlich gerne mit Begeisterung für Latex geben würde, aber die Fallstricke sind desaströs.

Und zur Frage, ob ich sowas nach 16 Jahren können muss. Ich habe keine Programmierervorerfahrung, wenn man von ein paar Maple-Kenntnissen absieht. Interessieren tut mich das Hintergrundwissen zu Paketen durchaus. Aber allein das Anwenden füllt meinen Arbeitsalltag schon voll aus. Und dass ich überhaupt - als Lehrer - ausschließlich Latex zu Erstellung von Lehrmaterial verwende, ist wahrscheinlich schon exotisch genug. Und ich finde die Einstellung sehr "Programmierer"-Like, dass man doch als Anwender all die Hintergründe zu den Paketen wissen müsste - so etwas kann immer schön leicht daher sagen, wenn man nicht den Druck und die Verantwortung hat, dass Produkte schnell entstehen müssen. Dann will man einfach, dass "die Kiste" das tut, was sie soll. Der Erfolg einer Recherche ist hingegen zeitlich unkalkulierbar.


Antworten