Sprachenabhängige Befehle

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Sprachenabhängige Befehle

von slowfox » Mi 15. Sep 2010, 11:31

Danke Markus! An KOMA-Bordmittel habe ich garnicht gedacht, habe mich irgendwie nur mit Babel diesbezüglich beschäftigt.

Ciao, Marco

von KOMA » Mi 15. Sep 2010, 11:10

Die zweite Lösung kann ich nicht empfehlen, das dabei das spätere Hinzufügen von weiteren Sprachen unnötig kompliziert wird. Ich würde allerdings eine dritte Lösung empfehlen, die auch mit anderen Sprachpaketen als babel (beispielsweise mit dem ollen ngerman-Paket) funktioniert:
\documentclass{scrartcl}

%\usepackage[utf8]{inputenc}% brauchen wir in dem Fall gar nicht.
\usepackage[T1]{fontenc}

\usepackage[ngerman,english]{babel}
\newcaptionname{english}{\dissname}{PhD-thesis}%
\newcaptionname{ngerman}{\dissname}{Dissertation}%
\begin{document}
\languagename: \dissname, \selectlanguage{ngerman}\languagename: \dissname
\end{document}
Wenn man noch ein \AtBeginDocument im die \newcaptionname-Anweisungen baut, funktioniert das auch noch unabhängig davon, ob das Sprachpaket vorher oder nachher geladen wird.

Näheres zu \newcaptionname ist der KOMA-Script-Anleitung zu entnehmen.

Sprachenabhängige Befehle

von slowfox » Mi 15. Sep 2010, 10:49

Ich schreibe einen zweisprachigen Text. Verschiedene Begriffe möchte ich durch Befehle verfügbar machen. Ich möchte in beiden Sprachen den gleichen Befehl verwenden, die Ausgabe soll aber an die jeweilige Sprache angepasst sein. Das Paket babel bietet alles, was ich dazu benötige. Nun habe ich auf diesem Wege zwei Lösungen entwickelt und hätte gerne eine Einschätzung, welche davon ich eher bei mir implementieren sollte. (Anmerkung: diese eigenen Befehle sollen auch tw. in der bib-Datei verwendet werden.)
\documentclass[english, ngerman]{scrartcl}

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

\usepackage{babel}

\newcommand{\diss}{}
  \addto\extrasngerman{\renewcommand{\diss}{Dissertation}}
  \addto\extrasenglish{\renewcommand{\diss}{PhD-thesis}}

\newcommand{\norm}{%
  \iflanguage{ngerman}{\def\normname{Norm}}{}%
  \iflanguage{english}{\def\normname{Standard}}{}%
  \normname}

\begin{document}

{\selectlanguage{english}\diss} / {\selectlanguage{ngerman}\diss}

{\selectlanguage{english}\norm} / {\selectlanguage{ngerman}\norm}

\end{document}

Nach oben