Makros werden unregelmäßig ausgeführt

Redefinition von Makros, Definition eigener Befehle sowie neuer Umgebungen


Kiwi
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Di 1. Dez 2015, 14:46

Makros werden unregelmäßig ausgeführt

Beitrag von Kiwi »

Hallo erstmal,

zurzeit brüte ich über meiner Bachelor Thesis, die ich (wer hätts gedacht) in LaTex schreibe. Ursprünglich komme ich von der Word-Fraktion, aber da dieses "Textprogramm der gewöhnlichen Leute" (fast hätte ich Scheissteil geschrieben, nochmal glück gehabt...) keine Unterstützung von Vektor-PDFs bietet, habe ich umgeschwenkt.

Mittlerweile (bin hier seit einer Weile undercover unterwegs) finde ich Latex sogar ganz angenehm, man muss sich nur mit dem WYSIWYAF anfreunden.

Bedanken möchte ich mich schonmal vorab bei der Community, da ich mir aus diesem Forum schon viele hilfreiche Tipps gezogen habe.

Nun aber zu meinem Problem:

Ich möchte zwei Minipages nebeneinander platzieren, in der linken nur Text, in der Rechten ein Bild mit Caption und Label. Das ganze verpacke ich in einer figure.

Da ich aber sechs Stück hintereinander haben möchte, habe ich schlauer Fuchs mir ein Makro geschrieben. Dieses wird aber mal ausgeführt, mal nicht.
Das zugehörige MWE lautet:

\documentclass[11pt, 
a4paper,
oneside,
parskip
]
{scrreprt}																%modifizierte Report-Klasse
	
\usepackage[english, ngerman]{babel} 									%ermoeglicht Verwendung deutscher Sprache
\usepackage[utf8]{luainputenc}											%ermoeglicht Verwendung von Umlauten
\usepackage[demo]{graphicx} 											%zum Einfuegen von Grafiken
\usepackage[T1]{fontenc} 												%Eingabe von Umlauten
\usepackage[left=4cm, right=2cm, top=2.5cm, bottom=2.5cm]{geometry}		%Blattformatierung (Seitenraender)					

\newcommand{\textundgrafik}[9]	{
								\begin{figure}[!htb]
								\fbox{
									\begin{minipage}[t]{0.4\linewidth}
										\vspace{0pt}
										#1
									\end{minipage}
									\hfill
									\begin{minipage}[t]{0.4\linewidth}
										\vspace{0pt}
										\begin{center}
										\includegraphics[height=4.5cm]{Abbildungen/#2}
										\end{center}										
										\caption{#3}
										\label{#4}
									\end{minipage}
								}
								\end{figure}
								}			

\begin{document}
			
\textundgrafik	{\textbf{Kipptore}\\
				
				\emph{sind Tore mit einem Fluegel, der bei der Betaetigung eine Kippbewegung ausfaehrt und vollstaendig geffnet in der oberen, waagerechten Endstellung verbleibt.}}
				{Kipptor.png}
				{Kipptor}
				{kipptor}

\vspace{1mm}
				
\textundgrafik	{\textbf{Schiebetore}\\
				
				\emph{sind Tore mit einem oder mehreren Flgeln die horizontal bewegt werden.}}
				{Schiebetor.png}
				{Schiebetor}
				{schiebetor}

\vspace{1cm}

Alle diese Abschnittstrennungen lassen sich wahlweise natuerlich auch um 90 Grad gedreht ausfuehren.\\
	
\end{document}
Hier habe ich das Makro extra nur zweimal ausgeführt.
Teilweise (unregelmäßig) ignoriert das Makro die zweite Minipage und gibt mir nur den Makroteil aus.

Über eine kleine Hilfestellung dazu würde ich mich sehr freuen.


Gruß
Kiwi

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

Beitrag von u_fischer »

Wenn du einen Befehl mit 9 Argumenten definierst (was ich für albern halte), dann musst du auch immer 9 Argumente angeben.

Kiwi
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Di 1. Dez 2015, 14:46

Beitrag von Kiwi »

Hallo Ulrike,

na super, Volltreffer bei den Anfängerfehlern (habs bei mir korrigiert und siehe da...).

Vielen Dank für Deine vor allem Rasche Hilfe, Daumen hoch dafür!

Rein interessehalber: Warum führt LaTex den ersten Makroaufruf dann trotzdem problemlos aus und versaut den zweiten?


Gruß
Julien

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

Beitrag von u_fischer »

Weil der erste den zweiten als Argumente 5-9 einsammelt.

Kiwi
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Di 1. Dez 2015, 14:46

Beitrag von Kiwi »

Gut zu wissen, wenn ich das nächste mal so einen Mist baue, weiss ich Bescheid.

Danke und Gruß
Kiwi

Benutzeravatar
iTob
Forum-Meister
Forum-Meister
Beiträge: 1221
Registriert: Mo 19. Apr 2010, 22:19
Kontaktdaten:

Beitrag von iTob »

Da du eh schon mit KOMA-Script arbeitest, könntest du auch mal einen Blick auf {captionbeside} werfen. Und das ggf. in deinen neuen Befehl verpacken.
Ich biete Hilfe, Beratung und Schulung für alle Fragen rund um TeX, Buchgestaltung und Textsatz, sowie Grafik- und Kommunikationsdesign.
Mehr Infos und Kontakt unter tobiw.de.

Hier schreibe ich über TeX: Mein Blog „TeX-Beispiel des Monats“ (Deutsch) und TeX.tips (Englisch).

Antworten