Frage zur Anpassung von book.cls

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:

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: Frage zur Anpassung von book.cls

von Besserwisser » So 30. Jun 2013, 13:03

Das Problem ist weniger, dass titletoc oder tocloft bei KOMA-Script-Klassen versagen könnten. Das würde man ja ggf. auch sofort bemerken.

Das Problem ist viel mehr, dass sie Dinge von KOMA-Script kaputt machen können, ohne dass sie gleich auffallen. Das sind teilweise ganz einfache Dinge wie die Funktion von \setkomafont/\addtokomafont für Elemente der Verzeichnisse, die auch mit tocstyle teilweise nicht mehr funktionieren und mit den Paketen eben anders gelöst werden. Das sind aber teilweise auch Dinge wie das optionale Setzen von Inhaltsverzeichniseinträgen für andere Verzeichnisse und all die anderen Features, die KOMA-Script über tocbasic (Anleitung dazu ist in der KOMA-Script-Anleitung zu finden) regelt. Keine Ahnung, was noch alles kaputt gehen kann. Und dieses "keine Ahnung" ist eigentlich das Hauptproblem bei der Geschichte.

Nachtrag

von localghost » So 30. Jun 2013, 09:47

Johannes_B hat geschrieben:[…] Der Vorteil des Ladens der Standardklasse mit Änderungen mittels renewcommand wäre unter anderem auch, dass bloß Änderungen "sichtbar" (und damit nachvollziehbar) gemacht werden.
Ich habe das etwas missverständlich geschrieben, weil ich (mal wieder) nicht richtig gelesen habe. Bei den Standardklassen kann man natürlich Pakete wie titletoc oder tocloft nehmen. Deren Handhabung ist ja recht einfach. Bei Klassen aus KOMA-Script könnten die allerdings versagen, weil dort viel Dinge etwas anders umgesetzt sind.

von Johannes_B » So 30. Jun 2013, 01:03

Danke Thorsten, an tocstyle hatte ich gar nicht gedacht.

Der Vorteil des Ladens der Standardklasse mit Änderungen mittels renewcommand wäre unter anderem auch, dass bloß Änderungen "sichtbar" (und damit nachvollziehbar) gemacht werden.

Die vielleicht bessere Alternative

von localghost » Sa 29. Jun 2013, 19:34

Jossie hat geschrieben:Danke, hab durch googeln das Paket inzwischen gefunden. […]
Verschwende deine Zeit nicht mit der Suche im Internet. Gehe direkt zu CTAN. Für die Anpassung der Listen kannst Du dir enumitem ansehen.
Johannes_B hat geschrieben:[…] Schau dir zusätzlich zu KOMA bitte auch das Paket tocloft an. […]
Das ist nicht unbedingt zu empfehlen. Das zu KOMA-Script gehörende Paket »tocstyle« wäre hier vorzuziehen. Es hat eine eigene Anleitung, die ganz bequem über die Kommandozeile abrufbar ist.
texdoc tocstyle
In Sachen Minimalbeispiel stimme ich vollkommen zu.


Thorsten

von Jossie » Sa 29. Jun 2013, 19:18

Danke, hab durch googeln das Paket inzwischen gefunden.

Dass man mit einem Minimalbeispiel effizient arbeitet, ist mir schon klar. Ich hatte versucht, das Problem des Inhaltsverzeichnisses zu isolieren -- ohne Erfolg. Und ich kann hier aber nicht das ganze Paket mit seinen 400 Seiten posten ... Dabei war mir die Sache mit der Trennung aufgefallen.

Zu Punkt 2, der Änderung von \itemsep, habe ich ebenfalls durch googeln inzwischen Lösungsvorschläge gefunden. Ich muss allerdings erst mal ausprobieren, ob das bei mir zum Erfolg führt.

Danke und beste Grüße

Hermann-Josef

von Johannes_B » Sa 29. Jun 2013, 19:02

Ich habe den Link korrigiert. Übrigens empfiehlt es sich statt, in einer Klassendatei zu basteln, Änderungen mit Hilfe von renewcommands vorzunehmen. Schau dir zusätzlich zu KOMA bitte auch das Paket tocloft an.

Bitte lies dir auch genau durch, wieso man bei LaTeX-Problemen Minimalbeispiele erstellt und welchen Zweck das alles hat. Den Link finfest du oben.

von Jossie » Sa 29. Jun 2013, 17:42

Hallo,

leider funktioniert der Link nicht. Kannst Du den bitte überprüfen?

Mein erstes Problem hängt sehr wahrscheinlich mit einem Trennungsproblem zusammen. Es tritt nämlich immer dann auf, wenn am Ende der Überschrift, die ins Inhaltsverzeichnis übernommen wird, Worte kommen, die nicht oder nur schlecht zu trennen sind (wie Akronyme usw.). Statt in die Seitenspalte weiter zu schreiben sollte da besser eine neue Zeile begonnen werden. Frage ist, wie ich das erzwingen kann.

Frage 2 kann verallgemeinert werden, wie man den Wert einer Variablen (wie z.B. \itemsep) global im Stylefile ändern kann.

Danke und Gruß

Hermann-Josef

von Johannes_B » Sa 29. Jun 2013, 17:12

Deine eigentlich Frage kann ich momentan nicht beantworten, aber bitte schau in die Doku von KOMA-script (siehe Link weiter oben). Alles was du ändern willst sollte mit Paketen aus dem Bundel mit ein paar einfachen Befehlen zu realisieren sein.
Im Moment versucht du aus Blech, Schrauben und nem Hammer ein Rennauto zu basteln, obwohl es schon einen fertigen Modulbausatz (KOMA) gibt.

von Jossie » Sa 29. Jun 2013, 17:06

Hallo zusammen,

ja, ich habe das Standardfile book.cls genommen und unter anderem Namen abgespeichert.

Hier ist die Stelle, die ich angepasst hatte, um im Inhaltsverzeichnis links mehr Platz für die Kapitelnummern zu haben:
%\newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}}
\newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.8em}}%  <--- changed for FB
Ansonsten kann ich momentan nicht mehr bieten, als die Darstellung im ersten Beitrag, die zeigen soll, dass manchmal der Text (Kapitelüberschrift + Autorenliste) in die Spalte der Seitenzahlen hineinreicht.

Es würde mir hier schon helfen, wenn jemand die Parameter in book.cls aufdröseln könnte, die die Spaltenbreiten im Inhaltsverzeichnis steuern bzw. einen Hinweis geben könnte, wo ich eine solche Dokumentation finden kann.

Zur 2. Frage:

Ich kann den Abstand zwischen den Listenelementen ändern, wenn ich zu Beginn jeder Aufzählungsumgebung Folgendes einfüge:
\begin{itemize}%
\setlength{\itemsep}{-0.25ex plus0.5ex minus0.25ex}
\setlength{\parsep}{0pt}
\vspace*{-\parskip}}
\item ...
\item ...
\end{itemize}

Füge ich aber den entsprechenden Code in das Style-File book.cls am Ende an, dann tut sich nichts beim Abstand der Aufzählungselemente. Das wird offenbar ignoriert.

Meine Frage daher, wie ich den Wert von \itemsep global im Stylefile für alle Listenumgebungen ändern kann.

Beste Grüße

Hermann-Josef

von Johannes_B » Sa 29. Jun 2013, 16:45

Um deine Frage zu beantworten musst du ein vollständiges Minimalbeispiel posten. Momentan ist dein Problem nicht nachvollziehbar und kann viele Ursachen haben.

Ein paar Fragen und Anmerkungen:
Hast du die LaTeX-Standardklasse book.cls genutzt, oder vielleicht die viel flexiblere und erweiterbare/konfigurierbare scrbook.cls aus KOMA-Script?

Ich hoffe du nimmst die Änderungen an einer lokalen Kopie unter anderem Namen vor, ein Update könnte deine Arbeit sonst überschreiben.

EDIT: Link korrigiert

Nach oben