goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Space und ToDoNotes: \reserved@a has an extra }

 

MoonKid
Forum-Meister
Forum-Meister

Beiträge: 660
Anmeldedatum: 30.06.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.04.2017, 09:57     Titel: Space und ToDoNotes: \reserved@a has an extra }
  Antworten mit Zitat      
Ich nutze Paket auf CTANsetspace Zeilenabstände entsprechend (bzw. annährend) meiner formalen Vorgaben umzusetzen.
Für Notizen nutze ich Paket auf CTANtodonotes

Im Minimalbeispiel ist global ein Zeilenabstand von 1.5 gesetzt. In den Notes soll der aber nur 1 sein.

Bei meiner Lösung bekomme ich aber diesen Fehler und verstehe ihn auch mal wieder nicht.

Code • Öffne in Overleaf
! Argument of \reserved@a has an extra }.
<inserted text>
                \par
l.25 ...ger Kommentar mit einfachem Zeilenabstand}
 


Das Minimalbeispiel.

Code • Öffne in Overleaf
\documentclass{scrartcl}
\usepackage{fontspec}

%% Sprache
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

%% Zeilenabstand
\usepackage{setspace}
\setstretch{1,5} % (typografisch inkorrekt) Word-ig
\recalctypearea

% Notizen\Kommentare
\usepackage[shadow]{todonotes}
\newcommand{\osenf}[1] {%
    \todo[size=\scriptsize]
        { %
            \begin{spacing}{1} % Zeile bitte auskommentieren
                \sffamily #1
            \end{spacing}  % Zeile bitte auskommentieren
        } %
}

\usepackage{blindtext}

\begin{document}
\blindtext[1] \osenf{Mehrzeiliger Kommentar mit einfachem Zeilenabstand}
\end{document}
 
[/p]
_________________

XeLaTeX, TeX Live, vim-latexsuite aus Siduction (Debian GNU/Linux unstable)
Private Nachricht senden Benutzer-Profile anzeigen

Johannes_B
Moderator
Moderator


Beiträge: 4734
Anmeldedatum: 01.11.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.04.2017, 10:05     Titel:
  Antworten mit Zitat      
Code • Öffne in Overleaf
\documentclass{scrartcl}


\usepackage{setspace}
\setstretch{1,5} % (typografisch inkorrekt) Word-ig
\recalctypearea

% Notizen\Kommentare
\usepackage[shadow]{todonotes}
\newcommand{\osenf}[1] {%
   \todo[size=\small\setstretch{1}]
   {%
         \sffamily #1
   } %
}

\usepackage{blindtext}

\begin{document}
\blindtext[1] \osenf{Mehrzeiliger Kommentar mit einfachem Zeilenabstand}
\end{document}

 

_________________

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.
Private Nachricht senden Benutzer-Profile anzeigen

MoonKid
Forum-Meister
Forum-Meister

Beiträge: 660
Anmeldedatum: 30.06.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.04.2017, 10:49     Titel:
  Antworten mit Zitat      
Johannes_B hat Folgendes geschrieben:
Code • Öffne in Overleaf

   \todo[size=\small\setstretch{1}]
 

Das funktioniert. Danke sehr.

Aber es bleibt die Frage, was der Fehler überhaupt bedeutet. Was hab ich falsch gemacht?
_________________

XeLaTeX, TeX Live, vim-latexsuite aus Siduction (Debian GNU/Linux unstable)
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.04.2017, 11:11     Titel:
  Antworten mit Zitat      
Der Fehler tritt typischerweise bei Verwendung von zerbrechlichen Befehlen in beweglichen Argumenten auf.

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.04.2017, 11:16     Titel:
  Antworten mit Zitat      
MoonKid hat Folgendes geschrieben:
Was hab ich falsch gemacht?

Du hast »1.8.6 Altering the line spacing of todonotes« in der Dokumentationtodonotes-Anleitung nicht beachtet.

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.04.2017, 11:31     Titel:
  Antworten mit Zitat      
Das Problem im konkreten Fall ist, dass \todo ohne caption den Inhalt als Eintrag selbst ins tdo-Verzeichnis schreiben will. Dabei zerbricht dann \begin{spacing}. Ein ähnliches Problem ist in der Dokumentationtodonotes-Anleitung in Abschnitt 1.8.7 am Beispiel einer minipage erklärt. Eine weitere Lösungsmöglichkeit wäre also beispielsweise caption immer explizit ohne spacing-Umgebung zu setzen:
Code • Öffne in Overleaf
\newcommand{\osenf}[1] {%
    \todo[size=\scriptsize,caption={#1}]
        { %
            \begin{spacing}{1} % Zeile bitte auskommentieren
                \sffamily #1
            \end{spacing}  % Zeile bitte auskommentieren
        } %
}
Letztlich ist das auch das, was in Abschnitt 1.8.6 der Anleitung gezeigt wird. Dort ist der neue Befehl lediglich noch um die Möglichkeit erweitert, weitere optionale Argumente für \todo zu setzen.

MoonKid
Forum-Meister
Forum-Meister

Beiträge: 660
Anmeldedatum: 30.06.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.04.2017, 14:24     Titel:
  Antworten mit Zitat      
Ich verstehe. (Bin selber überrascht! Very Happy )

Aber an sowas hätte ich nie gedacht. So weit um die Ecke oder mit dem Kopf in der Maschine denk ich als User einfach nie.

Vielen Dank für die Erläuterung!
_________________

XeLaTeX, TeX Live, vim-latexsuite aus Siduction (Debian GNU/Linux unstable)
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de goPCB.de


  Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2017 goLaTeX.de