¿Cómo vincular a parte del mismo documento en Markdown?
Estoy escribiendo un documento de Markdown de gran tamaño y me gustaría colocar una especie de tabla de contenido al principio que proporcione enlaces a varias ubicaciones del documento. ¿Cómo puedo hacer esto?
Intenté usar:
[a link](# MyTitle)
¿Dónde MyTitle
hay un título dentro del documento pero esto no funcionó?
Github analiza automáticamente las etiquetas de anclaje de sus encabezados. Entonces puedes hacer lo siguiente:
[Custom foo description](#foo)
# Foo
En el caso anterior, el Foo
encabezado ha generado una etiqueta de anclaje con el nombrefoo
Nota : solo uno #
para todos los tamaños de encabezado, sin espacios entre #
el nombre del ancla, los nombres de las etiquetas de ancla deben estar en minúsculas y delimitados por guiones si tienen varias palabras .
[click on this link](#my-multi-word-header)
### My Multi Word Header
Actualizar
También funciona de inmediato pandoc
.
Este puede ser un hilo desactualizado, pero para crear enlaces de documentos internos en Markdown en Github use...
(NOTA: #título en minúscula)
# Contents
- [Specification](#specification)
- [Dependencies Title](#dependencies-title)
## Specification
Example text blah. Example text blah. Example text blah. Example text blah.
Example text blah. Example text blah. Example text blah. Example text blah.
Example text blah. Example text blah. Example text blah. Example text blah.
Example text blah. Example text blah.
## Dependencies Title
Example text blah. Example text blah. Example text blah. Example text blah.
Example text blah. Example text blah. Example text blah. Example text blah.
Example text blah. Example text blah. Example text blah. Example text blah.
Example text blah. Example text blah.
Se hizo una buena pregunta, así que edité mi respuesta;
Se puede crear un enlace interno a cualquier tamaño de título usando - ,,, #
Creé
un ejemplo rápido a continuación
... https://github.com/aogilvie/markdownLinkTest##
###
####
Experimentando, encontré una solución usando <div…/>
, pero una solución obvia es colocar tu propio punto de anclaje en la página donde quieras, así:
<a name="abcde">
antes y
</a>
después de la línea a la que desea "vincular". Luego un enlace de rebajas como:
[link text](#abcde)
cualquier parte del documento te lleva allí.
La <div…/>
solución inserta una división "ficticia" sólo para agregar la id
propiedad, y esto es potencialmente perjudicial para la estructura de la página, pero la <a name="abcde"/>
solución debería ser bastante inocua.
(PD: podría estar bien colocar el ancla en la línea a la que deseas vincular, de la siguiente manera:
## <a name="head1">Heading One</a>
pero esto depende de cómo lo trate Markdown. Observo, por ejemplo, que el formateador de respuestas de Stack Overflow está contento con esto).
Sí, Markdown hace esto, pero debes especificar el nombre Anchor <a name='xyx'>
.
un ejemplo completo,
esto crea el enlace
[tasks](#tasks)
en otra parte del documento, crea el ancla con nombre (como se llame).
<a name="tasks">
my tasks
</a>
tenga en cuenta que también puede envolverlo alrededor del encabezado.
<a name="tasks">
### Agile tasks (created by developer)
</a>
En pandoc , si usa la opción --toc
para producir html, se producirá una tabla de contenido con enlaces a las secciones y de regreso a la tabla de contenido desde los encabezados de las secciones. Es similar con los otros formatos de escritura pandoc, como LaTeX, rtf, rst, etc. Entonces con el comando
pandoc --toc happiness.txt -o happiness.html
este poco de descuento:
% True Happiness
Introduction
------------
Many have posed the question of true happiness. In this blog post we propose to
solve it.
First Attempts
--------------
The earliest attempts at attaining true happiness of course aimed at pleasure.
Soon, though, the downside of pleasure was revealed.
producirá esto como el cuerpo del html:
<h1 class="title">
True Happiness
</h1>
<div id="TOC">
<ul>
<li>
<a href="#introduction">Introduction</a>
</li>
<li>
<a href="#first-attempts">First Attempts</a>
</li>
</ul>
</div>
<div id="introduction">
<h2>
<a href="#TOC">Introduction</a>
</h2>
<p>
Many have posed the question of true happiness. In this blog post we propose to solve it.
</p>
</div>
<div id="first-attempts">
<h2>
<a href="#TOC">First Attempts</a>
</h2>
<p>
The earliest attempts at attaining true happiness of course aimed at pleasure. Soon, though, the downside of pleasure was revealed.
</p>
</div>
El manual de pandoc explica cómo vincular sus encabezados, utilizando su identificador. No verifiqué la compatibilidad con esto por parte de otros analizadores, pero se informó que no funciona en github .
El identificador se puede especificar manualmente:
## my heading text {#mht}
Some normal text here,
including a [link to the header](#mht).
o puede utilizar el identificador generado automáticamente (en este caso #my-heading-text
). Ambos se explican detalladamente en el manual de pandoc .
NOTA : Esto sólo funciona al convertir a HTML , LaTex , ConTeXt , Textile o AsciiDoc .