reducción

Conversión de documentos de Markdown al formato de Microsoft Word

Conversión de documentos de Markdown al formato de Microsoft Word
Entre otras actividades, escribir y editar documentos de texto pertenece a las acciones más comunes para las que usamos nuestras computadoras (de escritorio). La forma exacta en que se hace sigue diferentes caminos, desde el uso de un editor de texto simple como Vim hasta aplicaciones gráficas como Open / Libre Office o servicios basados ​​en la nube a los que se puede acceder a través de un navegador web como Google Docs. Para nuestra desventaja, cada herramienta viene con su propio formato de documento nativo, así como con la selección de otros formatos de documento compatibles. La calidad de la conversión entre estos formatos varía ampliamente y puede generar mucha frustración al cruzar los límites del formato.

En este artículo, echamos un vistazo a la conversión entre Markdown [1] y DOCX, el formato de documento nativo de Microsoft Word que se utiliza desde 2007. Quizás se pregunte por qué un entusiasta de Markdown y Asciidoc (como yo) se ocupa de este caso. Bueno, colaborar con un grupo de otros escritores puede llevar a una situación en la que uno o más participantes solicitan DOCX como formato de salida. No defraudes a nadie y, en cambio, averigua qué limitaciones existen y cómo podemos intentar hacer felices a todos los miembros del grupo.

¿Qué es Markdown??

Como ya se señaló en "Introducción a Markdown" [2], la intención de Markdown es una conversión simple de texto a HTML. La idea detrás de esto era hacer que escribir páginas web, documentación y especialmente entradas de blog fuera tan fácil como escribir un correo electrónico. A día de hoy, es el sinónimo de facto de una clase de lenguajes de descripción de marcado ligeros, y el objetivo puede considerarse alcanzado.

Markdown utiliza una sintaxis de formato de texto sin formato. Con un enfoque similar al HTML, una serie de marcadores indican titulares, listas, imágenes y referencias en su texto. Las pocas líneas a continuación ilustran un documento básico que contiene dos titulares (primer y segundo nivel), así como dos párrafos y un entorno de lista.

# Lugares recomendados para visitar en Europa
## Francia
Esta es una selección de lugares:
* París (_Ile de France_)
* Estrasburgo (_Alsacia_)
Para un plan de visita adecuado alrededor de una semana.

Conversión a DOCX

Para convertir su documento Markdown a DOCX, use la herramienta pandoc [3]. Pandoc es una biblioteca de Haskell y se describe a sí misma como "el convertidor de documentos universal" o la "navaja suiza para la conversión de documentos". Está disponible para una variedad de plataformas como Linux, Microsoft Windows, Mac OS X y BSD. Pandoc se incluye comúnmente como un paquete para distribuciones de Linux como Debian GNU / Linux, Ubuntu y CentOS.

Una simple llamada para una conversión es la siguiente:

$ pandoc -o prueba.prueba docx.Maryland

El primer parámetro '-o' se refiere al archivo de salida, seguido del nombre del archivo ('prueba.docx '). La extensión del archivo ayuda a pandoc a identificar el formato de salida deseado. El segundo parámetro nombra el archivo de entrada; en nuestro caso es simplemente 'prueba.Maryland'.

La versión larga del comando que se muestra arriba contiene los dos parámetros '-f markdown' y '-t docx'. El primero abrevia el término 'sabor' y describe el formato del archivo de entrada. El segundo hace lo mismo para el archivo de salida y abrevia '-to'.

El comando completo es el siguiente:

$ pandoc -o prueba.docx -f markdown -t prueba docx.Maryland

Abrir el archivo convertido usando Microsoft Word da como resultado el siguiente resultado:

Para los diferentes elementos de texto, Pandoc usa hojas de estilo. Esto le permite ajustar estos elementos posteriormente según sus necesidades a lo largo de todo el documento. Las versiones más recientes de Pandoc también ofrecen lo contrario: puede convertir un archivo DOCX en Markdown de la siguiente manera:

$ pandoc -o prueba.prueba md.docx

Entonces, el archivo generado tiene el siguiente contenido:

Lugares recomendados para visitar en Europa
=====================================
Francia
------
Esta es una selección de lugares:
-   París (* Ile de France *)
-   Estrasburgo (* Alsacia *)
Para un plan de visita adecuado alrededor de una semana.

Opciones útiles de la línea de comandos

La lista de opciones de Pandoc es bastante larga. Los siguientes te ayudan a producir mejores resultados y te hacen la vida mucho más fácil:

* '-P' (versión larga '-preserve-tabs'): conserva las pestañas en lugar de convertirlas en espacios. Esto es útil para bloques de código con líneas sangradas que forman parte de su texto.

* '-S' (versión larga '-smart'): Produce una salida tipográficamente correcta.

Esta opción corrige comillas, guiones / guiones y puntos suspensivos ("..."). Se agregan espacios adicionales que no se separan después de ciertas abreviaturas como “Mr.".

* '-track-changes = value': especifica qué hacer con las inserciones, eliminaciones y comentarios que se producen con la ayuda de la función "Control de cambios" de Microsoft Word. El valor puede ser aceptar, rechazar o todos para incluir o eliminar los cambios realizados en el documento. El resultado es un archivo plano.

Para más opciones, consulte la documentación y la página del manual de Pandoc.

Resumen

La conversión entre Markdown y DOCX ya no es un misterio. Se hace en unos pocos pasos y funciona muy bien. Feliz piratería 🙂

Enlaces y referencias

* [1] Rebajas
* [2] Frank Hofmann: Introducción a Markdown
* [3] Pandoc

Agradecimientos

El autor desea agradecer a Annette Kalbow por su ayuda durante la preparación del artículo.

Tutorial de Battle for Wesnoth
The Battle for Wesnoth es uno de los juegos de estrategia de código abierto más populares que puedes jugar en este momento. Este juego no solo ha esta...
0 A.D. Tutorial
De los muchos juegos de estrategia que existen, 0 A.D. logra destacarse como un título completo y un juego táctico muy profundo a pesar de ser de códi...
Tutorial de Unity3D
Introducción a Unity 3D Unity 3D es un potente motor de desarrollo de juegos. Es multiplataforma, es decir, te permite crear juegos para dispositivos ...