diff options
author | dennis <dennis@b9310e46-f624-0410-8ea1-cfbb3a30dc96> | 2008-08-22 20:36:11 +0000 |
---|---|---|
committer | dennis <dennis@b9310e46-f624-0410-8ea1-cfbb3a30dc96> | 2008-08-22 20:36:11 +0000 |
commit | 4050ce163e99190cd0e1eeaef484816f634ce0fb (patch) | |
tree | eda25820f26961045d6ff90f67364b5c71f22096 /latex | |
parent | 8ce45282524f5b8193c7dcf993c648e065b01ee6 (diff) |
Ergänzung: Installationsanleitung und ein Beispiel für das XeTeX-Paket unicode-math hinzugefügt.
git-svn-id: https://svn.neo-layout.org@800 b9310e46-f624-0410-8ea1-cfbb3a30dc96
Diffstat (limited to 'latex')
-rw-r--r-- | latex/README.txt | 4 | ||||
-rw-r--r-- | latex/XeTeX-unicode-math/Beispiel.pdf | bin | 0 -> 42915 bytes | |||
-rw-r--r-- | latex/XeTeX-unicode-math/Beispiel.tex | 50 | ||||
-rw-r--r-- | latex/XeTeX-unicode-math/Installationsanleitung.pdf | bin | 0 -> 44263 bytes | |||
-rw-r--r-- | latex/XeTeX-unicode-math/Installationsanleitung.tex | 73 |
5 files changed, 126 insertions, 1 deletions
diff --git a/latex/README.txt b/latex/README.txt index 6f3a134..f538b19 100644 --- a/latex/README.txt +++ b/latex/README.txt @@ -7,7 +7,9 @@ Die hier vorgestellten Pakete und Programme zielen darauf ab, darüber hinaus au XeTeX ist eine moderne Alternative zu e-TeX, die neben nativer Unicode-Unterstützung auch die einfache Nutzung moderner Schriftformate (TrueType, OpenType) und ihrer Vorteile (bspw. Ligaturen und variationen in OpenType-Fonts) ermöglicht. In diesem Ordner befindet sich ein einfaches Beispiel, das genau diese Features demonstriert.
Leider unterstützt XeTeX derzeitig jedoch noch nicht die typographischen Feinheiten des Microtype-Paketes (optischer Randausgleich etc.).
+=== XeTeX-unicode-math ===
+Mit XeTeX können Unicode-Zeichen auch im Mathematik-Modus gesetzt werden. Die Unterstützung hierfür ist zwar bereits weit vortgeschritten, wird aber noch als experimentell angesehen und ist deshalb in einem separaten Packet unicode-math ausgelagert. In diesem Ordner befindet sich neben einer Installationsanleitung auch ein Beispiel, das grundliegende Features demonstriert.
+
=== Standard-LaTeX ===
In diesem Ordner befindet sich das Paket uniinput. Es setzt auf dem Standard-Paket utf8 (via inputenc) auf und ergänzt dieses um mehrere auf der NEO-Tastatur vorkommende Zeichen (insbesondere aus der Mathematik). Es wurde von NEO-Nutzern geschrieben und hat den Vorteil, mit dem »normalen« pdfLaTeX benutzt werden zu können.
-
diff --git a/latex/XeTeX-unicode-math/Beispiel.pdf b/latex/XeTeX-unicode-math/Beispiel.pdf Binary files differnew file mode 100644 index 0000000..173e925 --- /dev/null +++ b/latex/XeTeX-unicode-math/Beispiel.pdf diff --git a/latex/XeTeX-unicode-math/Beispiel.tex b/latex/XeTeX-unicode-math/Beispiel.tex new file mode 100644 index 0000000..fc96fe8 --- /dev/null +++ b/latex/XeTeX-unicode-math/Beispiel.tex @@ -0,0 +1,50 @@ +\documentclass{article}
+
+\usepackage{xunicode}
+\usepackage{xltxtra}
+
+\usepackage{fontspec}
+\setmainfont{Cambria} % [Mapping=tex-text]
+
+\usepackage{unicode-math}
+\setmathfont{Cambria Math}
+
+
+% \mathrel \mathord \mathalpha …
+\UnicodeMathSymbol{"02026}{\ldots }{\mathpunct}{Horizontal ellipsis}
+\UnicodeMathSymbol{"000E8}{\grave{e} }{}{LATIN SMALL LETTER E WITH GRAVE}
+\UnicodeMathSymbol{"000E9}{\acute{e} }{}{LATIN SMALL LETTER E WITH ACUTE}
+\UnicodeMathSymbol{"00117}{\dot{e} }{}{LATIN SMALL LETTER E WITH DOT ABOVE}
+\UnicodeMathSymbol{"00113}{\bar{e} }{}{LATIN SMALL LETTER E WITH MACRON}
+%\UnicodeMathSymbol{"01E9E}{\SS }{}{LATIN CAPITAL LETTER SHARP S}
+%\UnicodeMathSymbol{"003A3}{\sum }{\mathop}{GREEK CAPITAL LETTER SIGMA}
+
+
+
+\begin{document}
+
+\title{Das Packet \emph{unicode-math«}}
+
+
+\section{Unicode im Mathematik-Modus benutzen}
+\XeLaTeX\ versteht die direkte Eingabe von Unicode-Zeichen wie äöüß, αβδε oder ∞∫ – ¡und das mit Hilfe des Paketes \emph{unicode-math} auch im Mathematik-Modus! Man kann also anstatt wie bisher
+\[ \forall \varepsilon>0 \exists \delta>0 \forall 1 \geq\Delta\geq0: \infty>\varepsilon,\delta,\delta+\Delta>0, \mathbf{0\leq\Delta\leq1} \]
+auch einfach
+\[ ∀ ε>0 ∃ δ>0 ∀1≥Δ≥0: ∞>ε,δ,δ+Δ>0, \mathbf{0≤Δ≤1} \]
+eingeben.
+
+\section{Diverse Tests}
+Interpretation von doppeldeutigen Zeichen:
+\[ Σ=\Sigma ≠ \sum, Π=\Pi ≠ \prod, \sum_{δ=0}^Ψ, ∫_a^b, \int_aˆb… \]
+
+Behandlung in der aktuellen Schrift unbekannter Zeichen: PREUẞEN vs.
+\[ PREUẞEN \]
+
+Auszeichnungen:
+\[ \sin(π) ≠ E, \mathbf{\sin(π) ≠ E,} \]
+
+Diakritische Zeichen:
+\[ α_1, α_2, …, α_n, é è ē ė \hat{a}, ℝ, ℂ, ⇋↓⇌←†→↑≪∩≫⊂∊⊃≤∪≥⊃∊⊂≠±× \]
+
+
+\end{document}
\ No newline at end of file diff --git a/latex/XeTeX-unicode-math/Installationsanleitung.pdf b/latex/XeTeX-unicode-math/Installationsanleitung.pdf Binary files differnew file mode 100644 index 0000000..e843b8f --- /dev/null +++ b/latex/XeTeX-unicode-math/Installationsanleitung.pdf diff --git a/latex/XeTeX-unicode-math/Installationsanleitung.tex b/latex/XeTeX-unicode-math/Installationsanleitung.tex new file mode 100644 index 0000000..aac2367 --- /dev/null +++ b/latex/XeTeX-unicode-math/Installationsanleitung.tex @@ -0,0 +1,73 @@ +\documentclass{scrartcl} + +\usepackage[ngerman]{babel} +\usepackage{hyperref} + +\usepackage{fontspec} +\usepackage{xunicode} +\usepackage{xltxtra} + +\setmainfont{Linux Libertine O} % Constantia, Gentium, Linux Libertine O, YanoneKaffeesatz, ComicJens … +\setkomafont{disposition}{\fontspec{Linux Libertine O}} % Benutzt eine Schrift für alle Gliederungsebenen + + +\begin{document} + +\title{Installationsanleitung für das \XeTeX-Paket \emph{unicode-math}} +\author{Die Entwickler des NEO-Tastaturlayouts} +\maketitle +\tableofcontents + +\section{Status des Paketes} +Mit \XeTeX\ können auch im Mathematik-Modus Unicode-Zeichen gesetzt werden. Die Unterstützung hierfür ist zwar bereits weit vortgeschritten, aber noch nicht ausgereift – oder wie es Will Robertson, der Autor des Paketes unicode-math selbst formuliert hat: +\begin{quote} +This is an experimental package providing for Unicode maths glyphs in XeTeX+LaTeX (previously known as xmaths). Snapshots of development are available from the \XeTeX\ SVN repository; nothing is stable or complete enough for CTAN yet. +\end{quote} + +\section{Installation} +Zuerst sollten alle Dateien aus dem unicode-math-SVN heruntergeladen und in dem selben Verzeichnis, im dem sich auch die \verb|Beispiel.tex| befindet, abgespeichert werden.\footnote{Wenn dieses Paket jedoch dauerhaft oder für mehrere Dateien verwendet werden soll, bietet es sich an, die Dateien stattdessen in ein lokales \TeX-Root-Directory zu installieren.} Die Dateien sind noch nicht kompiliert, was man aber durch den Aufruf von \verb|xelatex unicode-math.dtx| auf der Kommandozeile selbst erledigen kann. Das dauert zwar u.\,U.\ eine Weile und läuft auch noch nicht so ganz glatt (zumindest bricht er bei mir mit der Fehlermeldung ab, dass er die Datei \verb|FPL N.cfg| nicht finden könne), produziert aber alle notwendigen Dateien. + +Anschließend sollte man die Beispieldatei mit dem Kommando \verb|xelatex Beispiel.tex| problemlos kompilieren können. Unter einem Linux-System muss \emph{eventuell} zuvor noch das ByteOrderMark (\verb||) am Beginn der UTF-8 kodierten Datei entfernt werden. + + +\subsection{Empfohlene Schriften} +Das Beipiel verwendet die beiden Schriften »Cambria« und »Cambria Math«, um die automatische Nutzung einiger OpenType-Features zu demonstrieren. Diese Schriften liegen dem Betriebsſystem Windows Vista standardmäßig bei; liegen sie lokal jedoch nicht vor, sollten sie durch entsprechende auf dem System auch tatsächlich installierte Schriften ersetzen werden. Hier bietet sich etwa die Schrift \emph{Linux Libertine}\footnote{¡Leider nicht! Ein Test hat ergeben, dass die Libertine unterstützt anscheinend nicht das OpenType-Math-Script unterstützt. ¿Wer kennt eine Open-Source-Schrift, die über dieses Feature verfügt?} an. + +\section{Nutzungshinweise} +Grundsätzlich sei hier erst einmal auf die offizielle, ausführliche und maßgebende Dokumentation des Paketes in der Datei \verb|unicode-math| hingewiesen. Dieses Abschnitt konzentriert sich deshalb primär auf NEO-Tastatur-relevante Punkte. + +\subsection{Interpretation der griechischen Großbuchstaben} +Das Neo-Σ wird als der griechische Großbuchstabe \verb|\Sigma| und nicht als die \verb|\sum|-Summe interpretiert. Dieses Verhalten ist Unicode-Standard-konform, bringt jedoch ein paar Inkonsequenzen mit sich (mann kann etwa ∫ für ein Integral, muss aber \verb|\sum| für eine Summe schreiben). Hier besteht zwar die theoretische Möglichkeit, die Interpretation dieser Zeichen selbst umzudefinieren, wovon wir aber klar abraten. + +\subsection{Unterstützung der 6. NEO-Ebene} +Im Großen und Ganzen scheint das Paket sehr gut mit Neo zu harmonisieren; die ganzen Unicode-Mathematik-Symbole wie ℝ, ℂ, ⇋↓⇌←†→↑≪∩≫⊂∊⊃≤∪≥⊃∊⊂≠±× werden anstandslos gelesen und dargestellt. + +\subsection{Diaktritische Zeichen} +Probleme scheint es noch mit den Diakritisches Zeichen (é und Konsorten) zu geben; die musste ich ganz traditionell mit \verb|\acute{e}| eingeben. Auch die …-Auslassungspunkte scheint das Paket so noch nicht zu kennen. + +\subsection{Verhalten bei unbekannten Zeichen} +Wenn XeTeX im normalen Textmodus auf ein unbekanntes bzw. nicht in der Schrift vorhandenes Unicode-Zeichen trifft, kompiliert es trotzdem, schreibt einen Fehler in die Log-Datei und ersetzt es in der Ausgabe durch ein Fragezeichen. Im Mathematikmodus tut er dasſelbe, nur lässt er hier das unbekannte Zeichen einfach komplett weg: \verb|PREUẞEN $PREUẞEN$| kompiliert mit der Cambria-Schrift zu »PREU?EN PREUEN«. + +\subsection{Fehlende Zeichen selbst ergänzen} +Intern wurde das Abbilden der Unicode-Eingabe auf \LaTeX-Kommandos durch Befehle der Form +\verb|\UnicodeMathSymbol{"0039A}{\upKappa}{\mathalpha}{capital kappa, greek}| +realisiert. Somit kann man das Paket relativ leicht um neue Unicode-Zeichen erweitert werden. Der erste Argument ist der Unicode-Codepoint (in Heximalschreibweise), das zweite der auszuführende \LaTeX-Code, der dritte die Zeichenklasse und der vierte die Beschreibung. + +Die Zeichenklasse gibt dabei sozusagen den »Typ« des Zeichens im Mathematikmodus an. \TeX\ braucht diese Zusatzinformation, um beim Formelsatz die Abstände etc.\ korrekt berechnen zu können. Es gibt eigene Klassen für Klammern (\verb|\delimiter|), Relationen (\verb|\mathrel|), Grosses-Summenzeichen-ähnliche Operatoren (\verb|\mathop|), gewönliche Zeichen (\verb|\mathord|), Akzente (\verb|\mathaccent|) und weiß der Geier wofür sonst noch – D.\,E.~Knuth ist halt ein Perfektionist, genauere Informationen können seinem \TeX book entnommen werden. Man kann die Zeichenklasse auch weglassen, kriegt dann aber u.\,U.\ eine schlechtere Ausgabe. + +Auf diese Weise kann beispielsweise die fehlende Ellipse dem Mathematikmodus hinzugefügt werden: \verb|\UnicodeMathSymbol{"02026}{\ldots}{\mathpunct}{Horizontal ellipsis}| +Anschließend kann einfach \verb|$a_1, …, a_n$| geschrieben werden. + +\section*{Fazit: ¡\XeTeX\ rocks!} +Gerade im Mathematikmodus geht es viel schneller, mithilfe des NEO-Tastaturlayoutes einfach ∀ ε>0 ∃ δ>0 statt \verb|\forall \epsilon>0 \exists \delta>0| schreiben zu können – und es sieht auch noch viel übersichtlicher aus. \verb|\epsilon>0| ist tot, lang lebe ε>0! + +\subsection*{Links} +Alle Links führen auf Websiten in englischer Sprache. +\begin{itemize} +\item Die offizielle \XeTeX−Homepage: \url{http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&item_id=XeTeX} +\item Die Homepage von Will Robertson, dem Autor der \XeTeX-Pakete fontspec und unicode-math: \url{http://www.mecheng.adelaide.edu.au/~will/} (näheres im \LaTeX-Bereich) +\item Das SVN mit der akuelle Version des Paketes unicode-math (kann entweder mit dem Browser oder komfortabler über einen SVN-Client heruntergeladen werden): \url{http://scripts.sil.org/svn-public/xetex/TRUNK/texmf/source/xelatex/unicode-math/} +\end{itemize} + + +\end{document}
\ No newline at end of file |