Última actualización:
¿Qué es Markdown?

Qué es Markdown, como es su sintaxis y los mejores editores para usar este lenguaje

Lenin Peña
Lenin Peña Desarrollo Web

Si estás buscando información sobre ¿Qué es Markdown? tal vez sea porque te estas iniciando en el mundo de la redacción para la web y medios digitales o simplemente sea porque quieres aprender una nueva habilidad.

No importa el motivo que tengas, en este artículo te voy a arrojar un poco de luz sobre este lenguaje de marcado tan utilizado hoy día para la redacción de contenidos en medios digitales.

Contenido del artículo

¿Qué es Markdown?

Markdown es un lenguaje de marcado ligero y amigable creado en 2004 por John Gruber con la mirada puesta en mejorar la forma para dar formato a los textos planos mediante el uso de caracteres siguiendo las directrices de su sintaxis.

En un principio Markdown fue desarrollado como una herramienta que permitiera una conversión amigable de texto plano a código HTML, con el auge que el lenguaje tomo, su aplicación en diferentes campos se incrementó.

Exportando archivo Markdown en Typora.

Sobre todo, gracias a programas con interfaz gráfica que permiten el uso amigable del lenguaje desde donde además se pueden exportar los documentos ya formateados en archivos HTML, PDF, Word entre otros.

¿Cómo se usa Markdown?

Para usar Markdown debes seguir las pautas de su sintaxis, esto garantizara que los archivos exportados tengan el formateado correcto, de lo contrario solo tendrás un archivo con texto plano.

Sintaxis Markdown

La sintaxis de Markdown no es más que “las reglas de escritura propias del lenguaje”, que te indica, por ejemplo, como poner negritas, como insertar una imagen, como subrayar una palabra, crear un índice etc.

Cabe acotar que, la sintaxis que nació junto a Markdown no es un estándar, la necesidad de añadir nuevas características sobre la base creada por John Gruber y Aaron Swartz considerado por muchos como obsoleto, ha dado paso a lo que se conoce como flavors o sabores esto lo veremos más delante.

Por ahora adentrémonos en cómo dar formato a los textos haciendo uso de los caracteres sugeridos en la sintaxis del lenguaje.

Párrafos

Los párrafos en Markdown se escribe como en cualquier otro editor de texto, no llevan ninguna sintaxis especial, el lenguaje al detectar que dicho escrito no lleva consigo un caracter de formateado lo interpretara como un párrafo.

Esto es un párrafo en Markdown.

Títulos o encabezados

Los títulos se generan con un signo numeral # y la especificidad o el peso de cada uno se establece por el número de # que lo antecedan.

Por ejemplo: si queremos un título de primer nivel o H1, bastaría con un #, en cambio si queremos un subtítulo o H2 debería antecederlo dos # y así sucesivamente hasta el último nivel que serían seis #.

También hay dos caracteres de formateado con alcance para los dos primeros niveles de título, siendo estos el signo igual = para los títulos de nivel 1 y el guion - para el nivel 2.

# Título 1
## Título 2
### Título 3
#### Título 4
##### Título 5
###### Título 6

Título 1
=

Título 2
-

Negritas

Para resaltar una palabra en negritas debes usar dos asteriscos (**) al principio y final de la palabra. También puedes usar dos guiones bajos (__) para lograr el mismo objetivo.

Como buena práctica sintáctica, si comienzas resaltando texto en negritas con el asterisco deberías mantener estos en el resto del documento.

**Esto sería un texto en negritas con dos asteriscos**

Cursivas

Para las cursivas puedes usar un (*) al principio y final de la palabra. También puedes utilizar un guion bajo (_) para obtener el mismo resultado.

*Esto sería un texto en cursiva con un asterisco*

Tachado

El texto tachado se obtiene con dos pares de virgulillas ~ o como yo le llamo “acento de la eñe”. Para sacar la virgulillas en el teclado presiona la combinación de teclas Alt Gr + 4.

~~Esto sería un texto tachado~~

Enlaces

Los enlaces se establecen de la siguiente manera: [Texto ancla](url del enlace “atributo title del enlace”) entre los corchetes iría el texto visible y dentro de los paréntesis iría la url, si por el contrario quieres mostrar la url el marcado sería el siguiente: <url del enlace>.

[Suscríbete al boletín](https://www.leninalbertop.com.ve "Boletín electrónico")

<https://www.leninalbertop.com.ve>

Imágenes

El marcado para las imágenes es similar al de los enlaces solo que se debe anteponer el signo de exclamación ! quedando de la siguiente manera: ![Texto alternativo ALT](url de la imagen “atributo title de la imagen”).

![Una imagen genial](/img/mi-imagen.jpg)

Listas ordenadas

Las listas ordenadas se generan utilizando números en orden ascendente, es decir comienza con el número 1 y va ascendiendo según la cantidad requerida.

1. Lista ordenada 1
2. Lista ordenada 2
3. Lista ordenada 3

También puedes crear sublistas dentro de una lista. Solo debes “sangrar” tres espacios para crearlas.

1. Lista ordenada 1
2. Lista ordenada 2
   1. Sublista 1
   2. Sublista 2
3. Lista ordenada 3

Listas desordenadas

Las listas desordenadas se pueden generar a partir de los siguientes signos: -, +, *. Puedes usar una combinación de ellos para generar tu lista desordenada pero nuevamente te recuerdo que lo ideal es mantener una sintaxis coherente. Yo suelo usar los asteriscos.

* Lista desordenada 1
* Lista desordenada 2
* Lista desordenada 3

Para las sublista se aplica los mismo que en la lista ordenada.

* Lista desordenada 1
* Lista desordenada 2
  * Sublista 1
  * Sublista 2
* Lista desordenada 3

Citas o Blockquotes

Para generar bloques de citas se utiliza el signo mayor que >.

> Todos somos muy ignorantes, lo que ocurre es que no todos ignoramos las mismas cosas. -Albert Einstein

Bloques de código

Los bloques de código se generan de la siguiente manera: usando un par del signo ` conocido en informática como backticks dará como resulta un bloque de código en línea.

 `Print("¡Que tal, Universo!")`

Para bloques de código más extensos se debe de utilizar tres pares de backticks, llevando en el trio superior la referencia al lenguaje en el que se escribe.

```python
my_variable = "¡Que tal, universo!"

print(my_variable)
```

Tablas

Las tablas en Markdown son quizás “lo que más canas saca”, sobre todo si estas son complejas ya que el lenguaje no fue creado para reemplazar a HTML.

En línea general la estructura de una tabla sería la siguiente.

| uno  | dos    | tres  |
| ---- | :----: | ----: |
| tres | dos    | uno   |
| uno  | dos    | tres  |
| tres | dos    | uno   |

Los dos puntos : en los guiones de la tabla hacen referencia a la alineación que tendrá cada celda.

Guiones sin puntos es la alineación por defecto a la izquierda, dos puntos al principio y final de los guiones es una alineación centrada, dos puntos al final de los guiones alinea el contenido a la derecha, dos puntos al principio de los guiones cumplen el mismo objetivo de la alineación por defecto.

Caracteres de escape

En este punto seguro ya te has dado cuenta que, Markdown utiliza caracteres conocidos en nuestro idioma cotidiano; asteriscos, signo de exclamación, corchetes, paréntesis.

Dichos signos o caracteres son interpretados por el lenguaje como operadores de formateado y serán leídos de esta manera a menos que explícitamente le indiquemos que no lo haga.

Para lograr este fin, debemos colocar la barra invertida \ o backslash en inglés, por delate del operador de formateado. Ejemplo: \+ aquí le pido a Markdown que el signo + que sirve para crear listas, sea interpretado como eso, un signo de suma y no un elemento de formateado.

Markdown Flavors

En un principio no todo era perfecto en Markdown, la base original de la sintaxis creada en 2004 por Jhon y Aaron no era explicita sobre algunas reglas que trajeron consigo muchas preguntas sin respuestas algunas de ellas eran.

  • ¿Cuántas sangrías se necesitan para una sublista?
  • ¿Se necesita una línea en blanco antes de una comilla o encabezado?
  • ¿Se necesita una línea en blanco antes de un bloque de código sangrado?
  • ¿Pueden los elementos de una lista estar vacíos?

Sin existir una variable que diera respuesta a estas preguntas no faltaron los que se adentraron a consultar la base para tratar de resolver estas ambigüedades, pero se encontraron que la base de Markdown era bastante defectuosa y arrojaba errores muy malos en muchos casos al tratar de solventar lo antes mencionado.

¡Eh aquí el talón de Aquiles de Markdown! nacieron los sabores de Markdown que propiamente dicho serian nuevas versiones sobre la base original que técnicamente podríamos llamarle fragmentación.

Para muchos, un motivo para huir de Markdown como lo explica Eric Holscher en su artículo Por qué no deberías usar Markdown.

Para otros tantos aplica el dicho en la variedad está el gusto_, en fin. Quizás el sabor más implementado es CommonMark que vino a sentar una base claramente definida para una sintaxis estándar e inequívoca para Markdown.

Existen sabores de Markdown más que los dedos de mis manos, la mayoría toman a Markdown y CommonMark como base. Aquí una listo de algunos de los más utilizados.

Para una lista con sabores más extensa visita el siguiente enlace.

Editores Markdown

Por regla general hasta el bloc de notas te sirve para escribir en Markdown, pero no es el editor acorde para ello, sobre todo si estas empezando con el lenguaje.

Escribiendo Markdown en el bloc de notas de Windows.

La razón principal es que no tiene un soporte adecuado y por tal motivo no cuenta con resaltado de sintaxis, vista previa o capacidad de exportar los documentos a formatos como docx, pdf, html.

Un editor para Markdown viene a facilitar las cosas ya que incluyen lo mencionado en el párrafo anterior, además de incluir atajos de teclado para insertar los operadores de formateado, soporte para varios sabores y una “interfaz parecida al de Microsoft Word”.

La variedad de editores Markdown es tal, cual confeti para arrojar por los aires.

Los hay para escritorio y smartphone, de pagos, gratis y hasta on-line por este último comenzaremos este recorrido, eso si no esperes una lista extensa en este post porque no la va haber. La razón es que no quiero abrumarte por ello solo listare “los más populares”.

Editores Online

Tal vez la mejor opción para tener un primer contacto. Comencemos.

  • Stackedit Es mi editor online preferido, este editor cuenta con varios agregados estupendos como iniciar Sesión con tu cuenta de Google, Github, Gitlab para almacenar tus documentos en la nube, vista previa con desplazamiento en vivo, espacios de trabajo colaborativos, soporte para los sabores Markdown Extra, CommonMark y Github Flavor.
  • Dillinger Dillinger está desarrollado en Angular, cuenta con vista previa e inicio de sesión con Dropbox, Google Drive, One Drive, Github para almacenar documentos en la nube.
  • Hackmd Permite trabajo colaborativo en tiempo real, vista previa, capacidad de exportar Markdown en otros formatos
  • Stackeditpro Esto es un Fork de Stackedit pero con baterías recargadas.

Editores para Escritorio

  • Typora Es el editor que utilizo en mi pc, en combinación con mi editor de código VScode les dan vida a los posts de este blog. Typora tiene una vista previa un tanto diferente al resto de editores ya que este se produce sobre la marcha.
  • Haroopad Un potente editor gratuito disponible para Windows, Linux y MacOS, Github Flevor más extensiones, exportación a otros formatos.
  • Writemonkey Es un editor minimalista en todos los sentidos, cuenta con características igual que los anteriores. Pese a poder usarse de forma gratuita si haces una donación monetaria recibirás una clave que te permitirá desbloquear extras adicionales.
  • Visual Studio CodeSublime TextAtom Meramente, no son editores exclusivos para Markdown pero cuentan con infinidades de plugins que les permiten trabajar de buena manera con este lenguaje.

Hasta aquí llega este post, espero que pueda serte de ayuda. Recuerda que estoy abierto a tus preguntas y puedes formularlas en el apartado de comentarios.

Comentarios