14
9

Nicht nur hier auf TeXwelt, sondern generell in Internet-Foren, im Usenet oder wenn man eine Support-Anfrage stellt, wird man häufig nach einem VM, einem vollständigen Minimalbeispiel, einem Minimalbeispiel oder in englischer Sprache nach einem MWE (= minimal, working example) oder MCE (= minimal but correct example) gefragt. Was ist das? Wozu dient das? Wie erstelle ich das?

Dieser Frage ist "Community-Wiki" markiert.

gefragt 02 Jul '13, 05:59

saputello's gravatar image

saputello
16.8k22051
Akzeptiert: 89%

bearbeitet 22 Sep '14, 04:29

Ijon%20Tichy's gravatar image

Ijon Tichy
4.4k618


Was ist ein vollständiges Minimalbeispiel?

Ein vollständiges Minimalbeispiel (oder kurz Minimalbeispiel oder VM) ist die kleinste Menge Code, die notwendig ist, um ein Problem zu reproduzieren.

Im Idealfall besteht ein VM aus genau einer Datei mit wenigen Zeilen Code. Zwar gibt es Fälle, in denen mehr als eine Datei benötigt wird, um das Problem zu reproduzieren, für diese Fälle gibt es aber Hilfsmittel, die unter »Vollständige Minimalbeispiele aus mehreren Dateien« beschrieben sind.

Man sollte auch nicht versuchen, ein VM zu erstellen, das mehr als ein Problem verdeutlicht. So wie zu genau einem Problem genau eine Frage gehört und eine Frage genau ein Problem auf einmal behandeln sollte, sollte auch das zugehörige VM genau dieses eine Problem zeigen.

Was ist der Sinn eines vollständigen Minimalbeispiels?

Die Erstellung eines VMs ist ein in den allermeisten Fällen notwendiger Schritt, um einerseits die Ursache eines Problems zu ermitteln und andererseits mögliche Lösungen zu testen. In der Regel sollte ein Fragesteller daher immer davon ausgehen, dass ein solches VM benötigt wird und es auch selbst erstellen.

Im Idealfall findet man bei der Erstellung des VMs bereits die Ursache und die Lösung des Problems. Falls dies nicht der Fall sein sollte, sollte man eine entsprechende Frage formulieren und dabei auch das erzeugte VM als Code-Block mit angeben.

Auf TeXwelt ist das VM auch deshalb wichtig, damit andere Hilfesuchende zusätzliche Anhaltspunkte haben, ob ihr Problem zu dem einer bereits beantworteten Frage passt. Gegenüber einem Codeschnippsel hat das VM meist außerdem den Vorteil, dass es über den Online-Editor-Link direkt ausprobiert und ggf. dort verändert werden kann.

Wie kann ich sicher stellen, dass mein Beispiel minimal ist?

Das ist normalerweise der aufwändigste Teil. Trotzdem kann ihn jeder Anfänger bewältigen. Es gibt dazu zwei mögliche Vorgehensweisen, wobei Anfängern unbedingt die Halbierungssuche empfohlen wird. Ergänzt wird das Ganze durch einige Zusatzmaßnahmen. Obwohl sich die folgenden Anleitungen auf LaTeX beziehen, sind sie generell auch für Probleme mit plainTeX, ConTeXt oder andere Formate anwendbar. Es gibt dann lediglich keine Klassen und Pakete, dafür aber eventuell andere Dateiarten, die in entsprechender Weise zu behandeln sind.

Halbierungssuche:

Die Halbierungssuche, die auch auch als binäre Suche oder Teile und Herrsche bekannt ist, kann von jedem Anfänger bewältigt werden. Sie erscheint zwar am Anfang aufwändig, kann es bei großen Dokumenten und komplexen Problemen auch sein, erfordert aber kaum Fachwissen.

Vorarbeiten:

  • Anfertigen einer neuen Arbeitskopie:

    Dieser Schritte ist extrem wichtig, um zu vermeiden, dass man Teile der bereits geleisteten Arbeit vernichtet. Dazu kopiert man das komplette Verzeichnis des Dokuments. Alle weiteren Schritte erfolgen dann auf der Kopie, die man zu seinem neuen Arbeitsverzeichnis macht!

  • Löschen aller Teile nach der Problemstelle:

    Hierzu kommentiert man alle Teile aus dem Dokument aus, die nach dem Absatz stehen, in dem das Problem auftritt. Dann löscht man alle Hilfsdateien und führt LaTeX-Läufe, MakeIndex-Aufrufe etc. durch. Tritt das Problem nicht mehr auf, hat man zuviel auskommentiert. In diesem Fall muss man auch für die Teile hinter der Problemstelle die Halbierungssuche durchführen.

Durchführung der Halbierungssuche für den Dokumentinhalt (vor oder nach der Problemstelle):

  1. Deaktivieren ca. der Hälfte des entsprechenden Dokumentinhalts. Dies kann zunächst durch auskommentieren geschehen. Bei Dokumenten, die aus mehreren Dateien bestehen, kann man auch komplette \input- oder \include-Anweisungen auskommentieren. Man kann auch die Anweisung \end{document} nach vorn kopieren. Alles, was nach dem ersten \end{document} steht, wird ignoriert. Das gilt auch, wenn dieses \end{document} in einer Datei steht! Teile vom Ende einer Datei, die per \input oder \include gelesen wird, kann man auch deaktivieren, indem man \endinput in die Datei einfügt. Alles, was danach steht, wird ignoriert.

  2. Löschen aller Hilfsdateien. Dieser Schritt ist besonders für den Anfänger wichtig, da er nicht weiß, welche Auswirkungen die Hilfsdateien haben können!

  3. Durchführung von LaTeX-Läufen, MakeIndex-Aufrufen etc. bis sicher ist, dass das Problem entweder noch besteht oder nicht mehr besteht.

  4. Falls das Problem noch besteht, löscht man alle deaktiverten Teile und fährt bei Schritt 1 fort.

  5. Falls das Problem nicht mehr besteht, aktiviert man ca. die Hälfte des deaktiverten Teils wieder und fährt bei Schritt 2 fort.

Dieses Verfahren führt man so lange durch, bis das Dokument auf den Teil reduziert ist, der zu dem Problem führt. Sollten dabei große Teile des Dokuments als unverzichtbar übrig bleiben, sollte man wahlweise das Paket blindtext oder lipsum laden und Schritt 1 wie folgt abwandeln:

  1. Deaktivieren von größeren Dokumentpassagen und einfügen von \blindtext- bzw. \lipsum-Anweisungen als Ersatz dieser Passagen.

Nachdem die Halbierungssuche für den Dokumentinhalt ausgeführt wurde, führt man sie in gleicher Weise für die Definitionen und das Laden von Paketen in der Dokumentpräambel durch. Wenn das Deaktivieren von Paketen oder Definitionen in der Dokumentpräambel in Schritt 3 zu neuen Fehlermeldungen führt, überprüft man zusätzlich, ob man die neuen Fehlermeldungen auf einfache Weise beseitigen kann. So kann man beispielsweie das Laden einer Abbildung mit \includegraphics häufig dadurch ersetzen, dass man eine \rule-Anweisung verwendet. Dabei gibt man als erstes Argument die gewünschte Breite der ursprünglichen Abbildung und als zweites Argument die Höhe derselben an. Eine Alternative findet sich nachfolgend unter »Ergänzende Maßnahmen«.

Nicht beseitigen muss man die Pakete fontenc, fontspec, inputenc (oder selinput) und babel oder polyglossia. Fortgeschrittene Anwender verwenden allerdings für die Weitergabe von VMs im Internet besser selinput als inputenc, da damit auch die Umwandlung der Codierung beim Kopieren und Einfügen in und aus E-Mails, Usernet-Beiträgen oder Foren meist kein Problem darstellt, oder verzichten auf Sonderzeichen in ihren VMs.

Sinnvoll ist auch, die Optionen bei \documentclass und \usepackage zu reduzieren. So haben beispielsweise Farbeinstellungen beim Laden von hyperref meist keine Auswirkungen auf das Problem und sollten dann entfallen.

Ergänzende Maßnahmen:

Sobald man nur noch die Teile hat, die für das Problem zuständig sind, sollte man nach Möglichkeit:

  • \input- und \include-Anweisungen eliminieren:

    Dazu kopiert man den Code der entsprechenden Dateien an die Stelle der jeweiligen Anweisung und führt dann natürlich erneut Testläufe durch. Im Idealfall kann man so alle \input und alle \include beseitigen.

  • Grafikdateien überflüssig machen:

    Dazu fügt man beim Laden von graphicx die Option demo ein und führt dann erneut Testläufe durch. Dabei werden alle Bilddateien im Dokument durch schwarze Kästen ersetzt. Allerdings haben diese Kästen nur dann dieselbe Größe wie die ursprünglichen Bilder, wenn die Optionen width und height bei den \includegraphics-Anweisungen angegeben sind und die Option keepaspectratio nicht angegeben war. Hier sind also ggf. zusätzliche Änderungen erforderlich.

    Alternativ ersetzt man alle \includegraphics-Anweisungen durch \rule-Anweisungen. Dabei gibt man als erstes Argument die gewünschte Breite und als zweite die gewünschte Höhe der Ersatzabbildung an.

    Eine weitere Alternative besteht in der Verwendung des Pakets mwe, das auch einige Beispielabbildungen wie example-image in verschiedenen Dateiformaten bereitstellt. Diese kann man einfach an Stelle der eigenen Abbildungen verwenden. Gegebenenfalls kann man die Größe über die Optionen width und height bei \includegraphics an die der eigenen Grafiken anpassen. Näheres zu diesen Beispielbildern ist bei Bedarf der Anleitung des Pakets zu entnehmen.

  • Literaturdatenbank überflüssig machen:

    Wenn die konkreten Einträge in der Literaturdatenbank (bib-Datei) keine Rolle spielen, kann man diese durch Einträge aus biblatex-examples.bib ersetzen. Diese recht umfangreiche Literaturdatenbank wird mit biblatex zusammen installiert. Man kann sie daher (statt der eigenen Literaturdatenbank) in Beispielen verwenden, die biblatex benötigen und einfach einen oder mehrere Datensätze des gewünschten Typs nutzen. Die Schlüssel sind direkt der Datenbankdatei zu entnehmen. Diese ist über die Dateisuche oder im Terminal mit »kpsewhich biblatex-examples.bib« unter allen Betriebssystemen leicht zu finden. Man erspart sich damit die eigene, minimierte Literaturdatenbank als zusätzliche Textdatei beizufügen. Man ersetzt also beispielsweise \addbibresource{meineLiteratur.bib} durch \addbibresource{biblatex-examples.bib} und \cite{meineHomepage} durch \cite{ctan} und überprüft, ob das Problem damit noch immer auftritt. Ist das der Fall, bleibt man für das VM dabei.

  • Klassen- und Paketversionen ermitteln:

    Nicht selten hängt ein Problem auch von der Version eines Pakets oder einer Klasse ab. Der einfachste Weg, diese zu ermitteln, stellt die \listfiles-Anweisung dar. Aus Gründen der Übersicht hat sich eingebürgert, diese noch vor \documentclass zu setzen, obwohl dafür keine technische Notwendigkeit besteht. Die Anweisung sorgt dafür, dass am Ende der Log-Datei eine Dateiliste geschrieben wird. So erzeugt:

    Open in Online-Editor
    \listfiles
    \documentclass{article}
    \begin{document}
    \end{document}
    

  zwar kein Dokument (also PDF- oder DVI-Datei) aber in der Log-Datei dennoch die Ausgabe:   

*File List*
article.cls    2007/10/19 v1.4h Standard LaTeX document class
 size10.clo    2007/10/19 v1.4h Standard LaTeX file (size option)
***********

Alternatives Vorgehen:

Alternativ zur Halbierungssuche kann man auch ein neues Dokument aufbauen. Dies ist ein alternatives Vorgehen, das erfahrene Anwender gerne nutzen, wenn ihr Ausgangsdokument sehr komplex ist. Dazu legen sie ein neues Verzeichnis mit einem neuen Dokument an. In dieses Dokument wird dann Schritt für Schritt Code aus dem ursprünglichen Dokument kopiert. Dabei geht man quasi wie bei der Halbierungssuche vor, nur dass man nicht aus dem Dokument löscht, sondern Code in das neue Dokument einfügt und bei Misserfolg wieder entfernt. Dieses Vorgehen ist nur zu empfehlen, wenn man bereits einen Verdacht über die Ursache hat. Daran anschließen sollte sich in jedem Fall noch eine Halbierungssuche zur Minimierung des Codes, wie sie oben beschrieben wurde.

Vollständige Minimalbeispiele aus mehreren Dateien

Ist es trotz aller Minimierungsleistung (siehe oben) erforderlich, dass ein VM aus mehreren Dateien besteht, so kann man für diese je nach Dateiart wie nachfolgend erkärt vorgehen.

Zusätzliche Dateien im Textformat:

In diesen Bereich gehören Unterdokumente, die sich nicht durch ergänzende Maßnahmen beseitigen liesen, aber auch Literaturdatenbanken (bib-Dateien). Falls ein Problem in einer eigenen Paketdatei auftritt, kann auch eine minimierte Fassung derselben in diesen Bereich gehören.

Falls diese Dateien nicht auf einige wenige Zeilen reduziert werden können, sollte man sie in ein Archiv zusammen packen und per Link dauerhaft zum Download bereit stellen. Dieses Vorgehen sollte aber nur im absoluten Notfall gewählt werden, da es die Chancen auf Antworten reduziert und außerdem extern Datenquellen immer verloren gehen können.

Falls diese Dateien auf einige wenige Zeilen reduziert werden können, sind sie in Form von filecontents-Umgebungen anzugeben. Die Umgebung erwartet genau ein Argument: den Dateinahmen unter dem der Inhalt der Umgebung gespeichert werden soll.

Hier ein kurzes Beispiel:

Open in Online-Editor
\begin{filecontents}{meinPaket.sty}
\ProvidesPAckage{meinPaket}[2013/07/02 Beispiel]
\ProcessOptions\relax
\end{filecontents}
\listfiles
\documentclass{minimal}
\usepackage{meinPaket}
\begin{document}
Test
\end{document}

Die filecontents-Umgebung erzeugt also die Datei meinPaket.sty, die anschließend in der Dokumentpräambel via \usepackage{meinPaket} geladen wird. Dabei tritt ein Fehler auf, weil \ProvidesPackage falsch geschrieben wurde.

Wie im Beispiel angewendet wird die Datei von der filecontents-Umgebung übrigens nur erzeugt, wenn sie nicht bereits vorhanden ist. Eine vorhandene Datei wird also nicht überschrieben. Wenn man also Änderungen in der Umgebung vornimmt, muss die Datei von Hand gelöscht werden. Dies kann man durch Voranstellen von

Open in Online-Editor
\RequirePackage{filecontents}

ändern. Dann überschreibt die filecontents-Umgebung die Datei bei jedem LaTeX-Lauf. Also aufgepasst! Hier zeigt sich wie wichtig es ist, Tests nicht im Dokumentverzeichnis, sondern nur in einer Kopie durchzuführen. Sonst droht Datenverlust!

Hier musste übrigens \RequirePackage an Stelle von \usepackage verwendet werden, weil \usepackage erst nach \documentclass verwendet werden kann. Dies ist als Ausnahme für die Verwendung von \RequirePackage in einem Dokument zu betrachten. Eine weitere Ausnahme wäre übrigens ggf. das Laden von Paket fixcm, das ebenfalls vor \documentclass geladen werden sollte.

Will man eine Datei erzeugen, deren Dateinamen bis auf die Endung mit der Hauptdatei übereinstimmt, so kann man übrigens \jobname verwenden. Im folgenden Beispiel wird dies für die Literaturdatenbank gezeigt:

Open in Online-Editor
\begin{filecontents}{\jobname.bib}
\@online{ bk:test,
  author={Saputello},
  title={Was ist ein vollständiges Minimalbeispiel oder kurz VM und wie
    erstelle ich dieses?},
  url={http://texwelt.de/wissen/fragen/569/was-ist-ein-vollstandiges-minimalbeispiel-oder-kurz-vm-und-wie-erstelle-ich-dieses}
}
\end{filecontents}
\listfiles
\documentclass[a4paper]{article}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[backend=biber]{biblatex}
\addbibresource{\jobname.bib}
\begin{document}
Das ist ein Beispiel aus \cite{bk:test}.
\printbibliography
\end{document}

Wenn die konkreten Einträge in das Literaturverzeichnis für das Problem keine Rolle spielen, sollte man übrigens besser auf das Beifügen einer Literaturdatenbank verzichten und stattdessen direkt die Beispieldatenbank von biblatex verwenden, also entsprechend dem obigen Beispiel:

Open in Online-Editor
\listfiles
\documentclass[a4paper]{article}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}
\begin{document}
Das ist ein Beispiel aus \cite{markey}.
\printbibliography
\end{document}

Ich habe hier also die Online-Quelle bk:test aus \jobname.bib durch die Online-Quelle markey aus biblatex-examples.bib ersetzt und mir so das Beifüge von \jobname.bib erspart.

Zusätzliche Dateien im Binärformat:

In diesen Bereich fallen alle Bilddateien sowie Dokumentdateien im PDF-Format. Für diese Art von Dateien sollte man unbedingt noch einmal prüfen, ob man ihre Verwendung einsparen kann. Dazu ist wie oben unter »Ergänzende Maßnahmen« angegeben vorzugehen. Bleiben dann dennoch solche Dateien übrig, so sind diese als Archiv zusammen zu packen und via Link dauerhaft zum Download anzubieten.

Wie kann ich sicher stellen, dass mein Beispiel vollständig ist?

Das ist normalerweise der letzte, aber auch einfachste Schritt. Dazu gibt es zwei mögliche Vorgehensweisen:

  • Konstruktives Vorgehen (= sichere Methode):

    Man legt ein neues Arbeitsverzeichnis an, kopiert nur die Datei(en) in dieses Arbeitsverzeichnis, die man als VM weiterzugeben gedenkt und führt dann einen oder auch mehrere LaTeX-Läufe einschließlich aller eventuell weiteren notwendigen Programmläufe wie BibTeX, biber, MakeIndex etc. in diesem neuen Arbeitsverzeichnis aus.

  • Destruktives Vorgehen (= gefährliche Methode):

    Man löscht im aktuellen Arbeitsverzeichnis alle Dateien, die man nicht als Teil des VM betrachtet. Doch Vorsicht: Falls man dabei Dateien löscht, die man noch benötigt, hat man danach ein großes Problem. Um das sicher zu vermeiden, kann man stattdessen auch das konstruktive Vorgehen wählen. Entscheidet man sich für das Löschen der Dateien, sollte man auf jeden Fall alle Hilfsdateien wie *.aux, *.toc, *.log, *.ind, *.idx, *.glo, *.gls etc. löschen. Anschließend führt man noch einen oder auch mehrere LaTeX-Läufe einschließlich aller eventuell weiteren notwendigen Programmläufe wie BibTeX, biber, MakeIndex etc. in diesem neuen Arbeitsverzeichnis aus.

Falls dieser LaTeX-Lauf genau das Problem zeigt, das Thema einer Frage ist, hat man das Ziel fast erreicht.

Worauf sollte ich abschließend unbedingt noch achten?

Wenn man das VM dann als Code-Block in seine Frage eingefügt hat, sollte man noch einmal kontrollieren, dass die verwendeten Klassen und Pakete auch tatsächlich auf den einschlägigen Quellen, in der Regel also auf CTAN zu finden sind. Falls das nicht der Fall ist, ist unbedingt ein Download-Link für die fehlende Klasse bzw. die fehlenden Pakete anzugeben. Besser ist jedoch, wenn man überprüft, ob das Beispiel auch mit einer allgemeineren Klasse, beispielsweise einer Standardklasse, bzw. ohne Spezialpakete das Problem zeigt.

Sollte für die Bearbeitung ein bestimmter TeX-Prozessor notwendig sein, beispielsweise xelatex, pdflatex oder lualatex, so sollte man das am besten unmittelbar vor oder am Anfang des VM angeben. Bei LaTeX-Beispielen, die sowohl mit latex,pdflatex, xelatex oder lualatex funktionieren, ist das hingegen nicht zwingend. Es schadet aber auch nichts, dazu zu schreiben, was man verwendet. Das erspart ggf. Rückfragen.

Sind Fehlermeldungen Teil des Problems sollte man diese wörtlich aus der Log-Datei kopieren. Auch hierfür eignet sich ein Code-Block. Dabei ist wichtig, dass man nicht zu viel weglässt. Gleichzeitig ist aber meist auch nicht die gesamte Log-Datei notwendig. Treten mehrere Fehler auf, genügen in der Regel die ersten zwei bis drei, weil alle weiteren häufig Folgefehler sind. Wird doch die gesamte Log-Datei benötigt, so sollte man sie möglichst dauerhaft über einen Link bereitstellen, aber trotzdem wichtige Passagen daraus zitieren.

Das vollständige Minimalbeispiel sollte natürlich auch nicht in einem Kommentar versteckt werden. Stattdessen sollte der Fragesteller es direkt in der Frage unterbringen. Wird hier auf TeXwelt ein VM nachträglich per Kommentar nachgefragt, sollte der Fragesteller seine Frage editieren, um das VM einzufügen. Das Editieren ist für den Fragesteller einfach über den Bearbeiten-Link unter der Frage möglich.

Permanenter link

beantwortet 02 Jul '13, 06:01

saputello's gravatar image

saputello
16.8k22051

bearbeitet 19 Mai, 11:27

3

Der Text ist großartig! Vielen Dank für die Mühe!

(02 Jul '13, 07:37) stefan ♦♦
1

@saputello: Es erleichtert dem "Minmalbeispielerzeugenden" und später dem "Helfenden", wenn vor \begin{filecontents}{...} noch ein \RequirePackage{filecontents} vorgesehen wird. Dann sind auch Änderungen in dieser externen Datei leicht möglich.

(03 Jul '13, 03:54) Herbert

Die Beispielbilder aus dem mwe-Paket können manche Minimalbeispiele ergänzen. Vielleicht kannst du das noch hinzufügen.

(03 Jul '13, 04:17) Johannes
1

@Herbert Ich selbst versuche \RequirePackage{filecontents} in meinen Antworten zu vermeiden (obwohl ich es selbst durchaus verwende), seit ich einmal eine bitterböse Mail bekommen habe, in der ein Anwender entgegen aller Ratschläge kein neues Verzeichnis zum Testen verwendet hat, sondern sein Dokumentverzeichnis, wodurch seine bib-Datei vernichtet wurde. Sogar rechtliche Schritte wurden mir angedroht! Das birgt also auch Risiken, weshalb ich es nur mit Einschränkungen empfehlen kann.

(03 Jul '13, 05:14) saputello

Beim vorletzten Punkt "Sollte für die Bearbeitung ein bestimmter TeX-Prozessor notwendig sein, beispielsweise xelatex..." hätte ich immer empfohlen, einen arara-Kopf anzugeben (einzelne machen das ja sogar), das ist selbsterklärend und auch die nicht-araraier werden es verstehen; auch spart es, die Kompilierung großartig zu erklären, was man dann aus vielen Zeilen Text raussuchen muß oder auch nie finden wird. Andererseits scheint arara für viele eine höchstfragwürdige Sache zu sein, warum auch immer... Schule machen wird es daher vermutlich (leider) nie.

(18 Aug '14, 16:57) cis
2

@cis Ich bin der meinung, dass jemand der aus Unkenntnis nachlesen muss, was ein Minimalbeispiel ist, auch mit einem arara-Kopf nichts anfangen kann. Und da es automatisiert versteckt es wichtige Basiskenntnisse, welche jeder Anfänger wissen sollte. Deshalb mag ich auch TeXniccenter nicht.

(19 Aug '14, 02:46) Johannes

@Johannes: Jetzt komm, wenn da steht %arara: xelatex - also der Schritt ist nun wirklich nicht so groß: "Aha, das muß ich also mit xelatex kompilieren". Zudem ist ja niemand der Mund verboten, was Rückfragen angeht. Ich find arara-Köpfe angenehm. Viele machen auch gar keine Angaben zur Kompilierung, und das betrifft nicht nur Anfänger, und nach einer halben Stunde Recherche stellt sich dann raus: "Achso, das geht nur mit lualatex"

(19 Aug '14, 05:01) cis

Links, super Idee.

(04 Jan, 06:16) Johannes

@Johannes: Nur leider geht das nicht per Markdown sondern nur per Markup und um die Namen für die Links zu erfahren, muss man sich den Quelltext der Seite anzeigen lassen. Wobei ich eine Idee habe, wie man zumindest das noch ändern könnte … Funktioniert. :)

(04 Jan, 06:43) saputello

@clemens: Eigentlich steht da IMHO auch nur, dass es eben kein Markdown für das name-Attribut gibt, sondern nur für href. Außerdem ist dort auch noch zu lesen, dass das name-Attribut überholt ist und man eigentlich id verwenden sollte, nur dass name funktioniert, während id nicht immer funktioniert. Jedenfalls funktioniert es so, wie ich es jetzt gemacht habe und durch die Verwendung eines Links im Anker kommt auch einfach an den Namen, ohne dass man sich erst den Quelltext anschauen muss.

(04 Jan, 16:45) saputello
Ergebnis 5 von 11 Alle anzeigen
Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×6
×2
×1

Frage gestellt: 02 Jul '13, 05:59

Frage wurde angeschaut: 20,360 Mal

Zuletzt aktualisiert: 19 Mai, 11:27