wie in alten Reclamheftchen...

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:

Markdown is OFF

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: wie in alten Reclamheftchen...

von czil » Mi 6. Feb 2019, 14:56

Oder hast du da falsche doppelte Verneinung drin und derzeit wird die erste Zeile eingezogen, du willst das aber nicht. Dann solltest du stattdessen auf Absatzabstand umschalten und keinesfalls fälschlich nur den Absatzeinzug abschalten.
Danke für den Hinweis, das ist tatsächlich so. Finde das sieht einfach nicht gut aus, wenn bei jedem Absatz ein Einzug stattfindet, wenn der Text voll von Dialogen ist. Da kriegen meine Augen das Sausen.
Erste Zeile eines Kapitels ja, die restlichen Absätze mit Abstand.
So will ich es hinkriegen.

Danke auch für die Statusänderung, die Frage habe ich beantwortet, weitere kommen zwar wahrscheinlich, aber ich hoffe mal nicht.
:shock:

von Gast » Mi 6. Feb 2019, 07:42

czil hat geschrieben:Jetzt muss ich nur noch rausfinden, wie ich dem Skript abgewöhnen kann, dass es die erste Zeile eines Absatzes generell nicht einzieht
Heißt das, dass die erste Zeile eines Absatzes derzeit nicht eingezogen wird, du das aber gerne hättest? Dann ist der Einzug vermutlich irgendwo in der Dokumentpräambel explizit abgeschaltet. In der Voreinstellung ziehen nämlich alle Standardklassen und auch die KOMA-Script-Klassen ein (und das ist gut so). Möglicherweise hat sogar jemand genau das gemacht, was man nicht tun sollte.

Oder hast du da falsche doppelte Verneinung drin und derzeit wird die erste Zeile eingezogen, du willst das aber nicht. Dann solltest du stattdessen auf Absatzabstand umschalten und keinesfalls fälschlich nur den Absatzeinzug abschalten.

Ansonsten: Zu neuen Fragen bitte ein neues Thema öffnen. Ich gehe davon aus, dass die ursprüngliche Frage beantwortet ist und setze den Status entsprechend.

von czil » Di 5. Feb 2019, 22:20

Also, ich habe den Code sogar inzwischen in dem Skript »SPBuchsatz« untergebracht.
Falls das mal jemanden interessiert, so hab ich das gemacht.
Eine Datei angelegt, die man dann im Hauptdokument aufruft an der STelle:

Code: Alles auswählen

%  Name der ebenfalls optionalen, LOKALEN Präambel-Zusatz-Datei:
%  
\def \spOptionaleLokalePraeambelZusatzDatei {../tex/PZusatz.tex}
in diese Datei hab ich das von oben reinkopiert:

Code: Alles auswählen

%%%das habe ich hier eingefügt:++++++++++++++++++++++++
%%%%\begin{document}
\usepackage[ngerman]{babel}
\usepackage{tocbasic}

\makeatletter
\addtotoclist[Notes]{notes}
\newcommand*{\ext@notes}{notes}
\newcommand*{\listofnotesname}{Erkl{\"a}rungen und Erl{\"a}uterungen}
\newcommand*{\MakeNote}[2]{%
  \addtocontents{\ext@notes}{\string\DoNote{\thepage}\detokenize{{#1}{#2}}}%
}
\newcommand*{\DoNote}[3]{%
  \def\reserved@a{#1}\ifx\reserved@a\@LastNotePage\else
    \addvspace{\baselineskip}%
    Seite #1:\par\nobreak
    \let\@LastNotePage\reserved@a
  \fi
  \@hangfrom{\hspace*{2em}}\textbf{#2} -- #3\par
  \addvspace{.5\baselineskip}%
}
\newcommand*{\printNotes}{\listoftoc{notes}}
\BeforeStartingTOC[notes]{\let\@LastNotePage\@empty}
\makeatother


%%%''''''''''''''''''''''''''' bis hierher'''''''''''''
Im »Haupttext.tex« dann die Anmerkungen so eingefügt wie ich das in dem obigen Beispiel schon mal gemacht hab:

Code: Alles auswählen

…er sei arm dran\MakeNote{Arm}{ist, wer arm dran ist nicht, der, der keinen Arm hat} …
in den »Schlussseiten.tex« dann den letzten Befehl

Code: Alles auswählen

\printNotes
Dann kommen die Erläuterungen ans Ende des Buches.
(aber erst beim 2. Durchgang...)

Jetzt muss ich nur noch rausfinden, wie ich dem Skript abgewöhnen kann, dass es die erste Zeile eines Absatzes generell nicht einzieht und dann kommt die eigentliche Arbeit. :o)
(Umlaute ersetzen, unnötige Absätze und dann die ganzen Anmerkungen die ich momentan in dem Word-Dok drin hab als die makenote-Befehle umschreiben)
Danke noch mal für die Unterstützung.

von czil » Sa 26. Jan 2019, 22:29

Na, vielen Dank auch für den Tipp, ich werde mich bei dir und dem Erschaffer dieses Pakets bedanken!

von Gast » Sa 26. Jan 2019, 22:26

Bedank dich einfach beim Autor von tocbasic für das schöne Paket. :wink:

von czil » Sa 26. Jan 2019, 22:12

UFF.
Was soll ich sagen?
Du verlangst nach einem "Minimaldokument", und lieferst mir, noch bevor ich überhaupt in der Lage bin, mein Problem in überhaupt irgendwas zu bringen, die MAXIMALLÖSUNG!!!
Musste das jetzt erst mal soweit nachvollziehen, dass ich dein Beispiel ausgegeben bekam, doch siehe da: Das ist genau das, was ich gesucht hab!
FREUDE!!!
Vielen Dank.
Nach meinem Experiment sieht das dann mit Blindtext so aus:

Code: Alles auswählen

\documentclass{article}

\usepackage[ngerman]{babel}
\usepackage{tocbasic}

\makeatletter
\addtotoclist[Notes]{notes}
\newcommand*{\ext@notes}{notes}
\newcommand*{\listofnotesname}{Glossar}
\newcommand*{\MakeNote}[2]{%
  \addtocontents{\ext@notes}{\string\DoNote{\thepage}\detokenize{{#1}{#2}}}%
}
\newcommand*{\DoNote}[3]{%
  \def\reserved@a{#1}\ifx\reserved@a\@LastNotePage\else
    \addvspace{\baselineskip}%
    Seite #1:\par\nobreak
    \let\@LastNotePage\reserved@a
  \fi
  \@hangfrom{\hspace*{2em}}\textbf{#2} -- #3\par
  \addvspace{.5\baselineskip}%
}
\newcommand*{\printNotes}{\listoftoc{notes}}
\BeforeStartingTOC[notes]{\let\@LastNotePage\@empty}
\makeatother

\begin{document}
\section{Kapitel I}

Goethe\MakeNote{Goethe}{Goethe ist ein alter Stinkstiefel}
 hörte leise Schritte hinter sich. Das bedeutete nichts Gutes. Wer würde ihm schon folgen, spät in der Nacht und dazu noch in dieser engen Gasse mitten im übel beleumundeten Hafenviertel? Gerade jetzt, wo er das Ding seines Lebens gedreht hatte und mit der Beute verschwinden wollte! Hatte einer seiner zahllosen Kollegen dieselbe Idee gehabt, ihn beobachtet und abgewartet, um ihn nun um die Früchte seiner Arbeit zu erleichtern? Oder gehörten die Schritte hinter ihm zu einem der unzähligen Gesetzeshüter dieser Stadt, und die stählerne Acht um seine Handgelenke würde gleich zuschnappen? Er konnte die Aufforderung stehen zu bleiben schon hören. Gehetzt sah er sich um. Plötzlich erblickte er den schmalen Durchgang. Blitzartig\MakeNote{Blitz}{Leuchterscheinung, die in dieserm Zusammenhang nicht ganz passt} drehte er sich nach rechts und verschwand zwischen den beiden Gebäuden. Beinahe wäre er dabei über den umgestürzten Mülleimer gefallen, der mitten im Weg lag. Er versuchte, sich in der Dunkelheit seinen Weg zu ertasten und erstarrte: Anscheinend gab es keinen anderen Ausweg aus diesem kleinen Hof als den Durchgang, durch den er gekommen war. Die Schritte wurden lauter und lauter, er sah eine dunkle Gestalt um die Ecke\MakeNote{Ecke, um diese krumme…}{Auch eine Ecke ist manchmal spannend, vor allem wenn sie der richtge Verein bekommt und in ein Tor verwandelt das dann zum Sieg der Mannschaft führt, welche das schon lange verdient hat.} biegen. Fieberhaft irrten seine Augen durch die nächtliche Dunkelheit und suchten einen Ausweg. War jetzt wirklich alles vorbei, waren alle Mühe und alle Vorbereitungen umsonst? Er presste sich ganz eng an die Wand hinter ihm und hoffte, der Verfolger würde ihn übersehen, als plötzlich neben ihm mit kaum wahrnehmbarem Quietschen eine Tür im nächtlichen Wind hin und her schwang. Könnte dieses der flehentlich herbeigesehnte Ausweg aus seinem Dilemma sein? Langsam bewegte er sich auf die offene Tür zu, immer dicht an die Mauer gepresst. Würde diese Tür seine Rettung werden?
\newpage
\section{Kapitel II}
Er hörte leise Schritte hinter sich. Das bedeutete nichts Gutes. Wer würde ihm schon folgen, spät in der Nacht und dazu noch in dieser engen Gasse mitten im übel beleumundeten Hafenviertel? Gerade jetzt, wo Goethe\MakeNote{Goethe}{Goethe hatte hier ziemliches
  Magendrücken, deshalb ist sein Faust so grimmig zum Getchen} das Ding seines Lebens gedreht hatte und mit der Beute verschwinden wollte! Hatte einer seiner zahllosen Kollegen dieselbe Idee gehabt, ihn beobachtet und abgewartet, um ihn nun um die Früchte seiner Arbeit zu erleichtern? Oder gehörten die Schritte hinter ihm zu einem der unzähligen Gesetzeshüter dieser Stadt, und die stählerne Acht um seine Handgelenke würde gleich zuschnappen? Er konnte die Aufforderung stehen zu bleiben schon hören. Gehetzt sah er sich um. Plötzlich erblickte er den schmalen Durchgang. Blitzartig drehte er sich nach rechts und verschwand zwischen den beiden Gebäuden. Beinahe wäre er dabei über den umgestürzten Mülleimer gefallen, der mitten im Weg lag. Er versuchte, sich in der Dunkelheit seinen Weg zu ertasten und erstarrte: Anscheinend gab es keinen anderen Ausweg aus diesem kleinen Hof als den Durchgang, durch den er gekommen war. Die Schritte wurden lauter und lauter, er sah eine dunkle Gestalt um die Ecke biegen. Fieberhaft irrten seine Augen durch die nächtliche Dunkelheit und suchten einen Ausweg. War jetzt wirklich alles vorbei, waren alle Mühe und alle Vorbereitungen umsonst? Er presste sich ganz eng an die Wand hinter ihm und hoffte, der Verfolger würde ihn übersehen, als plötzlich neben ihm mit kaum wahrnehmbarem Quietschen eine Tür im nächtlichen Wind hin und her schwang. Könnte dieses der flehentlich herbeigesehnte Ausweg aus seinem Dilemma sein? Langsam bewegte er sich auf die offene Tür zu, immer dicht an die Mauer gepresst. Würde diese Tür seine Rettung werden? Doch, da stand plötzlich Gretchen\MakeNote{Gretchen}{Gretchen ist eine starke
  Frau, dass Goethe sie hier weinen lässt  ist keinem so recht verständlich\dots} vor ihm

\newpage


\printNotes
\end{document}
Ich hab zwar noch nicht alles kapiert, aber ich bin, glaube ich, in der Lage, das in mein Buch mit einzubauen.
Vielen herzlichen Dank!
PS: Wenn du mir einen Namen gibst, kommst du in die Dankeswidmung mit rein!

von Gast » Fr 25. Jan 2019, 09:21

Das Problem ist, dass bei obiger Lösung \thepage nicht expandiert in die Index-Datei geschrieben wird. Daher funktioniert das nicht. Jetzt könnte man natürlich auf die Idee kommen, das \thepage im Argument von \index erst zu expandieren, bevor man es an \index übergibt. Das wird aber wegen der asynchronen Ausgabe nicht funktionieren. Stattdessen müsste man entweder \@wrindex so umdefinieren, dass \theindex nicht mehr (nur) als letztes Argument von \indexentry geschrieben wird, sondern mit dem gewünschten Präfix "Seite" und gefolgt von "@" dem ersten Argument vorangestellt wird.

Man könnte auch auf die Idee kommen, definiert sich einen Makeindex-Stil (vgl. \jobname.ist im Beispiel), der aus dem normalen

Code: Alles auswählen

\indexentry{Gretchen weinte -- Goethe hatte hier ziemliches   Magendr\IeC {\"u}cken, deshalb ist sein Faust so grimmig zum Getchen}{1}
wie man es nach

Code: Alles auswählen

\index{Seite~\thepage!Gretchen weinte -- Goethe hatte hier ziemliches
  Magendrücken, deshalb ist sein Faust so grimmig zum Getchen|ignorepages}
im Text in der idx-Datei erhalten würde, dann etwas wie:

Code: Alles auswählen

\myindexitem{Gretchen weinte -- Goethe hatte hier ziemliches   Magendr\IeC {\"u}cken, deshalb ist sein Faust so grimmig zum Getchen}{1}
in der ind-Datei erzeugt. Dann kann man \myindexitem leicht so definieren, dass es zu etwas wie

Code: Alles auswählen

\item Seite 1
\subitem Gretchen weinte -- Goethe hatte hier ziemliches   Magendr\IeC {\"u}cken, deshalb ist sein Faust so grimmig zum Getchen
expandiert.

Allerdings ergibt sich hier ein größeres Problem: Makeindex sortiert nicht nach Seitenzahlen, sondern nach Eintragstext. Deshalb würde man mit diesem Ansatz nicht das gewünschte Ergebnis erhalten.

Da das ganze IMHO ohnehin nicht sortiert werden muss, sondern die Einträge einfach in der Reihenfolge ausgegeben werden können, wie sie gespeichert werden, dürfte der Weg über MakeIndex (und damit über \index) aber eher nicht erforderlich sein. Stattdessen würde ich eher eine neue Hilfsdatei schreiben. Das könnte man vermutlich recht einfach gestalten. Teilweise kann dabei vermutlich sogar tocbasic behilflich sein. Es geht aber auch ohne Zusatzpaket. Leider fehlt noch immer ein Minimalbeispiel und ich bin langsam aber sicher zu faul, alles selbst auf gut Glück einzutippen. Daher auch das nur grob skizziert und ohne Verwendung der tocbasic-Möglichkeit das über echte Verzeichniseinträge und einen eigenen Verzeichnisstil zu realisieren:

Code: Alles auswählen

\documentclass{article}

\usepackage[ngerman]{babel}
\usepackage{tocbasic}

\makeatletter
\addtotoclist[Notes]{notes}
\newcommand*{\ext@notes}{notes}
\newcommand*{\listofnotesname}{Glossar}
\newcommand*{\MakeNote}[2]{%
  \addtocontents{\ext@notes}{\string\DoNote{\thepage}\detokenize{{#1}{#2}}}%
}
\newcommand*{\DoNote}[3]{%
  \def\reserved@a{#1}\ifx\reserved@a\@LastNotePage\else
    \addvspace{\baselineskip}%
    Seite #1:\par\nobreak
    \let\@LastNotePage\reserved@a
  \fi
  \@hangfrom{\hspace*{2em}}\textbf{#2} -- #3\par
  \addvspace{.5\baselineskip}%
}
\newcommand*{\printNotes}{\listoftoc{notes}}
\BeforeStartingTOC[notes]{\let\@LastNotePage\@empty}
\makeatother

\begin{document}
\section{Test}
Goethe\MakeNote{Gretchen weinte}{Goethe hatte hier ziemliches
  Magendrücken, deshalb ist sein Faust so grimmig zum Getchen}

\newpage
Gretchen\MakeNote{Gretchen weinte}{Gretchen ist eine starke
  Frau, dass Goethe sie hier weinen lässt \dots}

\printNotes
\end{document}
Der Umweg über \addtocontents ist mehr oder weniger zwingend, wenn es möglich sein soll, das Glossar nicht auf einer neuen Seite zu beginnen bzw. noch nach dem Glossar Eintrage erstellt werden können sollen.

Kleiner Nebeneffekt des Ganzen: Theoretisch kann man die Hilfsdatei (Endung notes) natürlich auch in einem eigenen Dokument laden, wie man das von Lektüreschlüsseln kennt.

von czil » Do 24. Jan 2019, 23:42

beinahe.
Also die Darstellung habe ich mit deinem Beispiel schon mal so hingebracht, dass mir die Erklärungen angezeigt werden.
Aber, ich bekomme als Überschrift immer die Seite 8. und die Reihenfolge ist leider auch nicht so, wie ich das in den Text eingebaut hab.
Ich glaube, ich muss mir das Beispiel noch mal studieren, irgendwas mache ich da noch verkehrt.
Ich studiere das morgen noch mal intensiver, dann lege ich die Anleitung daneben.
Danke für den Tipp jedenfalls.

von czil » Do 24. Jan 2019, 13:07

Dort stellt sie sich allerdings etwas anders dar und es fragt sich dann schon, ob es den Eintrag "Würmtalhof" für mehrere Seiten geben kann. Dann ist obiges nicht wirklich eine Lösung, sondern man müsste deutlich mehr Aufwand treiben.
Hallo und erst mal Danke für deine Antwort.
Es kann sein, dass sich das in dem Forum hier anders darstellt, weil hier die Zeilenumbrüche fehlen und der Begriff selbst nicht Fett.

Sonst ist die Fragestellung schon die gleiche.

Zuerst die Seitenangabe und dann die einzelnen Punkte, die auch nur jeweils auf dieser Seite und genau einmal vorkommen.
(Kenne das z.B. aus den Metamorphosen von Ovid)
Daher werde ich dein Beispiel in jedem Fall testen.

Prinzipiell könnte ich das Ergebnis, das ich in Word mit einem Makro und Endnoten gemacht habe ja als starren Text übernehmen. Das sieht genau so aus, wie ich es haben will, aber - und das ist die Krux, wenn der Text sich dann in LaTeX nicht mehr auf die Seiten bezieht, stimmt ja alles nicht mehr, wenn ich den Satz überarbeite.
Dann hab ich einen schönen Satz aber falsche Seitenzahlen. (es sind viele!)

Hatte im Paket Glossaries gesucht, aber diese Option das so zu machen ist mir hier nicht untergekommen. Oder ich war einfach zu blöd dazu.
Da es ja für die ganzen TeX-Dinge unzählige Pakete gibt, hatte ich den Rat befolgt, das auf Komascript zu versuchen. Da ich dort nach einem Paket gefragt hatte, war mir das auch nicht bewußt, dass das ein X-Post ist. Zudem hatte ich nicht damit gerechnet, dass mir hier noch jemand antwortet.
Umso mehr freue ich mich darüber, dass du es dennoch getan hast.
Melde mich wieder, wenn das so klappt.[/i]

von Gast » Do 24. Jan 2019, 09:04

PS: Auf komascript.de gibt es offenbar die gleiche Frage. Dort stellt sie sich allerdings etwas anders dar und es fragt sich dann schon, ob es den Eintrag "Würmtalhof" für mehrere Seiten geben kann. Dann ist obiges nicht wirklich eine Lösung, sondern man müsste deutlich mehr Aufwand treiben.

PS2: Nächstes Mal bitte direkt einen Link setzen und bei Änderungen in der Fragestellung diese auch nachführen.

Nach oben