Schalter für Schriftartenwechsel

Redefinition von Makros, Definition eigener Befehle sowie neuer Umgebungen


nullkommanix
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 55
Registriert: Mi 3. Sep 2014, 20:01

Schalter für Schriftartenwechsel

Beitrag von nullkommanix »

Mahlzeit,

ich habe einen Schalter gebastelt, der auf uarial schalten soll:
% Schalter für Arial
\newif\ifarial
% Wenn es unbedingt in Arial sein soll, dann auskommentieren
%\arialtrue
\ifarial
\RequirePackage[scaled]{uarial}
\renewcommand*\familydefault{\sfdefault}
\fi
Ich möchte das die Anweisung im meinem package steht und der Schalter \arialtrue aus einer config Datei bedient wird. Meine Vermutung ist, dass das nicht funzt. Wer widerlegt meine Hypothese?


Guten Appentit

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Sollen wir jetzt ein dummy Paket und eine config vorbereiten, eine Lösung erarbeiten, erklären, nur um dann zu lesen: »Ach, nee, so hab ich das nicht gemeint, der Aufbau ist ganz anders. Sorry.«

Minimalbeispiel
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

nullkommanix
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 55
Registriert: Mi 3. Sep 2014, 20:01

Beitrag von nullkommanix »

\documentclass[oneside,fontsize=12pt]{scrreprt}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},germandbls={ß}}
\usepackage{mein-package}
\input{config/main.tex}

\begin{document}
\chapter{test}
\blindtext
\end{document}
mein-package.sty
\ProvidesPackage{mein-package}[2014/10/04 v1.0 Paket fuer Vorlage]
\ProcessOptions\relax

\RequirePackage[T1]{fontenc}
\RequirePackage{lmodern}
\RequirePackage[ngerman]{babel}
\RequirePackage{blindtext}

% Schalter für Arial
\newif\ifarial
\ifarial
\RequirePackage[scaled]{uarial}
\renewcommand*\familydefault{\sfdefault}
\fi
main.tex
% Wenn es unbedingt in Arial sein soll, dann auskommentieren
%\arialtrue
Ich dachte an eine generelle Antwort auf eine generelle Frage.

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Minimale Vorlage vs. maximale Probleme

Du musst das Initialisieren, lesen, auswerten trennen. Das geht auf verschiedene Art und Weise. Und genau bei der Reihenfolge des Ladens kannst du bei LaTeX schnell Probleme bekommen. Leider ist die Ladereihenfolge wichtig, hyperref sollte beispielsweise (fast immer) zuletzt geladen werden.
\begin{filecontents}{\jobname.cfg}
%\booltrue{arial}
%\arialtrue

\booltrue{coloredsections}
\end{filecontents}
\begin{filecontents}{\jobname.sty}

\ProvidesPackage{\jobname.sty}[2014/10/04 v1.0 Paket fuer Vorlage]
\ProcessOptions\relax

\RequirePackage{etoolbox}
\RequirePackage[T1]{fontenc}
\RequirePackage{lmodern}
\RequirePackage[ngerman]{babel}
\RequirePackage{babel}%<--------
\RequirePackage{blindtext}
\PassOptionsToPackage{xcolor}{x11names}
\RequirePackage{xcolor}
%\RequirePackage[x11names]{xcolor}
\colorlet{dispostioncolor}{blue}

\newbool{arial}
%und andere bools
\newbool{coloredsections}
\AtEndPreamble{\ifbool{coloredsections}{
	\addtokomafont{disposition}{\color{dispostioncolor}}}{}
}

\InputIfFileExists{\jobname.cfg}{\typeout{Processing
config}}{\typeout{Seems not config is needed, using defaults}}



\ifbool{arial}{
\RequirePackage{tgheros}
\renewcommand*\familydefault{\sfdefault}
}{\typeout{gute entscheidung}}


\endinput
\end{filecontents}
\documentclass[oneside,fontsize=12pt,
english%HÄH? ich hab doch aber english eingestellt?
]{scrreprt}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},germandbls={ß}}
\usepackage{\jobname}
%\usepackage[table]{xcolor}

\begin{document}
\tableofcontents
\blinddocument
\end{document} 
Wird hier beispielsweise keine Farbe gebraucht, warum dann das Paket überhaupt laden? Oder braucht der Nutzer vielleicht sogar farbige Tabellen? Dann lädt er xcolor mit der Option table und Bämm, optionclash.

Manche Optionen könnten sich auch logisch ausschließen, oder andere Optionen setzen.

Sei also auf der Hut.

Oder mit anderen Worten, hat der Nutzer die Wahl zwischen Apfel und Birne, dann fang auch ab wenn der Kaffee will.

»Sorry, coffee not available, for valent options type h«
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

nullkommanix
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 55
Registriert: Mi 3. Sep 2014, 20:01

Beitrag von nullkommanix »

Ich spiele zur Zeit nur herum. Es geht nicht darum irgendetwas zu verstecken oder so. Meine Überlegung war rein für das Verständnis. Ich wollte sehen, ob man mit Hilfe von Schaltern, in einer anderen Datei, bestimmte Optionen an- und ausschalten kann. Offenbar geht das, danke.

Antworten