Lenguajes de marcas ligeras

De WikiEducator
Saltar a: navegación, buscar


¿Qué es?

reStructuredText es un lenguaje de marcas ligero, de fácil lectura en su formato de fuente pero muy versátil para producir documentos complejos.

¿Qué puedo hacer?

  • Escribo la documentación en texto plano y después la convierto a distintos formatos.
  • Soporta versionado porque es texto
  • Se puede leer con cualquier editor

Documentación de referencia

¿Cómo escribo rst?

Documento de texto
Escribe un documento de texto plano. Suelen tener extensión .rst o .txt
Títulos y subtítulos
Para escribir un título basta con poner símbolos '=' debajo del texto del título, de la siguiente forma:
Título
======
Los símbolos = puestos debajo del texto deben tener el mismo tamaño que el título.
Para la escritura de subtítulos y subtítulos de segundo nivel, se utiliza los símbolos '-' y '*', respectivamente. Su utilización es igual que el de los títulos, ejemplo:
Subtítulo
---------

Subtítulo de Segundo Nivel
**************************

Subtítulo de Tercer Nivel
+++++++++++++++++++++++++
Estilo de texto
*cursiva* o **negrita**. ``texto en espacio fijo.``
Saltos de página en pdf
Cuando se necesita hacer un salto de página, se debe utilizar el siguiente código:
.. raw:: pdf

  PageBreak
Listas
listas con viñetas y numeradas:
* Lista con viñetas
* Lista con viñetas
#. Lista numerada
#. Lista numeradas
Imágenes
.. figure:: img/nombre_archivo.png
   :width: 100%
   :height: 100
   :scale: 50
   :alt: texto alternativo
El campo width indica el tamaño de la imagen en el documento, un 100% indica que utiliza el máximo posible ya sea el tamaño de la imagen o el tamaño de la hoja.
Más ejemplos con rst
Ejemplo: http://catherinedevlin.pythoneers.com/presentations/rst/show.rst
Resultado: http://catherinedevlin.pythoneers.com/presentations/rst/show.html

Herramientas de conversión

Ejemplos de uso

Abro un terminal. Ejemplo en linux:

$ rst2html <origen.rst> <destino.html>  --> crea destino.html
$ rst2pdf <origen.rst> --> crea origen.pdf
Ejemplos:
user@home $ rst2html intro.rst intro.html
user@home $ rst2pdf intro.rst
user@home $ rst2html --stylesheet=miHojadeEstilos.css doc.rst  # ruta de la hoja de estilos

Pandoc

http://johnmacfarlane.net/pandoc/demos.html

  • HTML fragment:
   pandoc README -o example1.html
  • HTML en un fichero
   pandoc -s README -o example2.html
  • HTML con tabla de contenidos, CSS y pie
  pandoc -s -S --toc -c pandoc.css -A footer.html README -o example3.html
  • LaTeX:
   pandoc -s README -o example4.tex
  • reStructuredText:
   pandoc -s -w rst --toc README -o example6.text
  • Rich text format (RTF):
   pandoc -s README -o example7.rtf
  • Beamer slide show:
 pandoc -t beamer SLIDES -o example8.pdf
  • Convertir página web
   pandoc -s -r html http://www.gnu.org/software/make/ -o example12.text
  • OpenDocument XML:
   pandoc README -s -w opendocument -o example20.xml
  • ODT (OpenDocument Text, readable by OpenOffice):
   pandoc README -o example21.odt
  • MediaWiki
 pandoc -s -S -w mediawiki --toc README -o example22.wiki
  • EPUB ebook:
   pandoc -S README -o README.epub
  • Word docx:
   pandoc -s -S README -o example29.docx


Mejorando la presentación

En Windows

  • Instalo Python (http://www.python.org/download)
  • Instalo setuptools
    • Descargar y ejecutar el archivo peak.telecommunity.com/dist/ez_setup.py desde el intérprete de comandos (cmd)
C:\Python27\python.exe ez_setup.py
C:\Python27\python.exe setup.py install
C:\Python27\python.exe setup.py install

Ya está todo instalado! Uso:

C:\Python27\Scripts\rst2html  origen.rst destino.html
C:\Python27\Scripts\rst2pdf.exe origen.rst [-s estilo.txt] -o destino.pdf

Creación de presentaciones con rst2pdf

Icon present.gif
Tip: rst2pdf tiene problemas con doctuils 0.8 . Es mejor instalar la versión del repositorio:
$ svn checkout http://svn.berlios.de/svnroot/repos/docutils/trunk/docutils
$ cd docutils
$ sudo python setup.py install


$ rst2pdf -s estilo.txt  slides.rst  -b1 -o slides.pdf 
$ rst2pdf -s estilo.txt  slides.rst  -e inkscape -b1 -o slides.pdf  # para poder usar svg


Icon activity.jpg

Actividad





Ejemplos para practicar y aprender

En muchos proyectos se usa restructuredtext para documentar y generar distintos formatos de doc. Mira estos ejemplos interesantes: