PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Umlaute Fehlfunktion trotz ucs.sty



IcerAge
29-04-2011, 11:31
Hallo allerseits,

folgender Code wird benutzt, liefert aber trotz installierter ucs.sty keine Umlaute in der PDF Ausgabe.


\documentclass[12pt]{article}
\usepackage{ucs}
\usepackage[utf8x]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{amssymb,amsmath}
% Gnuplotfunktionen
\usepackage[miktex]{gnuplottex}
\begin{document}
\section{Aufgabe 1/6}
\end{document}

Gibt es da ein Repository, dass man empfohlender Weise benutzen sollte? Vielleicht besteht bei dem von mir verwendeten ein Mangel an Aktualität.

Gibt es Tests die man durchführen kann, um den Fehler einzugrenzen?

Gruß, IceRage

rstuby
29-04-2011, 12:04
Komisch, bei mir werden die Umlaute korrekt angezeigt.

\documentclass[12pt]{article}
\usepackage{ucs}
\usepackage[utf8x]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{amssymb,amsmath}
% Gnuplotfunktionen
\usepackage[miktex]{gnuplottex}
\begin{document}
\section{Aufgabe 1/6}
Nächstes Mal mach bitte für uns ein Beispiel, das nicht nur lauffähig ist, sondern auch das Problem demonstriert und keine unnötigen Pakete lädt. Die Größe ist zweitrangig.
\end{document}
Welche Kodierung hast du denn in deinem Editor eingestellt? Womöglich liegt es daran?

IcerAge
29-04-2011, 12:40
Vielleicht ist es das ja schon. Ich kann mich nicht erinnern da etwas verstellt zu haben. Wo kann man denn das überhaupt einstellen bei TeXniccenter?

u_fischer
29-04-2011, 12:44
Benütze nicht ucs oder utf8x, sondern nur \usepackage[utf8]{inputenc}. Natürlich nur wenn die Datei wirklich in utf8 kodiert ist, was bei einem alten TexnicCenter unwahrscheinlich ist, m.W. kann nur die neueste alpha/beta-Version utf8. Benutze außerdem auch \usepackage[T1]{fontenc}

IcerAge
29-04-2011, 12:50
Also was genau soll ich jetzt benutzen? ^^

Ich will einfach nur, dass Umlaute angezeigt werden.

u_fischer
29-04-2011, 12:54
Also was genau soll ich jetzt benutzen?

Entweder


\usepackage[ansinew]{inputenc}
\usepackage[T1]{fontenc}

oder


\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

Probiere einfach aus, was bei einem einfachen Beispiel


\documentclass{article}
%hier Varianten einfüge
\begin{document}
öäüß
\end{document}

funktioniert und korrekte Umlaute gibt.

IcerAge
29-04-2011, 12:59
Muss ich da vorher noch Packete installieren. Wenn ja welche bitte?
Einfach so geht nämlich Beides nicht.

voss
29-04-2011, 13:19
Muss ich da vorher noch Packete installieren. Wenn ja welche bitte?
Einfach so geht nämlich Beides nicht.

was heißt "geht nicht"?
Beide Pakete gehören zur Standard, sind also da.

Herbert

u_fischer
29-04-2011, 13:37
Einfach so geht nämlich Beides nicht.

Wenn mein Beispiel - ergänzt um eine der beiden Varianten - nicht geht, hast du kein funktionsfähiges TeX-System. Wenn irgendwas anderes nicht geht, solltest du vielleicht erwähnen, was genau du tust, und was "es geht nicht" überhaupt heißen soll.

IcerAge
29-04-2011, 13:47
Also es ist folgendes. Wenn ich das tex file mit texWorks öffne, dann habe ich anstelle der Umlaute kleine Quadrate, was wohl auf einen falsch eingestellten Editor in TeXnicCenter hindeutet.

Wenn ich dann das in TexWorks mit umlauten versehende File in TeXnicCenter öffne, dann habe ich für ein ß so eine Squenz ß; übersetzen kann ich das tex file dann aber auch von TeXnicCenter aus in ein PDF file.

Kann man irgendwie den für den Editor verwendeten Zeichensatz in TeXnicCenter anpassen? Es deutet nämlich alles daraufhin, dass es nur daran liegt.

u_fischer
29-04-2011, 13:57
texworks ist ein utf8-editor. Wenn du damit 8-Bit-Dateien bearbeiten willst, musst den Editor unter Einstellungen anpassen.

IcerAge
29-04-2011, 14:42
Ich will nicht mit TexWorks arbeiten, ich will mit TeXnicCenter arbeiten. TeXworks übersetzt die Dateien fehlerfrei, TeXnicCenter aber nicht. Was muss ich jetzt in TeXniCcenter einstellen, damit der auch funktioniert?

IcerAge
29-04-2011, 16:45
Bringt das hier vielleicht Klarheit?


This is pdfTeX, Version 3.1415926-1.40.11 (MiKTeX 2.9) (preloaded format=latex 2011.4.28) 29 APR 2011 16:43
entering extended mode
**main.tex

("C:\Dokumente und Einstellungen\alle\Eigene Dateien\Dokumente\latex\s.13_a.16\
main.tex"
LaTeX2e <2009/09/24>
Babel <v3.8l> and hyphenation patterns for english, afrikaans, ancientgreek, ar
abic, armenian, assamese, basque, bengali, bokmal, bulgarian, catalan, coptic,
croatian, czech, danish, dutch, esperanto, estonian, farsi, finnish, french, ga
lician, german, german-x-2009-06-19, greek, gujarati, hindi, hungarian, iceland
ic, indonesian, interlingua, irish, italian, kannada, kurmanji, lao, latin, lat
vian, lithuanian, malayalam, marathi, mongolian, mongolianlmc, monogreek, ngerm
an, ngerman-x-2009-06-19, nynorsk, oriya, panjabi, pinyin, polish, portuguese,
romanian, russian, sanskrit, serbian, slovak, slovenian, spanish, swedish, swis
sgerman, tamil, telugu, turkish, turkmen, ukenglish, ukrainian, uppersorbian, u
senglishmax, welsh, loaded.
("C:\Programme\MiKTeX 2.9\tex\latex\base\article.cls"
Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
("C:\Programme\MiKTeX 2.9\tex\latex\base\size12.clo"
File: size12.clo 2007/10/19 v1.4h Standard LaTeX file (size option)
)
\c@part=\count79
\c@section=\count80
\c@subsection=\count81
\c@subsubsection=\count82
\c@paragraph=\count83
\c@subparagraph=\count84
\c@figure=\count85
\c@table=\count86
\abovecaptionskip=\skip41
\belowcaptionskip=\skip42
\bibindent=\dimen102
)
("C:\Programme\MiKTeX 2.9\tex\latex\unicode\ucs.sty"
Package: ucs 2004/10/17 UCS: Unicode input support

("C:\Programme\MiKTeX 2.9\tex\latex\unicode\data\uni-global.def"
File: uni-global.def 2004/10/17 UCS: Unicode global data
)
\uc@secondtry=\count87
\uc@combtoks=\toks14
\uc@combtoksb=\toks15
\uc@temptokena=\toks16
)
("C:\Programme\MiKTeX 2.9\tex\latex\base\inputenc.sty"
Package: inputenc 2008/03/30 v1.1d Input encoding file
\inpenc@prehook=\toks17
\inpenc@posthook=\toks18

("C:\Programme\MiKTeX 2.9\tex\latex\unicode\utf8x.def"
File: utf8x.def 2004/10/17 UCS: Input encoding UTF-8
))
("C:\Programme\MiKTeX 2.9\tex\latex\amsfonts\amssymb.sty"
Package: amssymb 2009/06/22 v3.00

("C:\Programme\MiKTeX 2.9\tex\latex\amsfonts\amsfonts.sty"
Package: amsfonts 2009/06/22 v3.00 Basic AMSFonts support
\@emptytoks=\toks19
\symAMSa=\mathgroup4
\symAMSb=\mathgroup5
LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold'
(Font) U/euf/m/n --> U/euf/b/n on input line 96.
))
("C:\Programme\MiKTeX 2.9\tex\latex\ams\math\amsmath.sty"
Package: amsmath 2000/07/18 v2.13 AMS math features
\@mathmargin=\skip43

For additional information on amsmath, use the `?' option.
("C:\Programme\MiKTeX 2.9\tex\latex\ams\math\amstext.sty"
Package: amstext 2000/06/29 v2.01

("C:\Programme\MiKTeX 2.9\tex\latex\ams\math\amsgen.sty"
File: amsgen.sty 1999/11/30 v2.0
\@emptytoks=\toks20
\ex@=\dimen103
))
("C:\Programme\MiKTeX 2.9\tex\latex\ams\math\amsbsy.sty"
Package: amsbsy 1999/11/29 v1.2d
\pmbraise@=\dimen104
)
("C:\Programme\MiKTeX 2.9\tex\latex\ams\math\amsopn.sty"
Package: amsopn 1999/12/14 v2.01 operator names
)
\inf@bad=\count88
LaTeX Info: Redefining \frac on input line 211.
\uproot@=\count89
\leftroot@=\count90
LaTeX Info: Redefining \overline on input line 307.
\classnum@=\count91
\DOTSCASE@=\count92
LaTeX Info: Redefining \ldots on input line 379.
LaTeX Info: Redefining \dots on input line 382.
LaTeX Info: Redefining \cdots on input line 467.
\Mathstrutbox@=\box26
\strutbox@=\box27
\big@size=\dimen105
LaTeX Font Info: Redeclaring font encoding OML on input line 567.
LaTeX Font Info: Redeclaring font encoding OMS on input line 568.
\macc@depth=\count93
\c@MaxMatrixCols=\count94
\dotsspace@=\muskip10
\c@parentequation=\count95
\dspbrk@lvl=\count96
\tag@help=\toks21
\row@=\count97
\column@=\count98
\maxfields@=\count99
\andhelp@=\toks22
\eqnshift@=\dimen106
\alignsep@=\dimen107
\tagshift@=\dimen108
\tagwidth@=\dimen109
\totwidth@=\dimen110
\lineht@=\dimen111
\@envbody=\toks23
\multlinegap=\skip44
\multlinetaggap=\skip45
\mathdisplay@stack=\toks24
LaTeX Info: Redefining \[ on input line 2666.
LaTeX Info: Redefining \] on input line 2667.
)
("C:\Programme\MiKTeX 2.9\tex\latex\gnuplottex\gnuplottex.sty"
Package: gnuplottex 2011/04/16 v0.4.3 gnuplot graphs in LaTeX

("C:\Programme\MiKTeX 2.9\tex\latex\base\latexsym.sty"
Package: latexsym 1998/08/17 v2.2e Standard LaTeX package (lasy symbols)
\symlasy=\mathgroup6
LaTeX Font Info: Overwriting symbol font `lasy' in version `bold'
(Font) U/lasy/m/n --> U/lasy/b/n on input line 47.
)
("C:\Programme\MiKTeX 2.9\tex\latex\graphics\graphicx.sty"
Package: graphicx 1999/02/16 v1.0f Enhanced LaTeX Graphics (DPC,SPQR)

("C:\Programme\MiKTeX 2.9\tex\latex\graphics\keyval.sty"
Package: keyval 1999/03/16 v1.13 key=value parser (DPC)
\KV@toks@=\toks25
)
("C:\Programme\MiKTeX 2.9\tex\latex\graphics\graphics.sty"
Package: graphics 2009/02/05 v1.0o Standard LaTeX Graphics (DPC,SPQR)

("C:\Programme\MiKTeX 2.9\tex\latex\graphics\trig.sty"
Package: trig 1999/03/16 v1.09 sin cos tan (DPC)
)
("C:\Programme\MiKTeX 2.9\tex\latex\00miktex\graphics.cfg"
File: graphics.cfg 2007/01/18 v1.5 graphics configuration of teTeX/TeXLive
)
Package graphics Info: Driver file: dvips.def on input line 91.

("C:\Programme\MiKTeX 2.9\tex\latex\graphics\dvips.def"
File: dvips.def 1999/02/16 v3.0i Driver-dependant file (DPC,SPQR)
))
\Gin@req@height=\dimen112
\Gin@req@width=\dimen113
)
("C:\Programme\MiKTeX 2.9\tex\latex\moreverb\moreverb.sty"
Package: moreverb 2008/06/03 v2.3a `more' verbatim facilities

("C:\Programme\MiKTeX 2.9\tex\latex\tools\verbatim.sty"
Package: verbatim 2003/08/22 v1.5q LaTeX2e package for verbatim enhancements
\every@verbatim=\toks26
\verbatim@line=\toks27
\verbatim@in@stream=\read1
)
\tab@position=\count100
\tab@size=\count101
\listing@line=\count102
)
("C:\Programme\MiKTeX 2.9\tex\latex\base\ifthen.sty"
Package: ifthen 2001/05/26 v1.1c Standard LaTeX ifthen package (DPC)
)
runsystem(echo t > "w18-test-20114291003")...executed.

runsystem(del "w18-test-20114291003")...executed.

Package gnuplottex Info: Automatically converting gnuplot files. on input line
75.
\c@fignum=\count103
)
No file main.aux.
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 7.
LaTeX Font Info: ... okay on input line 7.
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 7.
LaTeX Font Info: ... okay on input line 7.
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 7.
LaTeX Font Info: ... okay on input line 7.
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 7.
LaTeX Font Info: ... okay on input line 7.
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 7.
LaTeX Font Info: ... okay on input line 7.
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 7.
LaTeX Font Info: ... okay on input line 7.
("C:\Programme\MiKTeX 2.9\tex\latex\unicode\ucsencs.def"
File: ucsencs.def 2003/11/29 Fixes to fontencodings LGR, T3
)

! Package inputenc Error: Keyboard character used is undefined
(inputenc) in inputencoding `utf8x'.

See the inputenc package documentation for explanation.
Type H <return> for immediate help.
...

l.9 ö
äü
You need to provide a definition with \DeclareInputText
or \DeclareInputMath before using this key.


! Package utf8x Error: MalformedUTF-8sequence.

See the utf8x package documentation for explanation.
Type H <return> for immediate help.
...

l.10 \end
{document}
Ifthecharacterisanargument,putitin{}


! Package utf8x Error: MalformedUTF-8sequence.

See the utf8x package documentation for explanation.
Type H <return> for immediate help.
...

l.10 \end
{document}
Ifthecharacterisanargument,putitin{}

("C:\Programme\MiKTeX 2.9\tex\latex\unicode\data\uni-255.def"
File: uni-255.def 2004/10/17 UCS: Unicode data U+FF00..U+FFFF
)
("C:\Programme\MiKTeX 2.9\tex\latex\unicode\data\uninames.dat"
File: uninames.dat 2004/10/17 UCS: Unicode character names, compressed
)
("C:\Programme\MiKTeX 2.9\tex\latex\unicode\data\uni-255.def"
File: uni-255.def 2004/10/17 UCS: Unicode data U+FF00..U+FFFF
)

! Package ucs Error: Unknown Unicode character 65533 = U+FFFD,
(ucs) possibly declared in uni-255.def.
(ucs) Type H to see if it is available with options.

See the ucs package documentation for explanation.
Type H <return> for immediate help.
...

l.10 \end
{document}
Unicode character 65533 = U+FFFD:
REPLACEMENT CHARACTER
Character is not defined in uni-*.def files.
Enter I!<RET> to define the glyph.

)
! Emergency stop.
<*> main.tex

*** (job aborted, no legal \end found)


Here is how much of TeX's memory you used:
1929 strings out of 494054
24908 string characters out of 3150175
80100 words of memory out of 3000000
5219 multiletter control sequences out of 15000+200000
4713 words of font info for 18 fonts, out of 3000000 for 9000
715 hyphenation exceptions out of 8191
32i,1n,24p,332b,482s stack positions out of 5000i,500n,10000p,200000b,50000s
No pages of output.

IcerAge
29-04-2011, 16:52
Also Folgendes "funktioniert" ! Und vor dem Hintergrund der genannten Überschrift dieses Postings, sollte es wirklich klar sein was gemeint ist, wenn von "Funktion" die Rede ist oder?


\documentclass[12pt]{article}
\usepackage{ucs}
\usepackage[latin1]{inputenc}
\usepackage{amssymb,amsmath}
% Gnuplotfunktionen
\usepackage[miktex]{gnuplottex}
\begin{document}
\section{Aufgabe 1/16}
öäüß
\end{document}

Für alle die vielleicht ein ähnliches Problem haben: latin1 war für mich die Lösung. Viel Erfolg weiterhin!

u_fischer
29-04-2011, 17:56
Die Kombination ucs + latin1 ist Quatsch. Schmeiß ucs raus. Abgesehen davon: Benütze lieber statt latin1 wie von mir vorgeschlagen ansinew. Mit latin1 funktioniert das Eurozeichen nicht.


\documentclass[a4paper]{article}
%\usepackage[latin1]{inputenc}
\usepackage[ansinew]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\begin{document}

äöü €
\end{document}

IcerAge
23-08-2011, 18:39
Dazu hätte ich noch mal eine Frage.

Bisher hat alles doch noch gut funktioniert.

Wenn ich das jetzt unter Debian machen will. Was gibt es da für eine Packetverwaltung. Ich meine jetzt nicht apt-get. Das ist ja die Debian Packetverwaltung. Mit der klappt alles wunderbar. Frage ist nur, wie installiere ich jetzt das Packet ansinew nach? Das ist offenbar nicht so ohne Weiteres enthalten.

IcerAge
23-08-2011, 19:00
Ich sollte vielleich dazu sagen, dass ich folgendes von einem PHP skript an mein Latex übergebe:

$str_latex = "\\documentclass{article}
\\pagestyle{empty}
\\begin{document}
\$".html_entity_decode($matches[1])."\$
\\end{document}";

Hier drin steht eine mathematische Formel, die auch Umlaute enthalten kann:

html_entity_decode($matches[1])


Ich vermute, dass der Webserver eine flasche codierung an Latex übergibt.

Wenn Latex so etwas bekommt, kann es das wohl nicht als einen deutschen Umlaut deuten oder?

für

Sepp99
23-08-2011, 19:07
Ich vermute, dass der Webserver eine flasche codierung an Latex übergibt.
Der Webserver gibt normalerweise ASCII- Code. Wie TXC auf utf8 umgestellt wird steht in http://www.golatex.de/texniccenter-2-0a3-und-miktex-2-9-t5482,start,25.html Punkt 1.2

Gruß, Sepp.-

IcerAge
23-08-2011, 19:23
Ich habs jetzt noch mal überprüft. Im zu bearbeitenden Texfile steht definitiv, der korrekte Umlaut. Es kommt also alles richtig im Texfile an, aber Tex übersetzt den Umlaut nicht.

Wie geht das in Debian?

u_fischer
23-08-2011, 19:35
wie installiere ich jetzt das Packet ansinew nach? Das ist offenbar nicht so ohne Weiteres enthalten.

Doch. \usepackage[ansinew]{inputenc} geht mit jedem TeX-System. Das gehört zum Kern.


Wenn Latex so etwas bekommt, kann es das wohl nicht als einen deutschen Umlaut deuten oder?

für

Sieht nach utf8 aus. Versuche also \usepackage[utf8]{inputenc}


Im zu bearbeitenden Texfile steht definitiv, der korrekte Umlaut.

In der Datei stehen keine Umlaute, sondern Nullen und Einsen. Dein Editor übersetzt das. Und dein Editor übersetzt es richtig, weil er die richtige Kodierung (Übersetzungtabelle) benutzt. LaTeX benutzt offensichtlich die falsche. Für die vielen Möglichkeiten wie ein ü kodiert werden kann siehe: http://www.fileformat.info/info/unicode/char/fc/index.htm

Schweinebacke
23-08-2011, 19:41
Am einfachsten ist, wenn Du gar nicht inputenc, sondern selinput verwendest. Kopier einfach mal das hier in Deinen Editor und lass es laufen:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß},
%Euro={€},
}
\begin{document}
Das funktioniert auch dann, wenn man mit seinem Editor gar umgehen kann: ÄÖÜäöüß.
\end{document}
Allerdings muss dafür das Paket selinput auch wirklich installiert sein, was im Gegensatz zu inputenc bei einer Minimalinstallation nicht zwingend der Fall ist. Es kann aber ggf. über den Paketmanager sowohl bei MiKTeX als auch bei TeX Live installiert werden.

IcerAge
23-08-2011, 19:41
Doch. \usepackage[ansinew]{inputenc} geht mit jedem TeX-System. Das gehört zum Kern.



Sieht nach utf8 aus. Versuche also \usepackage[utf8]{inputenc}

Ich versuche Beides mal. Ich muss allerdings sagen, das der string in Latex mit passendem Umlaut ankommt. Das war ein Fehler von meiner Seite, dass ich sagte es würde: für im Latexfile ankommen. Im .tex File steht definitiv: für. Und das wird mit fr übersetzt.

Könnte es vielleicht sein, dass dvipng Probleme macht. Ich lasse nach der Erstellung des dvi Files nämlich noch dvipng drüberlaufen, und binde dann das fertige png in meine Seite ein. Im fertigen png steht dann für ohne ü, also nur fr

IcerAge
23-08-2011, 19:42
Am einfachsten ist, wenn Du gar nicht inputenc, sondern selinput verwendest. Kopier einfach mal das hier in Deinen Editor und lass es laufen:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß},
%Euro={€},
}
\begin{document}
Das funktioniert auch dann, wenn man mit seinem Editor gar umgehen kann: ÄÖÜäöüß.
\end{document}
Allerdings muss dafür das Paket selinput auch wirklich installiert sein, was im Gegensatz zu inputenc bei einer Minimalinstallation nicht zwingend der Fall ist. Es kann aber ggf. über den Paketmanager sowohl bei MiKTeX als auch bei TeX Live installiert werden.


Das warst du schneller. Schaue ich mir gleich an, muss kurz weg.

u_fischer
23-08-2011, 20:14
Das war ein Fehler von meiner Seite, dass ich sagte es würde: für im Latexfile ankommen. Im .tex File steht definitiv: für. Und das wird mit fr übersetzt.

Das passiert, wenn man nicht inputenc benutzt (und eine Schrift ohne ü).

Verwende in deinen Dokumenten immer \usepackage[T1]{fontenc}, und außerdem entweder inputenc (mit korrekter Option) oder selinput.

sommerfee
23-08-2011, 20:24
Noch was hierzu:


Wenn ich das jetzt unter Debian machen will. Was gibt es da für eine Packetverwaltung.

Wie hast du dein TeX-System installiert? Verwendest du das aus den Debian-Paketquellen?


Ich meine jetzt nicht apt-get.

Das wäre dann aber der richtige Ansprechpartner. Entweder man komplettiert sich einfach sein TeX-System, indem man "apt-get install texlive-full" als root ausführt, oder aber man sucht unter http://packages.debian.org/squeeze/all/tex/ , zu welchem Debian-Paket welches LaTeX-Paket gehört, und installiert nur das via "apt-get install <debian-paketname>" nach (Für LaTeX findet man dort z.B. texlive-latex-base, texlive-latex-extra und texlive-latex-recommended.)

Hast du hingegen TeXlive selber installiert (über das Script install-tl von http://www.tug.org/texlive/), dann ist der TeXlive-Manager für dich zuständig. Den kannst du via "tlmgr --gui" starten.

P.S.: Ich empfehle auch die Verwendung des selinput-Paketes.