Uso del formato Markdown para escribir páginas web (Este texto es una copia de la página de sintaxis Markdown original) Visión generalFilosofíaMarkdown pretende ser tan fácil de leer y fácil de escribir como sea posible. La facilidad de lectura, sin embargo, predomina sobre todo lo demás. Un documento con formato Markdown debería ser publicable como es, como texto plano, sin parecer que ha sido mejorado con etiquetas o intrucciones de formato. Aun cuando la sintaxis de Markdown ha sido influenciada por varios filtros conversores de texto a HTML existentes — incluyendo Setext, atx, Textile, reStructuredText, Grutatext, y EtText — la mayor fuente de inspiración para la sintaxis de Markdown es el formato de texto plano de email. Para finalizar con esto, la sintaxis de Markdown está compuesta completamente de signos de puntuación, los cuales han sido cuidadosamente escogidos de forma que parezcan lo que significan. Por ejemplo, asteriscos alrededor de una palabra aparecen como *emphasis*. Las listas en Markdown parecen eso, listas. Incluso las citas tienen la apariencia de pasajes de texto citados, asumiendo que ha usado alguna vez el email. HTML en líneaLa sintaxis de Markdown tiene una finalidad: ser usada como un formato para escribir para la web. Markdown no es un sustituto del HTML, ni siquiera está cercano a él. Su sintaxis es muy limitada, correspondiendo únicamente a un muy pequeño subconjunto de etiquetas HTML. La idea no es crear una sintaxis que haga más fácil insertar etiquetas HTML. En mi opinión, las etiquetas HTML ya son fáciles de insertar. La idea subyacente en Markdown es hacer el texto fácil de leer, escribir y editar. HTML es un formato de publicación; Markdown es un formato de escritura. Además, la sintaxis de formato de Markdown únicamente tiene como destino cuestiones que pueden ser expresadas en texto plano. Para aquellas marcas que no están cubiertas por la sintaxis de Markdown, simplemente use el propio HTML. No hay ninguna necesidad de indicar que está cambiando de Markdown a HTML; únicamente use las etiquetas. Las únicas limitaciones aparecen en los elementos a nivel de bloque de HTML —
p. e. Por ejemplo, para añadir una tabla HTML a un artículo Markdown:
Note que la sintaxis de formato Markdown no es procesada dentro de etiquetas
HTML de bloque. P. e., no se puede usar el estilo Las etiquetas HTML de Span — p.e. Al contrario de las etiquetas de bloque de HTML, la sintaxis de Markdown es procesada dentro de etiquetas de span. Escape Automático para Caracteres EspecialesEn HTML, hay dos símbolos que exigen un tratamiento especial:
Los ampersands en particular son una molestia para los escritores web. Si
quiere escribir ‘AT&T’, debe escribir ‘
necesita codificar la URL como:
en el atributo de su etiqueta Markdown le permite utilizar estos símbolos de forma natural, realizando por
usted todos los escapes necesarios. Si usa un ampersand como parte de una
entidad HTML, se mantiene inalterado; de otra forma sería traducido como
Así, si quiere incluir un símbolo de copyright en su artículo, puede escribir:
y Markdown lo dejará tal cual. Pero si escribe:
Markdown lo traducirá a:
De forma similar, y puesto que Markdown soporta HTML en línea , si utiliza símbolos de ángulo como delimitadores de etiquetas de HTML, Markdown los tratará como tales. Pero si escribe:
Markdown lo traducirá a:
Sin embargo, dentro del código Markdown, spans y bloques, símbolos de ángulo
y ampersands son siempre codificados automáticamente. Ésto hace fácil
usar Markdown para escribir sobre el código HTML. (De forma opuesta al tosco
HTML, que es un formato terrible para escribir sobre la sintaxis HTML, ya que
cada Párrafos y Saltos de líneaUn párrafo consiste simplemente en una o más líneas consecutivas de texto separadas por una o más líneas en blanco. (Una línea en blanco es cualquier línea que tiene esa apariencia — una línea que contenga sólo espacios o tabulaciones se considera una línea en blanco.) Los párrafos normales no deberían sangrarse con espacios o tabulaciones. La regla “una o más líneas consecutivas de texto” implica
que Markdown admite párrafos de texto “hard-wrapped”. Esto lo diferencia
significativamente de la mayoría del resto de formateadores de texto a HTML (incluyendo la opción
“Convertir Saltos de Línea” de Movable Type) que traducen cada carácter de salto de línea
en un párrafo encerrado en una marca Si usted desea realmente insertar una marca Ciertamente, es más trabajoso crear un CabecerasMarkdown soporta dos estilos de cabeceras, Setext y atx. Las cabeceras de estilo Setext están “subrayadas” y usan el signo igual "=" (para cabeceras de primer nivel) y guiones cortos "-" (para cabeceras de segundo nivel). Por ejemplo:
Funcionará cualquier número de signos Las cabeceras de estilo Atx utilizan de 1 a 6 almohadillas al comienzo de cada línea, que corresponden a los niveles de cabecera de 1 a 6. Por ejemplo:
Si lo desea, usted puede “cerrar” cabeceras de estilo atx. Esto es meramente cosmético — puede usar esta opción si le parece que queda mejor. El número de almohadillas de cierre no necesita coincidir con el número de almohadillas usado para abrir la cabecera. (El número de almohadillas de apertura determina el nivel de la cabecera.) :
CitasMarkdown utiliza caracteres
Markdown le permite ser perezoso, de modo que únicamente ha de poner el
Las citas pueden estar anidadas (i.e. una cita dentro de otra)
añadiendo niveles adicionales de
Las citas pueden tener otros elementos Markdown elements, incluyendo cabeceras, listas, y bloques de código:
Cualquier editor decente de texto debría facilitar la construcción de citas tipo email. Por ejemplo, con BBEdit, usted puede hacer una selección y elegir Increase Quote Level en el menú Text. ListasMarkdown soporta listas ordenadas (numeradas) y sin ordenar (con viñetas). Las listas no ordenadas utilizan asteriscos, signos + y guiones — de modo intercambiable — como marcadores de lista:
es equivalente a:
y a:
Las listas ordenadas usan números seguidos de puntos:
Es importante advertir que los números reales que usted utiliza para marcar la lista no tienen efecto en la salida HTML producida por Markdown. La salida HTML de Markdown resultado de la lista anterior es:
Si, en cambio, usted escribió la lista en Markdown así:
o incluso:
usted conseguiría exactamente la misma salida HTML. El asunto es, si así lo desea, usar números ordinales en sus listas ordenadas Markdown, de modo que los números del código fuente coincidan con los números del HTML publicado. Pero si opta por la pereza, ni siquiera tiene que hacerlo. Sin embargo, si quiere usar la numeración perezosa, aún debería comenzar la lista con el número 1. En el futuro, Markdown admitirá comenzar listas ordenadas con cualquier número arbitrario. Los marcadores de lista normalmente comienzan en el margen izquierdo, pero pueden ser sangradas con un máximo de tres espacios. Los marcadores de lista deben ir seguidos de uno o más espacios, o de una tabulación. Para conseguir que las listas queden bien, puede desplazar los ítems con sangrados colgantes:
Pero, si opta por la pereza, ni siquiera tiene que hacerlo:
Si los ítems de la lista están separados por líneas en blanco, Markdown desplazará los
ítems en marcas
se convertirá en:
Pero ésta:
se convertirá en:
Los ítems de la lista pueden consistir en múltiples párrafos. Cada párrafo subsiguiente deberá sangrarse bien con 4 espacios, bien con una tabulación:
Sangrar cada línea de los párrafos subsiguientes tiene una mejor apariencia pero, una vez más, Markdown le permite ser perezoso:
Para colocar una cita dentro de un ítem de una lista, es preciso que los delimitadores
Para colocar un bloque de código dentro de un ítem de una lista, es preciso que el bloque de código esté sangrado dos veces — con 8 espacios o dos tabulaciones:
Merece la pena poner de manifiesto que es posible disparar una lista ordenada por accidente, escribiendo algo como esto:
En otras palabras, una secuencia número-punto-espacio al comienzo de una línea. Para evitar esto, usted puede colocar una barra invertida (\) antes del punto:
Bloques de códigoLos bloques de código pre-formateados se utilizan para escribir en programación o
en el código fuente de marcas. En lugar de formar párrafos normales, las líneas
de un bloque de código se interpretan literalmente. Markdown desplaza un bloque de código
en marcas tanto Para producir un bloque de código en Markdown, simplemente sangre cada línea del bloque con al menos 4 espacios o un tabulador. Por ejemplo, dada esta entrada:
Markdown generará:
Un nivel de sangrado — 4 espacios o 1 tabulador — es removido de cada línea del bloque de código. Por ejemplo, éste:
se convertirá en:
Un bloque de código continúa hasta que alcanza una línea que no está sangrada (o bien el final del artículo). Dentro de un bloque de código, los ampersands (
se convierte en:
La sintaxis regular Markdown no es procesada dentro de los códigos de bloque. E.g., los asteriscos son literalmente asteriscos dentro de un código de bloque. Esto significa que también resultá fácil usar Markdown para escribir sobre la propia sintaxis de Markdown. Reglas horizontalesUsted puede producir una marca de regla horizontal (
Span ElementsEnlacesMarkdown permite dos estilos de enlaces: en línea y referencias. En ambos estilos, el texto del enlace está delimitado por [corchetes]. Para crear un enlace en línea, utilice un par de paréntesis normales inmediatamente después del corchete de cierre del texto del enlace. Dentro de paréntesis, ponga la URL, junto con un título del enlace opcional entre comillas. Por ejemplo:
Producirá:
Si estamos haciendo referencia a un recurso local en el mismo servidor, podemos utilizar las referencias relativas:
Los enlaces de Referencia-estilo utilizan un segundo conjunto de corchetes, dentro de los cuales podemos poner una etiqueta de nuestra elección para identificar el enlace:
Opcionalmente podemos utilizar un espacio para separar los corchetes:
Después, en cualquier parte del documento, podemos definir nuestra etiqueta del enlace, en la propia línea:
Eso es:
El URL del enlace se puede, rodear opcionalmente por <>:
Podemos poner el atributo título en la línea siguiente y utilizar espacios adicionales o tabuladores sangrar, para ver mejor los URLs más largo:
Las definiciones de los enlaces se utilizan solamente para crear los enlaces durante el proceso Markdown, y se eliminan del documento en la salida HTML. Los nombres de la definición de los enlaces pueden ser letras, de números, espacios, y signos de puntuación -- pero ellos no son distinguen entre mayúsculas y minúsculas. Ejemplo, estos dos acoplamientos:
son equivalentes. La atajo del nombre del enlace implícito nos permite omitir el nombre del enlace, en estos caso el propio texto del enlace se utiliza como el nombre. Usaremos solamente un par de corchetes vacíos -- ejemplo., para enlazar la palabra "Google" al sitio Web de google.com, podemos escribir simplemente:
Y después definir el enlace:
Porque los nombres de los enlaces pueden contener espacios, los atajos funcionan incluso en las palabras múltiples del texto del enlace:
Y después definir el enlace::
Las definiciones de los enlaces se pueden poner en cualquier parte del documento Markdown. Tiendo para ponerlas inmediatamente después de cada párrafo en el cual se utilizan, pero si usted desea, usted puede ponerlas todas en el final de su documento, a manera de notas al pie de la página. Aquí tenemos un ejemplo de los enlaces a modo de referencias:
Usando el atajo implícito del nombre de los enlaces, podríamos escribirlo de la siguiente manera:
Ambos ejemplos anteriores producirán el siguiente HTML de salida:
Para comparar, aquí está el mismo párrafo escrito usando el estilo en línea de enlaces de Markdown:
Los enlaces del referencia-estilo no son más fáciles de escribir. El clave es que con enlaces de referencia-estilo el documento fuente es sumamente más legible. Compare los ejemplos anteriores: usando enlaces de referencia-estilo, el párrafo tiene solamente 81 caracteres de largo; con enlaces del en línea-estilo, es 176 caracteres; y como HTML, es 234 caracteres. En el HTML, hay más etiquetas que texto. Con los enlaces del referencia-estilo de Mardown, un documento fuente se asemeja mucho más a como lo mostrará su navegador el documento final. Permitiendo que usted mueva las etiquetas relativas a los meta datos fuera del párrafo, usted podrá agregar enlaces sin la interrupción del flujo narrativo de su prosa. ÉnfasisMarkdown utiliza el asterisco (*) y los guiones bajos (_) como indicadores del énfasis. Un texto envuelto con uno * o _ será convertido en la etiqueta del HTML < em >; doble * o '_ ' s será envuelto con un HTML etiqueta < strong >. Por ejemplo, estas líneas:
producirán:
Podemos utilizar cualquier estilo donde queramos; la única restricción es que el mismo carácter se debe utilizar para abrir y para cerrar el énfasis. El énfasis se puede utilizar en el centro de una palabra:
Pero si usted rodea * o _ con los espacios, será tratado como un asterisco o raya literal. Producir un asterisco o una raya literal en una posición para ser utilizada delimitador debe utilizar \ :
CódigoPara indicar código, envuélvalo con (`). Mostrará un bloque preformateado del código, esta etiqueta indica código dentro de un párrafo normal. Por ejemplo:
producida:
Para incluir un carácter literal de ` dentro de etiqueta de código, debemos poner \ seguido de ` en él::
O, si usted lo prefiere, puede utilizar múltiples ` como la abertura y los delimitadores de cierre::
Ambos ejemplos anteriores producirán esto:
Con una etiqueta de código, los signos "&" y los "<" y ">" se codifican como entidades del HTML automáticamente, que hace fácil incluir etiquetas ejemplo de HTML. Markdown lo convierte en:
en:
Podemos teclear esto
para producir:
ImágenesObviamente, es bastante difícil idear una sintaxis "natural" para poner imágenes en un formato de documento de texto. Markdown utiliza una sintaxis de imagen que se asemeja a la sintaxis de los enlaces, permitiendo dos estilos: en línea y referencia La sintaxis de imagen en línea se muestra así:
Esto es:
La sintaxis de la imagen de estilo Referencia tiene esta apariencia:
Donde
De momento, Markdown carece de sintaxis para especificar las dimensiones de una imagen; si esto es importante para usted, puede utilizar las etiquetas normales < img > de HTML. MisceláneaEnlaces AutomáticosMarkdown permite un estilo de atajo para crear los enlaces "automáticos" de URLs y de las direcciones de email: simplemente rodee el URL o la dirección email con los signos <>. Ello significa que mostrará el texto real de la URL o de una dirección email, y también hace que sea un enlace clickable, usted puede hacer esto:
Markdown lo convierte en:
Los los vinculos automáticos de las direcciones de email funcionan de forma semejante, excepto que Markdown también realice una conversión hexadecimal al azar que codifica para ayudar a ocultar su dirección a los programas que recolectan direcciones de emal para hacer spam. Por ejemplo, Markdown convertirá esto:
en algo que se parece a esto:
Se mostrará en el navegador como “address@example.com”. (Esta clase de truco de codificación dificultará a muchos programas de spam aunque no engañará definitivamente todos. Es mejor que nada, pero una dirección publicada sin codificar comenzará probablemente a recibir el Spam.) Backslash EscapesMarkdown nos permite utilizar escapes del backslash para generar los caracteres literales que tendrían de otra manera significado especial en la sintaxis del formato de Markdown. Por ejemplo, si usted deseó rodear una palabra con los asteriscos literales (en vez de una etiqueta del HTML < em >), usted puede usar los backslashes antes de los asteriscos, como sigue:
Markdown proporciona los escapes del backslash para los siguientes caracteres :
|