Guten Tag,
ich hätte da mal gerne ein Problem. Folgendes Minimalbeispiel:
\documentclass{scrbook} \usepackage{blindtext} \begin{document} \chapter{Einleitung} \blindtext \appendix \chapter*{Anhang} \renewcommand*{\thesubsection}{\arabic{subsection}.} \section*{Zwischenüberschrift} \subsection{Foo \label{Abschnitt1}} \blindtext \subsection{Fu \label{Abschnitt2}} Siehe Abschnitt~\ref{Abschnitt1}. \end{document}
Im Anhang ist es (leider!) zwingend, dass \chapter{}
und \section{}
keine Nummerierung erhalten. (\section{}
wie \subsection{}
sollen außerdem keinen Eintrag im Inhaltsverzeichnis erhalten.) Für \subsection{}
ist vorgegeben, dass eine Nummerierung mit Punkt erfolgt. (Ganz egal, ob das nach typografischen oder anderen Regeln Sinn ergibt.) Soweit bekomme ich es hin.
Mein Problem ist, bei der Referenz dieser Punkt auftaucht. Ich habe alles mögliche ausprobiert, insbesondere mit \KOMAoptions{numbers=}
. Die einzige Lösung, dich gefunden habe, führt dazu, dass außerhalb des Appendix die Kapitelnummerierungen einen Punkt erhalten. Das empfinde ich als extrem unschön.
Mein ideales Ergebnis wäre:
1 Einleitung
Lorem ipsum…Anhang
Zwischenüberschrift
1. Foo
Lorem ipsum…2. Fu
Siehe Abschnitt 1.
Weiß jemand Rat?
R.
PS: KOMA-Skript v3.11.
Was Du als unschön empfindest ist einzig korrekt
Zunächst einmal sollte man immer dann, wenn man bei der Eingabe nicht mit US-ASCII auskommt, die Eingabecodierung deklarieren. Bei Verwendung von XeLaTeX und LuaLaTeX genügt es, wenn man erkennen lässt, dass XeLaTeX oder LuaLaTeX zu verwenden ist. Ansonsten macht man das mit inputenc oder besser mit selinput. Dann sollte man die Sprache im Dokument deklarieren. Das geht bei Verwendung von XeLaTeX mit polyglossia ansonsten mit babel.
Gliederungsnummern mal mit Punkt am Ende mal ohne zu setzen ist ganz unabhängig von Deinem ästhetischen Empfinden schlicht falsch. Man sollte Gleiches immer Gleich setzen. Also verwendet man den Punkt entweder oder man lässt ihn weg. Das geht ganz einfach mit Option
numbers
. Zur Frage, wie relevant Dein persönlicher Geschmack ist, sei auf das Zitat zweier herausragender Typographen am Ende von Kapitel 2 der KOMA-Script-Anleitung verwiesen.Als nächstes schauen wir uns mal die Anforderungen an. Wenn ich das Beispiel richtig deute, dann soll der gesamte Anhang die Überschrift »Anhang« erhalten. Nun, dazu wird in der KOMA-Script-Anleitung korrekt auf Befehle wie
\part
und\addpart
verwiesen. Der Anhang ist nämlich eindeutig kein Kapitel, sondern ein Dokumentteil. Ich würde die Verwendung von\addpart
empfehlen, damit wenigstens der Anhang selbst im Inhaltsverzeichnis auftaucht. Mit\part*
kann man auch das vermeiden.Nachdem der Anhang selbst zu einem Teil (
\addpart
oder\part*
) wurde, werden in der weiteren Problembeschreibung\section
zu\chapter
und\subsection
zu\section
.Die Beschreibung deute ich so, dass im Anhang selbst keine Gliederungsüberschriften mehr in das Inhaltsverzeichnis sollen. Das regelt man am besten über
tocdepth
. Allerdings kann man diesen Zähler hier nicht einfach global in der Dokumentpräambel setzen, sondern muss dafür sorgen, dass er erst im Inhaltsverzeichnis am Anfang des Anhangs geändert wird. Dazu verwendet man\addtocontents
. Da\setcounter
global wirkt, man aber eventuell nach dem Inhaltsverzeichnis noch ein Abbildungsverzeichnis oder ein Tabellenverzeichnis hat, auf die sich die Änderung nicht insgesamt auswirken soll, sollte man direkt den korrespondierenden TeX-Zähler setzen, an den man mit\value
gelangt.Sollen auch Abbildungen, Tabellen etc. im Anhang nicht in die entsprechenden Verzeichnisse, so sind für diese beiden Verzeichnisse identische Vorkehrungen zu treffen. Statt das einzeln zu machen, sei hier auf das Kapitel über das Paket tocbasic verwiesen.
Die (jetzt) Kapitel sollen im Anhang nicht nummeriert werden. Die (jetzt) Abschnitte sollen aber nummeriert werden. Das ist genau das, was man bei scrbook mit
\backmatter
erreicht.Natürlich ist es sinnvoll, alle Änderungen direkt an den Aufruf von
\appendix
zu koppeln. Dazu erweitert man diesen Befehl einfach entsprechend. Statt wie im folgenden Beispiel die interne LaTeX-Anweisung\g@addto@macro
zu verwenden, kann man das auch mit Hilfe des Pakets etoolbox erledigen.Eine saubere Lösung sähe dann beispielsweise so aus:
Sollte ich das Beispiel falsch gedeutet haben und in Wirklichkeit gar nicht die Überschrift »Anhang« den Anhang einleiten, sondern diese Überschrift lediglich ein Platzhalter für ein beliebiges Kapitel im Anhang sein, dann muss man tatsächlich tiefer in die Trickkiste greifen. Solche gravierenden Ungereimtheiten, die mir zutiefst zuwider sind, könnte man beispielsweise so realisieren:
Solltest Du bezüglich der Punkte bei den Nummern auf Deinen Geschmack bestehen, dann verweise ich auf die Erklärung zu
\chapterformat, \othersectionlevelsformat
und\autodot
etc. in der KOMA-Script-Anleitung. Ggf. muss man hier auch noch weitere Änderungen mit\addtocontents
auf das Verzeichnis selbst verlagern und dort lokal halten, damit die Punkte auch im Inhaltsverzeichnis so sind, wie Du haben willst. Man nehme jedoch Rücksicht auf mein ästhetisches Empfinden und verlange von mir bitte nicht, dass ich das vorführe.Kurze Zwischenerklärung
Hallo Markus,
vielen Dank für Deine umfassende Antwort, ich bemühe mich mal sie abzuarbeiten. Zwischendurch schon mal ein paar Punkte zur Erklärung:
Anhang
undZwischenüberschrift
waren von mir tatsächlich als Platzhalter gedacht. Ein wenig dumm dort sprechende Namen zu verwenden. Das korrigiert Beispiel sähe an der Stelle so aus:Der gewünschte Output ist wie folgt zu korrigieren:
Den Rest werde ich mir einmal in Ruhe zu Gemüte ziehen. Vor allem, weil mir die Änderungen sehr tiefgreifend und komplex erscheinen. Zumindest viel komplizierter als ich sie für diese einfache Fragestellung erwartet habe.
Vielleicht hilft es auch, wenn ich es noch einmal anders formulieren:
Wenn bei der Abschnittsnummeriung hinter der letzten Ziffer ein Punkt folgt, wie schafft es LaTeX dann bei der Referenz den Punkt wegzulassen? Also, wenn
\chapter{Einleitung \label{Einleitung}}
1. Einleitung ergibt, dann dafür zu sorgen, dassSiehe Kaptitel~\ref{Einleitung}.
nicht Siehe Kapitel 1.., sondern Siehe Kapitel 1. ergibt?Herzlichen Dank schon mal für die Antwort
R.
Deklaration der Codierung
Ohne Deklaration der Codierung funktionieren die Umlaute in der Überschrift »Zwischenüberschrift« allenfalls zufällig, können aber auch Fehler verursachen. Also bleibe ich dabei, dass entweder keine Sonderzeichen zu verwenden oder diese zu deklarieren oder darauf hinzuweisen ist, dass XeLaTeX oder LuaLaTeX mit nativer UTF-8-Codierung zu verwenden ist.
Anhang komplett anders
Wenn der Anhang tatsächlich eine Art komplett anderes Dokument sein soll, könnte man ihn natürlich auch getrennt setzen und ggf. per pdfpages dazu binden.
Die Sache mit den Nummern
Habe ich bereits in meiner alternativen Lösung angerissen. Darüber hinaus habe ich bereits auf die entscheidenden Befehle hingewiesen. Ich bitte darum, diese in der Anleitung nachzulesen.
Deklaration der Sprache
Ohne Deklaration der Sprache ist
\languagename
leider nicht wohldefiniert, sondern zufällig. Beispielsweise bei älteren TeX-Live-Versionen wie sie bei allen debian-basierten Systemen zu finden sind, ist\languagename
dann häufig die Sprache der zuletzt in das Format eingebundenen Trennmuster. Zusammen mit den alten blindtext-Versionen, die in obigen TeX-Live-Versionen leider ebenfalls enthalten sind, wird das dann ein echtes Problem. Ich hatte selbst jahrelang das Problem, dass ich bei Beispielen, die ich bekommen habe, regelmäßig erst die Sprachdeklaration einfügen musste, damit sie verarbeitet werden konnten. Wenn man wöchentlich mit entsprechenden Fehlermeldungen konfrontiert wurde, reagiert man irgendwann schlicht etwas allergisch auf solche Nebensächlichkeiten.Lösung
Die Lösung lag tatsächlich in der Anweisung
\othersectionlevelsformat
. Obwohl ich die KOMA-Script-Anleitung nach mehreren Stichwörtern durchsucht habe, ist mir der Befehl nicht aufgefallen.Hier ein Minimalbeispiel (erweitert um ein Inhaltsverzeichnis und die von Markus gewünschten Deklarationen) für XeLaTeX 3.1415926-2.4-0.9998, das zu genau dem Ergebnis führt, das ich mir wünsche:
Die entscheidende Zusatz
führt auch im Originaldokument zum gewünschten Ergebnis.
An einigen Stellen wirkt mir das ein wenig arg zusammengeschustert und vielleicht wäre das Paket pdfpages auch eine Lösung gewesen. Aber es läuft und damit bin ich zufrieden.
Vielen, vielen Dank!
R.
\addchap
Ich hatte ja bereits auf
\addpart
hingewiesen. Es gibt auch entsprechende Befehle für Kapitel (und sogar für Abschnitte). Solltest Du einmal nachlesen. Auch was ich über die Vermeidung von\setcounter
im Inhaltsverzeichnis geschrieben habe, solltest Du ernst nehmen …Deine Benutzung von
\othersectionlevelsformat
ist ebenfalls nicht empfehlenswert, da dieser Befehl für unterschiedliche Ebenen verwendet wird. Wie man das richtig macht, habe ich ebenfalls vorgeführt. Wenn Du einmal meine zweite Lösung anschaust, wirst Du auch dort keine Nummern bei\section
ausgegeben haben. Dafür werden aber die\subsection-
Nummern mit jedem\section
trotzdem automatisch zurückgesetzt.Heißt konkret?
Hallo Markus,
ich nehme an, der didaktische Effekt wäre größer, wenn ich es selber herausfinde. Aber könntest Du obiges Minimalbeispiel einmal so umschreiben, dass es Deinen Anforderungen genügt?
R.
Überarbeitete Lösung
Okay, habe mein Minimalbeispiel noch mal überarbeitet:
Besser? Was ich da in der
\othersectionlevelsformat
-Anweisung mache, verstehe ich nicht. Das habe ich mal von oben per Copy & Paste übernommen.Um das Zurücksetzen des Zählers der
subsections
komme ich aber nicht herum.R.
Nein
Dir ist nicht zufällig aufgefallen, dass in meinem zweiten Beispiel bis auf den Eintrag ins Inhaltsverzeichnis für die Kapitelebene und bis auf den Punkt bereits alles so gemacht wird, wie Du haben willst, einschließlich des automatischen Zurücksetzens des Zählers für die
\subsection-
Ebene? Bitte lies also die von mir gezeigten und genannten Anweisungen einschließlich\backmatter
noch einmal nach. Ich hatte auch mit voller Absicht auf\section
hingewiesen. Warum Du dann trotzdem\addsec*
verwendest, ist mir schleierhaft.Jetzt hast Du es also geschafft und mir den Code dafür doch noch entlockt. Vielleicht war das ja Absicht und der Grund, warum Du Dich geweigert hast, direkt auf meinem Code aufzubauen …
BTW:
\othersectionlevelsformat
ist übrigens mit Beispiel in der Anleitung erklärt. Die Anweisung\ifstr
ist ebenfalls in der Anleitung erklärt. Falls Du die eher einfache Umdefinierung der Anweisung oben trotzdem nicht verstehst, frag gezielt nach. Falls das Problem das allgemeine Verständnis von\renewcommand
ist, lies das bitte in einer LaTeX-Einführung nach. Die\protect
werden benötigt, weil der Code ja mit\addtocontents
in die toc-Datei geschrieben werden soll. Ohne die\protectc
würde er dabei bereits expandiert.Ok, ich breche hier mal ab
Hallo Markus,
ganz ruhig! Ich bin Dir ja dankbar für Deine Hilfe und stelle die Fragen bestimmt nicht, um Dich zu ärgern.
Bei Deinen Beispielen war mir von Anfang an nicht klar, warum Du neue aufmachst. Ich hatte vermutet, dass das auf dem Missverständnis mit den sprechenden Platzhaltern beruht und gehofft, nachdem das ausgeräumt war, ganz normal weitermachen zu können. Insbesondere die
% ACHTUNG
-Kommentare haben mich davon abgehalten daran weiterzuarbeiten. Ganz nebenbei muss ich das ja auch noch alles in mein ursprüngliches XeLaTeX-Dokument zurück übersetzen, das (zumindest für meine LaTeX-Fähigkeiten) um einiges komplexer ist als das Minimalbeispiel hier.Die
\addsec*
-Verwendung rührt daher, dass Du schriebst: Ich hatte ja bereits auf\addpart
hingewiesen. Es gibt auch entsprechende Befehle für Kapitel (und sogar für Abschnitte). Ich habe mir daraufhin noch mal die entsprechende Stelle in der KOMA-Skript-Anleitung (scrguide.pdf) durchgelesen und – sagen wir mal so: meine Augen haben die Zeichen erkannt. Und dann habe ich Deinen Hinweis so gelesen, dass es hier besser wäre\addsec*
anstatt\section*
zu benutzen. Ich habe es jetzt wieder rückgängig gemacht und bin alles in allem bei meiner ersten Lösung angelangt.Für mich stellt sich das Problem im Moment wie folgt dar: ich habe zwei Lösungen, die beide machen was ich will und zum selben PDF führen. Die eine ist technisch sauber (sagt der Profi), die andere verstehe ich (halbwegs). Und in dieser Situation tendiere ich dazu, die Lösung zu nehmen, die ich verstehe. Alldieweil die andere Lösung für mich eine Black Box darstellt, an der ich tunlichst nichts verändern sollte. (Eine Option, die ich in der anderen Variante zumindest theoretisch habe.)
Ich hatte diesen Teil des Forums als Anwender braucht Hilfe und weniger als Paketentwickler tauschen sich aus gelesen. Wie gesagt: ich bin Dir dankbar für Deine Hilfe. Aber die Tipps gehen soweit über das hinaus, was ich als Otto-Normal-Anwender verstehe (und meiner Meinung nach auch verstehen muss) und berühren so tiefliegende Funktionen, dass es wohl klüger ist die Finger davon zu lassen.
Eigentlich hatte ich gedacht, ich hätte eine einfache Frage gestellt. (Wie bekomme ich diesen blöden zweiten Punkt da weg?) Alles andere waren Nebenaspekte (insbesondere auch die Geschichte mit dem Inhaltsverzeichnis) und vielleicht war es dumm sie zu erwähnen. Aber ich hatte vermutet, dass sie zum Verständnis beitragen könnten.
Ich hatte dann gehofft, dass ich auf diese einfache Frage eine einfache Antwort à la Füge an dieser Stelle jenen Code ein, weil er das macht. erhalte. RTFM und probiere selber rum, ist nicht das, was einem ad hoc weiterhilft. Zumal ich lange in der KOMA-Skript-Anleitung gestöbert habe, bevor ich mich hier im Forum gemeldet habe. Unterm Strich mal wieder die Erkenntnis: LaTeX ist ein tolles Werkzeug, wenn man macht was LaTeX will. An sich ist das Programm sehr mächtig, aber diese Macht wird nicht in die Hände der Endnutzer gelegt. Was im Prinzip auch richtig ist, weil die eh nur Blödsinn anstellen. Nur, wenn man dann doch partout mal etwas ändern muss, wird es knifflig. Ich bin ja durchweg von LaTeX begeistert und auch bereit ein wenig in die Tiefen abzusteigen, aber letztlich ist das etwas was viele Endnutzer von LaTeX fernhält.
Aber alles in allem: noch mal danke! Ich habe jetzt eine Lösung, die für mich funktioniert und kann mich wieder dem Zuwenden, was mich eigentlich umtreibt. (Richtig, LaTeX-Pakete entwickeln ist es nicht.)
R.
Wichtige Rückfrage
Was bitte ist an meiner Lösung komplizierter als an Deiner? Die Lösung besteht letztlich aus
\backmatter
.\addtocontents
,\protect
undtocdepth
.\addtocontents
,\protect
,\renewcommand
und\autodot
.\renewcommand
und\thesubsection
.\renewcommand
,\othersectionlevelsformat
und\ifstr
.\makeatletter
,\makeatother
,\g@addto@macro
und\appendix
.Dabei wurde noch erklärt, dass Punkt 3 im aktuellen Fall derzeit unerheblich ist. Das braucht man sich also tatsächlich nur anzuschauen, wenn die dort genannte Eventualität eintritt.
Für Punkt 6 wurde als Alternative das Paket etoolbox genannt, wobei vermutlich eigentlich
\g@addto@macro
auch nicht schwer zu verstehen ist.Nachträglich erklärst Du, dass Punkt 2 ebenfalls unwichtig ist.
Punkt 3 fehlte in meinem ursprünglichen Vorschlag, Punkt 2 und 5 waren anders. Allerdings waren Hinweise zu den möglichen Änderungen bereits Teil meines ursprünglichen Vorschlags. Stattdessen hast Du den Vorschlag komplett über Bord geworfen und zweimal etwas neues gebastelt.
Du hast nicht das Anfängerforum, sondern das Anwenderforum verwendet. Deshalb darf ich bei meinen Antworten davon ausgehen, dass Du ganz normalen LaTeX-Code – und nichts anderes verwende ich oben in allen Lösungsvorschlagen – zusammen mit den größtenteils sehr ausführlichen Erklärungen in der KOMA-Script-Anleitung verstehst. Nun, das ist offenbar nicht der Fall. Aber was ist das Problem, dann konkret nachzufragen, statt wieder selbst etwas neues zu basteln, bei dem dann sofort auffällt, dass Dinge, die bei meinem Vorschlag funktioniert haben, nicht mehr funktionieren.
Im übrigen habe ich vorgekaute Lösungen bereits in meinem ersten Beitrag geliefert. Die zweite Lösung darin macht bereits fast, was Du gesucht hast. Die Änderung von
tocdepth
auf 0 statt -1, von der Du jetzt auch noch schreibst, dass sie nicht so wichtig ist, und die Änderung von\autodot
zu einem festen Punkt ist wirklich minimal! Alles, was ich in meinem ersten Kommentar als Lösung vorgeschlagen habe, habe ich davor auch noch ausführlich erklärt – auch die Motivation des Achtung-Kommentars.Die Änderungen von Nicht-XeLaTeX zu XeLATeX sind ebenfalls minimal, wobei ich wirklich nichts dafür kann, dass Du nicht gleich geschrieben hast, dass Du eine Lösung für XeLaTeX suchst.
Übrigens: Alle Änderungen, die bei meinen Vorschlägen notwendig waren, beschränken sich auf die Präambel!
Nichts desto trotz: Ich möchte wirklich wissen, was an meiner Lösung komplizierter ist. Bitte erkläre das, statt dich lang darüber auszulassen, dass Du ausschließlich vorgekaute, fertige Lösungen ohne Erklärung und Eigeninitiative haben willst, die Du aber bitte trotzdem verstanden haben willst. Dass die Intention dieses Forums oder zumindest meine Intention dieses Forums darin besteht, Dinge zu erklären, Dinge zu verbessern und Anleitung zum besseren Verständnis und langfristiger Selbsthilfe zu geben, muss ich hoffentlich nicht schon wieder erklären. Das sollte hinlänglich bekannt sein und dürfte mittelbar auch aus der Seitenbeschreibung hervor gehen. In der Vergangenheit konnte die KOMA-Script-Anleitung immer wieder dadurch verbessert werden, dass Leute erklärt haben, was und warum sie etwas nicht verstanden haben. Wenn Leute nur schreiben, dass ihnen etwas zu kompliziert ist, ohne zu erklären, was das konkrete Problem ist, dann wird sich nichts verbessern.
Es geht absolut nicht darum, ob mir Deine Lösungsidee gefällt oder ob ich mich daran störe, dass Du Dinge nicht weißt, die Du nun einmal nicht weißt. Es geht darum, das Problem zu verstehen und ob sich daraus für die Zukunft Verbesserungspotential ergibt. Es geht auch darum, dass ich hier keine Lösungen unkommentiert stehen lassen möchte, die in meinen Augen wieder das Potential haben, dass andere sie abkupfern und weiterverbreiten obwohl sie nicht wirklich empfehlenswert sind.
Versuch einer Antwort
Hallo Markus,
ich versuche mich mal an einer Antwort. Ich fürchte ich wiederhole dabei ein wenig von dem, was ich zuvor gesagt habe.
Vorab: ich denke, unser Horizont was ein Anwender ist und was er versteht oder verstehen muss, geht sehr weit auseinander. Du hast mit KOMA-Script ein sehr mächtiges Paket (oder gar eine ganze Klasse) geschrieben. Ich klaube mir eine Präambel zusammen und freue mich dann über die Sachen, die LaTeX macht. Trotzdem würde ich mich noch als einigermaßen versierter LaTeX-Anwender bezeichnen. Und zumindest im Grund bemühe ich mich noch darum, zu verstehen was passiert. Wenn ich das mit dem Umgang anderer Leute mit LaTeX vergleiche, ist das eine Menge Engagement.
Zur konkreten Frage: ich wollte ein Dokument haben, dass im Hauptteil genauso aussieht wie jedes andere KOMA-Buch auch. Im Anhang sollte ein Teil, der nach zugegeben sehr eigenwilligen, aber festen Vorgaben erstellt wird. Eine Vorgabe war, dass die Kapitelüberschrift keinen Zähler erhält, die zweite dass der Abschnitt keinen Zähler erhält. Das habe ich mit den
*
-Versionen von\chapter
und\section
hinbekommen. Die dritte Vorgabe war, dass die Unterkapitel einen Zähler aus arabischer Ziffer und Punkt erhalten. Nach längerem rumsuchen, bin ich dazu auf\renewcommand*{\thesubsection}{\arabic{subsection}.}
gestoßen und alles war wunderbar. Bis ich auf einen Unterabschnitt verwiesen habe und dort auf einmal der Punkt wieder auftauchte. Den wollte ich weg haben und habe trotz langem Suchen dafür keine Lösung gefunden.Es tut mir leid, wenn ich dieses Problem nicht von Anfang an so klar geschildert habe. Ich habe mich bemüht dieses Problem in LaTeX zu formulieren und dabei ein möglichst einfaches Beispiel zu erstellen. Außerdem habe ich noch einen Hinweis darauf gegeben, wie der Anhang im Inhaltsverzeichnis auftauchen soll. Das war aber zu dem Zeitpunkt für mich ein Nebenaspekt. Weshalb ich den Hinweis in Klammern gesetzt habe. Im Nachhinein ist es dumm gewesen, dass ich das überhaupt erwähnt habe.
Deine Antwort (so wie ich sie wahrgenommen habe) bestand darin, mich auf grundsätzliche Fehler (Eingabecodierung, Sprachauswahl) hinzuweisen. Ich verstehe, dass dies Sachen sind, die Dir in anderem Kontext Probleme bereitet haben, bin mir aber nach wie vor nicht ganz sicher, ob das mein oben geschildertes Problem tangiert. Wie auch immer: ich habe diese Punkte in den folgenden Antworten aufgenommen. Ich bin mir unsicher, ob ich das richtig gemacht hast, da Du noch mal so explizit auf XeLaTeX hinweist.
Der zweite Teil Deiner Antwort bestand darin, mir mitzuteilen, dass meine Wünsche aus ästhetischen Gründen inakzeptabel sind. Da Du diesen Punkt in die Überschrift gesetzt hast, nehme ich an, dass er Dir besonders wichtig war. Ich hatte eigentlich gehofft, in meiner Eingangsfrage klar gestellt zu haben, dass ich die Vorgaben auch nicht wert schätze, aber dennoch gezwungen bin sie umzusetzen. Mein ästhetischen Empfinden bezog sich übrigens auf den Hauptteil des Dokuments, der sich bei Verwendung der Option
numbers
ebenfalls änderte, was nicht gewünscht war.Dann bist Du zur eigentlichen Antwort übergegangen und hast auf die Befehle
\part
,\addpart
und\part*
verwiesen. Hier hätte ich mir gewünscht, dass Du mir sagst, wo ich sie in mein dargestelltes Minimalbeispiel einbauen soll und zu welchem Ergebnis sie führen. Zum warum hätte mir dann ein Verweis auf die KOMA-Skript-Anleitung genügt, in der ich mich dann bei Bedarf näher mit diesen Befehlen beschäftigt hätte. Ehrlich gesagt habe ich aber den ganzen Absatz überlesen, weil er auf einem Missverständnis in meinem Minimalbeispiel beruhte.Dann antwortest Du zur Fragestellung des Inhaltsverzeichnisses. Wie gesagt, das spielte für mich zu dem Zeitpunkt eine untergeordnete Rolle. Aber auch hier wäre es hilfreicher gewesen, wenn Du gesagt hättest an welcher Stelle meines Minimalbeispiels ich das hätte einbauen sollen. Und, auch wenn ich das gar nicht erwähnt hatte, aber da Du darauf hinweist das Ganze noch mal als Negativbeispiel mit
\setcounter
.Dann beantwortest Du eine Frage, die ich überhaupt nicht gestellt habe. Ich nehme an, das geschah in weiser Voraussicht, weil es ein Punkt ist, der vielleicht im Anschluss als Problem aufgetreten wäre. Wie Du merkst, sind wir an dieser Stelle aber schon meilenweit von meiner ursprünglichen Fragestellung entfernt, sodass es eher zu meiner Verwirrung beigetragen hat.
Dann verweist Du auf
\backmatter
und eigentlich ist es sehr schön, weil Du unmittelbar sagst, was es bewirkt: die Kapitel bekommen keinen Zähler, die Abschnitte und Unterabschnitte aber schon. Nur leider ist es nicht das was ich will, weil ja die Abschnitte auch keinen Zähler erhalten sollen.Dann erwähnst Du, dass man das auch an den Aufruf von
\appendix
koppeln kann. Schön und gut, aber muss ich das an dieser Stelle machen? Oder kann ich das auch einfach so hinter\appendix
schreiben? Und wenn nein, warum nicht? Und\g@addto@macro
klingt für mich nach Programmierung und einer Ebene von LaTeX, die so tief liegt, dass ich eigentlich nicht in sie eingreifen will. Siehe dazu mein Eingangsstatement.Dann folgt ein Beispiel Deinerseits, das komplett anders aussieht als das von mir vorgestellte Minimalbeispiel. Zu einigen Punkten hattest Du vorher was gesagt oder sie zumindest angedeutet, einige Befehl (
adieresis
,germandbls
,\appendixname
) tauchen komplett aus dem Nichts auf. Und bei wesentlichen Punkten wäre vorab eine kurze Erklärung hilfreich gewesen. (Warum wirdnumbers
aufenddot
gesetzt? Warum isttocdepth
−1
?) Aber gut. Da das eh das falsche Beispiel war, konnte ich diesen Abschnitt auch komplett überlesen.Dann kommt etwas, wo bei mir die Hoffnung aufkeimte, dass Du meine Eingangsfrage doch richtig verstanden hast. Offensichtlich ist das aber noch schlimmer als das, was Du dachtest was ich eigentlich vor hatte. Warum ist nicht klar. Doch auch hier folgt wieder ein Beispiel, dass sich von meinem Minimalbeispiel grundlegend unterscheidet. Also mal der Reihe nach:
\documentclass{scrbook}
verwendest Du\documentclass[numbers=enddot]{scrbook}
. Ist das nicht dasselbe wie\KOMAoptions{numbers=enddot}
? Das führte ja bei mir nicht zum gewünschten Ergebnis. Warum soll ich es hier trotzdem verwenden?\appendix
überhaupt geändert wird. Siehe oben.\backmatter
verwendet, wenn das überhaupt nicht zum von mir gewünschten Ergebnis führt? Macht das an dieser Stelle noch etwas anderes, das ich wissen müsste?\addtocontents{toc}{\protect\value{tocdepth}=-1\relax}
. Du hattest vorher dazu etwas geschrieben und ich habe eine Ahnung davon, was es macht. Diesen Teil habe ich letztendlich ja auch übernommen.\protect
ist mir unklar und auch, warum wir bei−1
anfangen.% ACHTUNG: Das sollte man besser nicht nachmachen!
überschrieben hast. Ich nehme an, dass ich es aber dennoch machen soll.\renewcommand*{\thesubsection}{\arabic{subsection}}
kenne ich. Juchhu! Es fehlt der Punkt. Interessant (im Sinne von: auf diese entscheidende Änderung hättest Du ruhig hinweisen können).\othersectionlevelsformat
. Zumindest aus meiner Perspektive stellt er die spätere Lösung des Problems dar. Umso erstaunlicher, dass er hier einfach vom Himmel fällt. Zumal Du ja bei der Schilderung von Nebenaspekten durchaus wortreich warst. Und eine kurze Erläuterung, was die einzelnen Befehle machen, wäre an dieser Stelle enorm hilfreich.\blinddocument
statt\blindtext
, zweiter Abschnitt im Anhang, …) Einen richtigen Grund kann ich dafür nicht erkennen. So weit ich es sehe tangiert das nicht meine Frage, oder?Im nächsten Absatz ist meine Hoffnung wieder dahin, dass Deine Antwort meine Frage beantwortet. Ich hatte eigentlich gedacht, Dein Beispiel setzt meine Vorstellungen (mit den fremden Vorgaben) um. Aber offensichtlich doch nicht.
Okay, mal kucken was ich mitnehmen kann.
\addtocontents{toc}{\protect\value{tocdepth}=-1\relax}
klingt vernünftig und löst ein Problem, das ich bis dahin noch gar nicht richtig auf dem Schirm hatte. Ich schmeiße mal alle Befehle raus, die ich nicht verstehe und siehe da mit\addtocontents{toc}{\protect\setcounter{tocdepth}{0}}
klappt es immer noch. (Ich bin mir gereade gar nicht mehr sicher, ob es auch ohne\protect
ging und ich das nur einfach vergessen habe.)\renewcommand*{\othersectionlevelsformat}[3]{\ifstr{#1}{section}{}{#3\autodot\enskip}
macht nicht ganz, was ich will. Also ersetze ich mal\autodot
durch einen hart codierten Punkt. Auch hier Reduktion auf das Wesentliche, sprich\renewcommand*{\othersectionlevelsformat}[3]{\thesubsection.\enskip}
. Alles wunderbar, nur die Nummerierung beginnt bei der falschen Zahl. Aber das kann ich ganz einfach mit\setcounter{subsection}{0}
lösen. Heureka! Es klappt. Jetzt noch schnell im Originaldokument ausprobiert und auch dort führt es zu den gewünschten Ergebnissen. Juchhu, ich habe eine Lösung!Du antwortest. Offensichtlich spielte
\addpart
für mein Problem doch eine Rolle. Komisch, galt das nicht nur für das Missverständnis. Na ja, dann greife ich mal generell darauf zu, wenn Du das so vehement forderst. Und da wo ich Code gekürzt habe, hatte er offensichtlich doch eine Funktion. Welche? Ich nehme es mal wieder mit rein, dann sollte ja alles in Ordnung sein. Jetzt müsste aber alles stimmen.And then all hell breaks loose.
Okay, das Ganze scheint doch komplizierter zu sein. Aber ich habe ja eine Lösung, die macht was ich will. Also ist es besser, mich wieder auf meine eigentliche Arbeit zu konzentrieren.
Soweit meine Geschichte bis dahin.
Zu Deinen Fragen:
\appendix\backmatter
oder\backmatter\appendix
.) Aber das ist eine inhaltliche Frage und spielt hier erstmal keine Rolle*
und\addcontentsline
erscheint mir direkter und verständlicher, aber wie auch immer.Das mit dem zweimal geändert kann man übrigens auch umgekehrt sehen. Ich habe jeweils ein Minimalbeispiel angegeben, dass Du umfangreich geändert hast. Und wie gesagt: nicht alle Änderungen hatten unbedingt etwas mit meiner Frage zu tun.
Zu den unterschiedlichen Horizonten hatte ich schon etwas gesagt. Wie aus meiner ausführlichen Schilderung oben hoffentlich ersichtlich wird, hatte ich statt einer gestellten Frage auf einmal ganz viele. Und da ist es schwierig an der entscheidenden Stelle anzusetzen. Tut mir leid, wenn das wie allgemeines Rumgemosere gewirkt hat. Zu den folgenden Sachen habe ich mich wohl ausführlich geäußert.
Und um es zusammenzufassen und für zukünftige Verbesserungen zu sorgen (neudeutsch heißt so etwas wohl tl;dr) vielleicht noch allgemein der Hinweis, was mein Problem war. Ich hatte ein konkretes Problem und habe auf eine konkrete Antwort gehofft. Nach dem Prinzip: wenn Du diesen Befehl eingibst, dann passiert das und das. Der Weg fängt gewissermaßen unten an und erkundet dann, was noch alles möglich oder nötig ist. Bei Dir habe ich häufig den Eindruck, dass Du eben weißt, was alles passieren kann. Gewissermaßen die Sicht von oben. Insbesondere wenn ich die KOMA-Skript-Anweisung lese ist das mein Eindruck. Generell würde ich mir da mehr Beispiele wünschen. (Der Befehl macht das und das. Beispiel Ergebnis ohne Befehl, Ergebnis mit Befehl.) Und eine Konzentration auf das Wesentliche. Ich weiß nicht, ob man das in der KOMA-Skript-Anweisung realisieren kann, vielleicht braucht es noch eine KOMAshort. (In Anlehnung an l2short.) Insgesamt habe ich Deine Antworten immer unter dem Motto gelesen Wo steht die Antwort auf meine Frage (und ehrlich gesagt lese ich die KOMA-Skript-Anleitung genauso) und dabei ist mir vieles über den Weg gelaufen, was für mich – zumindest auf den ersten Blick – nichts damit zu tun hatte.
Aber wie gesagt: vermutlich geht das Ganze darauf zurück, was wir unter einem Anwender verstehe. In meiner Sicht ist das jemand, der einen vorgegebenen Style nimmt, grundsätzlich weiß, dass LaTeX ein logisches Mark-Up und dann einfach seinen Text eingibt. Du erwartest die Kenntnis komplexer Befehle (und damit meine ich so etwas wie
\makeatletter
).Abschließend nach diesem langen Sermon noch mal ein herzliches Danke schön für Deine Mühe. Auch wenn es nach dem gerade geschriebenen nicht so klingt, haben mir Deine Vorschläge doch sehr weitergeholfen. Selbst wenn meine Lösung für Dich unbefriedigend ist. Und generell ein herzliches Danke für KOMA-Skript. Was wäre die Welt bloß ohne… (vollkommen ohne Ironie.)
R.
Es wird klarer
Kurz gesagt und nimm das bitte nicht übel: Das Problem war, dass Deine Frage eigentlich ins Anfänger-Forum gehört und Du meine Antworten nicht komplett gelesen hast. Ich will das gerne auch begründen.
Das machen Anfänger so. Versierte Anwender, wissen hingegen wo etwas steht und verwenden in der Präambel dann gezielt das, was sie brauchen im Wissen, dass sie es brauchen, weil sie u. a. die Anleitungen zu den verwendeten Paketen gelesen haben.
Wieso in anderem Kontext. Wie ich bereits erklärt habe, bereitet das genau in Deinem Beispiel Probleme. Du verwendest das Paket blindtext. Ältere, aber noch immer sehr gebräuchliche Versionen von blindtext haben ein Problem, wenn die Sprache nicht deklariert ist. Also ist das für Dein Beispiel zwingend. In Deinem eigenen Beispiel ist die Überschrift »Zwischenüberschrift« verwendet. Darin kommt ein »ü« vor. Ein »ü« ist ein Sonderzeichen, das von der Eingabecodierung abhängt. Also ist es erforderlich entweder darauf hinzuweisen, dass XeLaTeX (oder LuaLaTeX) und ein Editor mit UTF8-Codierung zu verwenden ist oder aber man verwendet entweder inputenc oder selinput. Für das Beispiel selbst würde das übrigens auch mit XeLaTeX funktionieren, obwohl bei XeLaTeX der Verzicht auf inputenc/selinput besser ist.
Ich hatte durchaus verstanden, dass der Anhang nun einmal so aussehen muss. Ich hatte Dich aber dahingehend verstanden, dass Du den Hauptteil nur aus einer persönlichen Geschmacksfrage gerne ohne den Punkt am Ende der Nummern hättest. Demnach hätte also der Hauptteil auch mit Punkt am Ende der Nummern gesetzt werden können und ich bin ausführlich darauf eingegangen, dass genau das die typografisch korrekte Lösung wäre. Ich habe zusätzlich mit einem Hinweis auf ein Zitat zweiter herausragender Typographen untermauert, dass typografische Korrektheit wichtiger ist als Dein persönlicher Geschmack.
Ich habe an dieser Stelle eindeutig auf die Anleitung verwiesen. Diese sagt klar, zu welchem Ergebnis
\part
,\addpart</cod> und <code>\part*
führen und auch was die Unterschiede dieser Befehle sind. Wie in der Beschreibung des Forums zu finden ist, gehe ich davon aus, dass Anwender auch in der Lage sind, in der Anleitung nachzulesen, wenn man ihnen Befehle vorsetzt, von denen sie nicht wissen, was sie tun.Dass ich mich auf die von Dir gesetzte Überschrift
\chapter*{Anhang}
bezogen hatte und das ein Fehlinterpretation Deines Beispiels war, hattest Du ja offensichtlich erkannt. Damit dürfte eigentlich auch klar sein, wo die Überschrift zu setzen war. Darüber hinaus habe ich ja nach der Erklärung dann ein Beispiel gebracht, in dem ich genau das gezeigt habe. Das dürfte also eindeutig sein. Ich denke, dass wir diesen Punkt also streichen können.Tja, das war aber ein grober Fehler Deinerseits. Du hättest an der Stelle natürlich trotzdem weiter lesen sollen. Mir dieses Versäumnis Deinerseits nun vorzuwerfen, finde ich ein wenig unfair. Daraus begründet sich dann nämlich auch der Code in meinem ersten Beispiel.
Auch hier verweise ich darauf, dass das Beispiel, das auf die ganzen Erklärungen folgt natürlich nicht aus den Wolken gefallen ist, sondern genau das zeigt, was ich zuvor erkläre. Das wird dann also genau gezeigt, wie und wo man die zuvor erklärten Punkte umsetzt. Dazu ist das Beispiel so ausführlich mit Kommentaren versehen, dass nicht nur ein Anwender, sondern sogar ein Anfänger die Querbeziehung zum zuvor erklärten zumindest erkennen sollte. Aber selbst, wenn das nicht der Fall sein sollte: Warum hast Du das nicht gezielt nachgefragt?
Auf jeden Fall ist das wieder ein klares Zeichen, dass Du das falsche Forum verwendet hast. Das kann passieren. Aber bitte nicht mir das anlasten. Hättest Du gezielt nachgefragt, wäre mir das übrigens schon früher klar geworden.
Logisch. Du willst nun aber hoffentlich nicht behaupten, es wäre nicht sinnvoll, dass ich mich bei meinen Antworten bemühe, weiter zu denken. Das ist hier ein öffentliches Forum. Selbst wenn das Problem bei Dir eventuell unerheblich ist: Schon beim nächsten ist es möglicherweise entscheidend. Also bemühe ich mich um saubere Lösungen und weise nach Möglichkeit auch frühzeitig auf mögliche Nebeneffekte und weitere Aspekte hin. Das hilft normalerweise auch Missverständnisse und Probleme zu vermeiden, die sonst häufig erst mit großer Verzögerung erkennbar werden und erheblichen Neuaufwand bedeuten.
Das sehe ich nicht so. Wir sind hier eigentlich gerade erst am Anfang der ursprünglichen Fragestellung, wie Du sie geäußert hattest. Wir sind genau in einem Punkt von Deiner Intention entfernt, das ist die Sache mit
\part*{\appendixname}
. Aber das ist nicht weiter dramatisch, weil ich später ja genau auf diesen Punkt noch einmal zurück komme.Du glaubst also, wenn ein einzelner Befehl nur einen Teil des gewünschten Ergebnisses liefert, dann kann er nicht Teil der Lösung sein, sondern verfehlt das Thema? Das wäre selbst für einen Anfänger eine grobe Fehleinschätzung. Wenn ein Befehl bereits einen wesentlichen Schritt in die richtige Richtung liefert, dann sollte man den unbedingt als Teil der Lösung in Betracht ziehen!
Würde ich es sonst erwähnen? Spricht etwas dagegen?
Man kann vieles machen, was man nicht sollte. Eines der Grundprinzipien von LaTeX ist die Trennung von Form und Inhalt. Alles, was die Form betrifft, gehört in die Dokumentpräambel. Zwischen
\begin{document}
und\end{document}
gehören Inhalt und Semantik. Dieses Grundprinzip sollte jeder Anfänger bereits möglichst früh lernen. Nach diesem Prinzip sollte jedem Anwender klar sein, dass die Befehle zur Änderung der Form des Anhangs in die Präambel gehören und Bestandteil der Umschaltung auf den Anhang sein sollten. Wenn ich das jemandem erst noch erklären muss, dann zeigt das, dass derjenige eben kein versierter Anwender, sondern ein blutiger Anfänger ist. Ob derjenige nun erst zwei Tage oder schon zwei Jahre mit LaTeX arbeitet, spielt keine Rolle. Ich erwähne das nicht um zu sagen: »Ätschi-bätschi, Du bist ein Anfänger!«. Ich erwähne das, um klar zu machen, wieso ich jemandem, der sich schon durch die Wahl des Forums als Anwender klassifiziert, die Vorteile der Verlagerung in die Präambel nicht erst erklärt habe.Ich hatte an der Stelle explizit auf das Paket etoolbox hingewiesen. Dieses bietet für denselben Zweck Befehle auf Anwenderebene. Da der einzige Gewinn in diesem Fall aber im Weglassen von
\makeatletter
und\makeatother
besteht, habe ich tatsächlich auf die Verwendung verzichtet. Hier bin ich davon ausgegangen, dass ein Anwender mit dieser Anweisung höchstwahrscheinlich schon längst konfrontiert wurde oder in der Lage ist, aus dem recht deutlichen Namen auf die Funktion zu schließen oder zumindest ggf. gezielt nachzufragen, was denn die Anweisung genau macht. Im Anfängerforum hätte ich das tatsächlich anders gemacht.Natürlich sieht es anders aus. Hast Du tatsächlich erwartet, dass ich zunächst Kritikpunkte äußere und diese dann in meinem Ergebnis nicht berücksichtige? Ehrlich gesagt, hatte ich sogar Zweifel, dass Du Dein Beispiel selbst getestet hast. Wenn ich das nämlich mit latex, pdflatex, xelatex oder lualatex verarbeite, dann erhalte ich:
Mit latex und pdflatex erhalte ich zusätzlich
und mit xelatex
unmittelbar vor der Fehlermeldung. Nun, vermutlich war es mein Fehler, dass ich von meinem Prinzip abgewichen bin, zunächst auf ein korrektes Minimalbeispiel zu bestehen. Aber ich wollte auch nicht päpstlicher als der Papst sein. Ich wusste ja, wie ich diese Probleme beseitigen kann.
adiearesis
undgermandbl
sind keine Befehle, sondern Optionen zum Befehl\SelectInputMappings
. Der wiederum gehört zu Paket selinput, das ich zuvor nicht nur wärmstens empfohlen hatte. Ich hatte mit sogar die Mühe eines Link zum Paket (dort findet man auch die Anleitung) gemacht. Also darf ich auch erwarten, dass man sich das einmal anschaut, wenn man es noch nicht kennt. Sorry, aber wenn Du erwartest, dass ich Dir Anleitungen vorlese, dann bist Du nicht nur an diesem Forum sondern auch im Anfängerforum falsch. Es sollte hinlänglich bekannt sein, dass ich das grundsätzlich nicht mache. Da bin ich kompromisslos.Das hatte ich erklärt:
Warum Änderung von
tocdepth
habe ich zuvor erklärt. Warum -1 steht im Kommentar zusammen mit dem Verweis auf die Anleitung.Damit erübrigt sich dann wohl die Frage, ob Du das überhaupt gelesen hast. Du hast es offenbar nicht. Hättest Du aber vielleicht besser.
Das ist nicht klar? Obwohl Du bereits erkannt hattest, dass mir genau der Punkt so wichtig war, dass ich ihn in den Betreff gesetzt habe? Das erstaunt mich jetzt aber.
Hatte ich nicht geschrieben, was die typografisch einzig vertretbare Lösung ist? Bin ich nicht im Anschluss an dieses Beispiel noch einmal auf Deinen Geschmack und die möglichen Änderungen um diesen in diese Lösung einzufügen eingegangen? Nachdem Du bereits zugegeben hast, dass Du ganze Abschnitt meiner Antwort nicht gelesen hast: Hast Du diesen Teil denn wenigstens gelesen?
Aber sicher doch! Ohne die bekomme ich (auch bei Verwendung von XeLaTeX) kein korrektes »Zwischenüberschrift«. (Ganz abgesehen davon, dass Dein Beispiel ohnehin geändert werden musste, um einen fehlerfreien LaTeX-Lauf zu ermöglichen.) Außerdem solltest Du wie gesagt nicht erwarten, dass ich erst auf Mängel hinweise und sie dann nicht möglichst behebe. Ich mache viel Unfug, aber den sollte man von mir nicht erwarten!
Ich hatte auf die Anleitung verwiesen. Dort steht, was
\backmatter
noch alles macht. Es hat beispielsweise den Vorteil, dass auch gleich die Nummerierung von Tabellen und Abbildungen mit behandelt. Die müsstest Du bei Deiner angeblichen Lösung nämlich ggf. auch noch extra berücksichtigen. Wenn Dich das wirklich interessiert hat, warum hast Du es dann nicht nachgelesen. Wenn es Dich nicht wirklich interessiert hat, warum hast Du nicht einfach darauf vertraut, dass der KOMA-Script-Autor schon wissen wird, was seine Befehle tun?Das habe ich ja inzwischen erklärt. Hättest Du am besten direkt nachgefragt.
Wobei Du es ja vor
\setcounter
nachher selbst gesetzt hast. Dass Du da trotz vorheriger Warnung und Beispiel, wie man das Problem vermeiden kann, trotzdem\setcounter
verwendet hast, hat mich extrem erstaunt und an meinem Verstand zweifeln lassen.Nö. Ich rate dringend davon ab. Es bewirkt etwas, was ich keinesfalls empfehlen kann, was Du aber haben willst. Hier lesen auch andere Leute. Üblicherweise wird Code mal eben einfach aus dem Internet kopiert. Da ist es mir sehr lieb, wenn diese Warnung mit kopiert wird. Nicht dass am Ende noch jemand behauptet, ich habe das empfohlen. Ich empfehle aus typografischen Gründen, im Anhang das Nummerierungsschema nicht neu zu erfinden, sondern entweder ganz auf Nummern zu verzichten oder dasselbe Schema wie im Hauptteil zu verwenden und lediglich die Kapitel mit Großbuchstaben statt mit arabischen Zahlen zu versehen. Ich denke, das geht aus der KOMA-Script-Anleitung und auch aus meinen Ausführungen meiner Antworten hier klar hervor.
JA, da hast recht. Darauf hätte ich tatsächlich deutlich hinweisen können. Ich hatte angenommen, dass das mit meinen Hinweisen auf
\…format
und\autodot
zumindest nach dem Studium der Anleitung klar genug hervor geht. Aber in diesem Punkt gebe ich Dir absolut recht: Hätte ich explizit drauf hinweisen sollen. Werde ich nachträglich noch ändern, damit andere es nicht so leicht übersehen.Mag sein, dass der Eindruck entsteht, es würde vom Himmel fallen. Allerdings erwarte ich im Anwenderforum, dass man solche Befehle dann in der KOMA-Script-Anleitung nachschlägt. Dort ist
\othersectionlevelsformat
recht ausführlich beschrieben. Trotzdem ist diese Kritik berechtigt und ich werde auch hier meinen Kommentar noch ein wenig erweitern. Aber warum hast Du das nicht gleich nachgefragt, wenn es Dir nach Lesen der Anleitung noch immer unklar war?Sorry, aber nachdem Dein Beispiel nicht einmal ohne Fehler durchlief und Du bereits die Deklaration von Sprache und Codierung vergessen hattest, erwartest Du da ein wenig viel. Außerdem hattest Du explizit auf Wünsche bezüglich des Inhaltsverzeichnisses hingewiesen, also war es logisch die Auswirkungen meiner Änderungen auf das Inhaltsverzeichnis auch zu zeigen. Ich darf mich hoffentlich wundern, wenn dieser Befehl das Beispiel in Deinen Augen verkompliziert hat.
Selbstverständlich tangiert das Deine Frage. Du wolltest Änderungen bei
\section
und\subsection
, die sich nur auf den Anhang auswirken. Wie kann ich die Unterschiede zwischen Hauptteil und Anhang zeigen, wenn im Hauptteil gar keine Überschriften dieser Ebene zu finden sind? Die einfachste Methode alle Gliederungsebenen und etwas Text zu zeigen ist\blinddocument
. Und auch hier entzieht sich mir das Verständnis, warum das Beispiel dadurch komplizierter geworden sein soll. Ich würde eher das Gegenteil vermuten.Aber nur, wenn man meine diesbezügliche Warnung unbeachtet lässt. Vielleicht hätte ich das Beispiel tatsächlich noch komplizierter und auch noch eine Gleitumgebung nebst Verzeichnis einfügen sollen. Dann sieht man nämlich tatsächlich, dass das so alleine nicht geht.
Der hart codierte Punkt ist hier nicht das Problem. Das Problem ist, dass Du die Unterdrückung der Ausgabe der Nummer für die
\section-
Ebene rausgeworfen hast. Damit musst kannst Du dann auch\section
nicht mehr verwenden und damit bekommt Du erst das Problem mit allen Nummern, die von\section
normalerweise zurück gesetzt werden. Das Problem bekommst Du übrigens bei jedem neuen Abschnitt aufs neue und musst dort all diese Zähler jedes Mal von Hand zurück setzen. Das ist nicht nur bezüglich der Trennung von Form und Inhalt schlecht, es birgt auch ein erhebliches Potential für Fehler. Warum Du diesen entscheidenden Vorteil meiner Lösung über Bord geworfen hast oder sogar als Verkomplizierung betrachtest, ist mir schleierhaft. Dieser Punkt macht die Dinge eigentlich erst richtig einfach.Was bitte soll ein zweiter Anhang sein. Es gibt einen Anhang und dieser kann mehrere Kapitel und meinetwegen sogar mehrere Teile haben. Aber selbst wenn es so etwas wie mehrere Anhänge geben würde, die unterschiedlich aussehen sollen: Dann definiert man dafür mehrere Befehle. Hättest Du beispielsweise zunächst einen Anhang, der ganz normal aussieht und dann später noch einen Anhang, wie Du ihn oben beschrieben hast, dann könnte man:
definieren und dann für den ersten Anhang
\niceappendix
und für den zweiten\typomurksappendix
verwenden. Das würde auch noch funktionieren, wenn man den ersten Anhang komplett weglassen würde. Nur, wenn der erste Anhang mit dem zweiten vertauscht werden sollte, müsste man etwas mehr Aufwand treiben. Aber auch dann müsste man nichts am Anhang selbst, sondern nur an den Definitionen von\niceappendix
und\typomurksappendix
ändern. Ich könnte Dir nun natürlich auch sagen, was in diesem Fall zu ändern wäre, aber ich will das Beispiel nicht verkomplizieren.Alle Änderungen hatten mit Deiner Frage zu tun. Du wolltest das nur nicht wahr haben und hast spekuliert oder sogar gehofft, dass dem nicht so wäre.
Ich kann doch hier nicht 100 von Beispiele für Teilspekte einer Antwort anführen. Was ist denn das Problem, das ggf. selbst auszuprobieren? Sorry, aber Du scheinst einen ganz falschen Eindruck von meiner Zeit zu haben. Schon mein Bemühen, Dich zu verstehen und doch noch an die Hand zu nehmen, kostet eigentlich viel mehr Zeit als ich habe. Dass ich jeden einzelnen Schritt und seine einzelnen Auswirkungen mit Beispielen und womöglich auch noch Bildern hier verdeutliche kann ich schlicht nicht leisten. Unter dem Anspruch würde ich zerbrechen. Gerade wenn – wie bei
\othersectionlevelsformat
– in der Anleitung bereits Beispiele und ausführliche Erklärungen zu finden sind, muss mir gestattet sein, hier etwas kürzer zu sein. Das gilt insbesondere im Anwenderforum. Im Anfängerforum bin ich oft ausführlicher als mir lieb ist. Hier aber bitte nicht auch noch!Im übrigen hast Du ja gerade meine Erklärungen nach eigenem Bekunden weitgehend übersprungen. Da darf ich also laut bezweifeln, dass noch mehr Erklärungen und noch mehr Beispiele wirklich viel genutzt hätten. Aber wie gesagt: Das ist für mich ohnehin nicht zu leisten. Ich habe auch noch ein Leben und eine Arbeit. Wärst Du bereit, mich für die ganzen Erklärungen so zu bezahlen, dass ich diese andere Arbeit nicht mehr zu tun hätte? Nein, Du brauchst das jetzt nicht zu beantworten, ich würde das Angebot ohnehin nicht annehmen. Aber darüber nachdenken solltest Du einmal.
Das ist ein sehr guter Punkt. Das Wesentliche steht bereits am Anfang meiner ersten Antwort: »Was Du als unschön empfindest, ist einzig korrekt«. Das hättest Du vielleicht ein wenig ernster nehmen sollen. Vielleicht hätte ich damit die Antwort auch schon beenden sollen statt mich auf lange Erklärungen einzulassen. Allerdings ist das nächste Wesentliche, dass es mir nicht darum geht, einem Hungrigen einen Fisch zu geben. Ich will vielen Hungrigen zeigen, wie man angelt. Wer nur einen Fisch will, ist hier falsch. Das habe ich immer gesagt, dazu stehe ich.
Und falls Du mit Deinen Auslassungen zu »KOMA-Script-Anweisung« die KOMA-Script-Anleitung« meinst: Die ist nicht von oben herab geschrieben, sondern in dem Bemühen, die Dinge zu erklären. Hier argumentierst Du dann auch etwas paradox. Zum einen möchtest Du keine Erklärungen haben, zum anderen möchtest Du aber mehr erklärt haben. Zum einen möchtest Du alles (Stichwort: KOMAshort), zum anderen möchtest Du aber noch mehr Beispiele. In der KOMA-Script-Anleitung – auch sind im Vergleich zu anderen Anleitungen – bereits sehr viele Beispiele! Im Quelltext sind alleine 142 Example-Umgebungen zu finden. Viele davon enthalten mehr als ein Beispiel oder mehrgliedrige Beispiele. Tatsächlich wird die KOMA-Script-Anleitung zusammen mit l2kurz häufig auch als Anfängeranleitung empfohlen, obwohl ich das gar nicht so mag und das auch nicht die Intention ist. Eigentlich beschweren sich auch eher die wirklich versierten Anwender, dass es keine Kurzreferenz ohne die ganzen Beispiele gibt. Das kann ich nachvollziehen.
Übrigens:
\makeatletter
wird in der KOMA-Script-Anleitung nur genau einmal in Kapitel 13 verwendet. Kapitel 13 ist im Experten-Teil und trotzdem wird dort erklärt, warum man\makeatletter
an dieser Stelle braucht. Etwas später gibt es dann aber sogar noch eine Lösung für reine Anwender, die ohne\makeatletter
auskommt. Also hast Du mit »KOMA-Script-Anweisung« vielleicht doch nicht die Anleitung gemeint.Markus
PS: Eigentlich war meine Antwort noch länger. Allerdings hatte ich dafür so lange benötigt, dass mich komascript.de ausgeloggt hatte und damit die Berechtigung zum Versenden einer Antwort erloschen war. Die Antwort war also weg. Vielleicht klingt deshalb diese zweite Antwort etwas rauer, als sie eigentlich gedacht ist. Ich wollte einfach irgendwann auch fertig werden.
PPS: Gerade fällt mir auf: Eigentlich hätte ich nach dem ersten Absatz dieser Antwort auch nur schreiben können: »Schau Dir einfach einmal die Frage von p.&nbps;mueller an. Der hat sich ein Beispiel zusammengetragen, hat aber darin etwas nicht verstanden. Also fragt er gezielt nach. Er bekommt von mir eine weitschweifige Erklärung und ein Verweis auf nicht einmal die freie KOMA-Script-Anleitung, sondern das KOMA-Script-Buch einschließlich dort existierender Lösung zusammen mit Hinweisen zu einer weiteren Selbstbaulösung oder Informationsmöglichkeit – alles ohne eine Zeile Code von mir in der Antwort. Er geht in seiner eigenen Antwort dann genau auf diese Antwort ein. Dass das auch noch genau das war, was er wollte ist zwar erfreulich aber für mich nicht der springende Punkt. So stelle ich mir die Kommunikation mit einem Anwender vor. Bei Dir hatte ich hingegen bei Deinem Kommentar auf meine Antwort sofort das ungute Gefühl, dass Du meine Antwort weitgehend unbeachtet lässt. Und jetzt kommt der Hammer: Das Beispiel mit p. mueller stammt ursprünglich aus dem Anfängerforum gar nicht aus dem Anwenderforum! Ins Anwenderforum wurde das erst von mir verschoben.
Kurze Antwort
Hallo Markus,
ich bemühe mich mal um eine kurze Antwort.
Was wir jeweils unter einem Anwender verstehen, ist nun mal unterschiedlich. Und da ist Deine Verschiebung in das Anfängerforum konsequent. (Ich habe den Thread jetzt sogar wiedergefunden, yippieh!)
Wenn man will, ist Deine Antwort Es wird klarer stellvertretend für den ganzen Thread. Du erklärst ausführlich Nebenaspekte (Eingangscodierung, Sprachwahl, Inhaltsverzeichnis) und lässt Dich wortreich dazu aus, warum es typografischen Grundregeln widerläuft, was ich vorhabe. (Noch mal: das ist mir bewusst. Ich komme aber trotzdem nicht drumherum.) Zum eigentlichen Problem äußerst Du Dich kaum.
Mir wäre eingangs eine Antwort nach dem Schema
Hallo Robert,
vorab: Dein Minimalbeispiel ist leider ein wenig zu minimal. Ohne Angabe einer Eingangscodierung und einer Sprachwahl kommt es zu Problemen. Füge einfach
oder etwas Ähnliches in Dein Beispiel ein. Auf Deine eigentliche Fragestellung hat das keine Auswirkung, aber der Code läuft sauber durch.
Noch eine Bemerkung vorab: Dir ist hoffentlich klar, dass was Du vorhast sämtlichen typografischen Grundregeln widerläuft. Du hast sicherlich gute Gründe das zu machen, was Du tust, solltest Dir aber verdammt sicher sein, dass Du das wirklich willst.
Zu Deinem eigentlichen Problem: wir kümmern uns mal zuerst um den Punkt in der Referenz. Um das korrekte Tabellenverzeichnis kümmern wir uns später. Du änderst die Nummerierung des Unterabschnitts mit
\renewcommand*{\thesubsection}{\arabic{subsection}.}
Das ist falsch, weil… Nimm den hart codierten Punkt zunächst raus, also\renewcommand*{\thesubsection}{\arabic{subsection}}
. Um ihn wieder in die Überschrift zu bekommen, gebe zusätzlich\renewcommand*{\othersectionlevelsformat}[3]{#3.\enskip}
ein. Damit sollte es erstmal grundsätzlich klappen.\othersectionlevelsformat
bewirkt, dass… Die Details findest Du in der KOMA-Script-Anleitung ab Seite X. Noch besser ist es, wenn Du…hilfreicher gewesen. Das ist das, was ich mit dem Aufbau von unten meinte. Das nur noch mal, um aufzuzeigen, wo es hier zwischen Sender und Empfänger zu Missverständnissen gekommen ist.
Ich weiß Dein Engagement wirklich zu schätzen. Aber ich denke, das habe ich bereit ausreichend kund getan.
R.
PS: Ja, mit KOMA-Skript-Anweisung meinte ich tatsächlich die KOMA-Script-Anleitung. Eigentlich dachte ich, hätte ich das vor dem Senden flächendeckend korrigiert. Dass es mir zweimal durchgegangen ist, bitte ich zu entschuldigen und verweise einfach mal auf die fortgeschrittene Stunde.
PPS: Ich weiß, das Forum bietet keine andere Möglichkeit. Aber die Änderungen sind leider ein wenig intransparent. Ich hoffe, ich habe sie überall nachvollzogen.
Nicht im Leben ist umsonst
Ich werde mir daher auch künftig nicht vorschreiben lassen, auf welche Weise ich meine Antworten formuliere und wo ich die Schwerpunkte bei meinen Antworten setze. Darüber hinaus denke ich, habe ich ausreichend begründet, warum ich ausführliche Antworten in der gegebenen Art bevorzuge. Das Internet ist nun einmal der Ort, an dem man nicht die Antworten bekommt, die man gerne hätte, sondern die die ein anderer zu geben bereit ist.
Anders gesagt: Nichts im Leben ist umsonst. Dafür, dass Du hier Fragen stellen darfst, musst Du mit meinen Antworten leben. Dafür dass ich hier mein Wissen kostenlos zur Verfügung stellen darf, muss ich mit Leuten leben, die glauben daraus Ansprüche ableiten zu dürfen.
Keine Ansprüche
Nur kurz zur Klarstellung: ich stelle hier keine Ansprüche. Die Frage war
und dazu habe ich versucht Hinweise zu geben. Mehr nicht.
Da das aber alles nichts mehr mit der Eingangsfrage zu tun hat, endet für mich die Diskussion hier.
R.
Thema verschoben
Da sich inzwischen erwiesen hat, dass für die Beantwortung der Frage doch Anfängerinformationen notwendig waren und Markus seine Lösungsvorschläge inzwischen auch entsprechend angepasst hat, wurde das Thema entsprechend aus dem Forum "Anwender sucht Hilfe" hierher verschoben.
Administratorentscheidungen sind grundsätzlich nicht im Forum zu diskutieren. Für Fragen an die Administratoren ist die bekannte Administrator-E-Mail-Adresse oder das Forum Site zu verwenden.