Hey Leute, ich versuche 3 Variablen beliebig oft zu konkatinieren und zwischendrin zu ändern. Also im Grunde var concat = "" var system = "System 1" var notiz = "Eine Notiz" concat = concat + " " + system + ":" + notiz system = "System 2" notiz = "Notiz 2" concat = concat + " " + system + ":" + notiz usw. sodass am Ende eine Variable raus kommt, die beliebig viele Systeme mit vielen Noitzen auflistet. Ich habe mir dafür nun folgendes zusammengegoogelt: \documentclass[12pt]{article} \begin{document} % 0. Definiere TextString \newcommand{\textstring}{} % 1. Definiere Variablen \edef\system{System 1: } \edef\notiz{Online; } % 2. Konkatiniere den String \expandafter\def\expandafter\textstring\expandafter{\textstring { }\system \notiz} % 3. Ausgabe zu Testzwecken \textstring ~ \newline % Wiederhole Schritt 1-3 beliebig oft \edef\system{System 2: } \edef\notiz{Offline; } \expandafter\def\expandafter\textstring\expandafter{\textstring { }\system \notiz} \textstring \end{document} Wie nun zu sehen klappt das aber nicht wie gewünscht. System und Notiz sollen beliebig oft überschrieben werden können und anschließend jedes mal das Konkatinieren durchgeführt werden. Was mache ich bloß falsch? Ich habe gefült überall schon \expandafter dran gehangen aber es klappt nichts. Grüße: Jonas gefragt 10 Jan '20, 14:40 JonnyKnipst stefan ♦♦ |
Da Übrigens: Bei Verwendung von \documentclass[12pt]{article} \begin{document} % 0. Definiere TextString \newcommand{\textstring}{} % 1. Definiere Variablen \edef\system{System 1: } \edef\notiz{Online; } % 2. Konkatiniere den String \edef\textstring{\textstring { }\system \notiz} % 3. Ausgabe zu Testzwecken \textstring % Wiederhole Schritt 1-3 beliebig oft \edef\system{System 2: } \edef\notiz{Offline; } \edef\textstring{\textstring { }\system \notiz} \textstring \end{document} Allerdings geht das natürlich in die Hose, wenn Und dann wären da noch die Sequenzen in LaTeX3, die sich für so etwas ebenfalls anbieten. beantwortet 10 Jan '20, 15:33 saputello stefan ♦♦
Ja ich glaube das wird nun mein nächstes Problem. Ich will am Ende die Systeme in einer \begin{decription} Umgebung auflisten als Items mit Text. Aber das scheint nicht zu funktionieren. Ich habe eindeutig zu wenig Ahnung von LaTeX und der Expandierbarkeit.
(10 Jan '20, 16:36)
JonnyKnipst
1
@JonnyKnipst Ich habe deine „Antwort” in einen Kommentar umgewandelt. Anders als in Diksussionsforen sind Antworten hier immer als Antwort auf die Frage zu verstehen. Kommentare können dafür als Kommentar zu einer Frage oder Antwort angegeben werden. Wichtige Zusatzinfos zur Frage sollten hingegen in die Frage eingearbeitet werden. Erweiterungen der Frage sollten man besser als Folgefrage stellen. Wobei es meist eine gute Idee ist, XY-Probleme zu vermeiden.
(10 Jan '20, 16:45)
saputello
|