Landslide genera una presentación de diapositivas utilizando Markdown, ReST o Textile. Se basa en la plantilla html5slides de Google.
La siguiente rebaja produce esta presentación de diapositivas.
# Landslide
---
# Overview
Generate HTML5 slideshows from markdown, ReST, or textile.
![python](http://i.imgur.com/bc2xk.png)
Landslide is primarily written in Python, but it's themes use:
- HTML5
- Javascript
- CSS
---
# Code Sample
Landslide supports code snippets
!python
def log(self, message, level='notice'):
if self.logger and not callable(self.logger):
raise ValueError(u"Invalid logger set, must be a callable")
if self.verbose and self.logger:
self.logger(message, level)
python
y los siguientes módulos:
jinja2
pygments
para la coloración de la sintaxis de los bloques de código markdown
para rebajadocutils
para texto reestructuradotextile
para Textil watchdog
para vigilancia/regeneración automática con el indicador -w
Instale la última versión estable de Landslide con un administrador de paquetes de Python como pip
:
$ pip install landslide
Si quieres mantenerte al límite:
$ git clone https://github.com/adamzap/landslide.git
$ cd landslide
$ python setup.py build
$ sudo python setup.py install
.md
, .markdn
, .mdwn
, .mdown
o .markdown
h1
(p. ej. # My Title
)---
en rebajas) excepto al final de los archivos mdh1
.!lang
donde lang
es el identificador de idioma admitido por pygment como la primera línea con sangría.rst
o .rest
( no se admite .txt
)----
en RST) excepto al final de los archivos RST---
, como en Markdown landslide slides.md
o landslide slides.rst
presentation.html
recién generada.htmlO consígalo como documento PDF si Prince está instalado y disponible en su sistema:
$ landslide README.md -d readme.pdf
$ open readme.pdf
h
para alternar la visualización de la ayuda.left arrow
y right arrow
para navegart
para alternar una tabla de contenido para su presentación. Los títulos de las diapositivas son enlaces.ESC
para mostrar la descripción general de la presentación (Exposé)n
para alternar la visibilidad del número de diapositivab
para alternar la pantalla en blancoc
para alternar el contexto de la diapositiva actual (diapositivas anterior y siguiente)e
para hacer que las diapositivas llenen todo el espacio disponible dentro del cuerpo del documento.S
para alternar la visualización del enlace al archivo fuente para cada diapositivaHay varias opciones disponibles usando la línea de comando:
-h, --help show this help message and exit
-c, --copy-theme Copy theme directory into current presentation source
directory
-b, --debug Will display any exception trace to stdin
-d FILE, --destination=FILE
The path to the to the destination file: .html or .pdf
extensions allowed (default: presentation.html)
-e ENCODING, --encoding=ENCODING
The encoding of your files (defaults to utf8)
-i, --embed Embed stylesheet and javascript contents,
base64-encoded images in presentation to make a
standalone document
-l LINENOS, --linenos=LINENOS
How to output linenos in source code. Three options
availables: no (no line numbers); inline (inside
tag); table (lines numbers in another cell, copy-paste
friendly)
-o, --direct-output Prints the generated HTML code to stdout; won't work
with PDF export
-q, --quiet Won't write anything to stdout (silent mode)
-r, --relative Make your presentation asset links relative to current
pwd; This may be useful if you intend to publish your
html presentation online.
-t THEME, --theme=THEME
A theme name, or path to a landlside theme directory
-v, --verbose Write informational messages to stdin (enabled by
default)
-w, --watch Watch the source directory for changes and
auto-regenerate the presentation
-x EXTENSIONS, --extensions=EXTENSIONS
Comma-separated list of extensions for Markdown
-m, --math-output Enable mathematical output using mathjax
Landslide permite configurar su presentación utilizando un archivo de configuración cfg
, lo que facilita la agregación de directorios de origen y su reutilización en todas las presentaciones. Los archivos de configuración de Landslide utilizan la sintaxis cfg
. Si conoce los archivos ini
, se hará una idea. A continuación se muestra un archivo de configuración de muestra:
[landslide]
theme = /path/to/my/beautiful/theme
source = 0_my_first_slides.md
a_directory
another_directory
now_a_slide.markdown
another_one.rst
destination = myWonderfulPresentation.html
css = my_first_stylesheet.css
my_other_stylesheet.css
js = jquery.js
my_fancy_javascript.js
relative = True
linenos = inline
No olvide declarar la sección [landslide]
. Todos los archivos de configuración deben terminar en la extensión .cfg.
Para generar la presentación tal como está configurada, simplemente ejecute:
$ cd /path/to/my/presentation/sources
$ landslide config.cfg
Puede utilizar macros para mejorar su presentación:
Agregue notas a sus diapositivas usando la palabra clave .notes:
por ejemplo:
# My Slide Title
.notes: These are my notes, hidden by default
My visible content goes here
Puede alternar la visualización de notas presionando la tecla 2
.
Algunas otras macros también están disponibles de forma predeterminada: Agregue un código QR a su presentación usando la palabra clave También puede agregar notas del presentador a cada diapositiva siguiendo el contenido de la diapositiva con un título titulado "Notas del presentador". Presione la tecla 'p' para abrir la vista del presentador. Las macros se utilizan para transformar el contenido HTML de su diapositiva. Puede registrar sus propias macros creando clases derivadas plop Esto renderizará cualquier diapositiva como se muestra a continuación: Consulte la documentación sobre las extensiones Markdown disponibles aquí: Un tema Landslide es un directorio que sigue esta estructura simple: Si un tema no proporciona archivos HTML y JS, se utilizarán los del tema predeterminado. CSS no es opcional. Por último, también puedes copiar todo el directorio de temas a tu presentación pasando la opción Si no quiere molestarse en crear su propio tema, puede incluir sus propios archivos css y js de usuario en la presentación generada. Esta característica solo está disponible si usa un archivo de configuración de deslizamiento de tierra, configurando los indicadores Estos vincularán la hoja de estilo NOTA: Las rutas a los archivos css y js deben ser relativas al directorio desde donde ejecuta el comando Si tiene la intención de publicar su presentación HTML en línea, tendrá que usar la opción De esa manera, sólo tendrás que alojar todo el directorio de presentación en un servidor web. Por supuesto, no se requiere Python ni PHP ni nada más que un servidor web HTTP (como Nginx) para albergar una presentación aplastante. Ver https://github.com/adamzap/landslide/contributors.fx: foo bar
agregará las clases foo
y bar
al elemento Códigos QR
.qr
:
.qr: 450|http://github.com/adamzap/landslide
Notas del presentador
Registrar macros
landslide.macro.Macro
, implementando un método de process(content, source=None)
y devolviendo una tupla que contiene los contenidos modificados y algunas clases CSS que quizás desee agregar a su diapositiva
!python
import landslide
class MyMacro(landslide.Macro):
def process(self, content, source=None):
return content + '
!html
Uso avanzado
Configuración del archivo de destino personalizado
$ landslide slides.md -d ~/MyPresentations/presentation.html
Trabajar con directorios
$ landslide slides/
Trabajar con salida directa
$ landslide slides.md -o | tidy
Usar un tema de deslizamiento de tierra alternativo
$ landslide slides.md -t mytheme
$ landslide slides.md -t /path/to/theme/dir
Incrustación de imágenes codificadas en Base 64
$ landslide slides.md -i
Exportar a PDF
$ landslide slides.md -d presentation.pdf
Habilitar la notación matemática
Note that this require writing the slides in ReST format as well as
using Docutils 0.8 or newer.
$ landslide slides.rst -m
Habilitar extensiones de Markdown
$ landslide slides.md -x abbr
Tematización
mytheme/
|-- base.html
|-- css
| |-- print.css
| `-- screen.css
`-- js
`-- slides.js
--copy-theme
al comando landslide
:
$ landslide slides.md -t /path/to/some/theme --copy-theme
Hojas de estilo de usuario y Javascripts
css
y/o js
:
[landslide]
theme = /path/to/my/beautiful/theme
source = slides.mdown
css = custom.css
js = jquery.js
powerpoint.js
custom.css
y los archivos jquery.js
y powerpoint.js
dentro de la sección del archivo html de presentación.
landslide
. Publicar su presentación en línea
--relative
, así como la opción --copy-theme
para tener todos los enlaces de recursos relativos a la raíz de su presentación;
$ landslide slides.md --relative --copy-theme
Variables temáticas
base.html
debe ser un archivo de plantilla Jinja2 donde pueda aprovechar las siguientes variables de plantilla:css
: el contenido de la hoja de estilo, disponible mediante dos teclas, print
y screen
, ambas con:path_url
que almacena la URL de la ruta del archivo de activoscontents
que almacena el contenido del activojs
: el contenido de javascript, que tiene:path_url
que almacena la URL de la ruta del archivo de activoscontents
que almacena el contenido del activoslides
: la lista de diapositivas, cada una con estas propiedades:header
: el título de la diapositivacontent
: el contenido de la diapositivanumber
: el número de diapositivaembed
: ¿el documento actual es independiente?num_slides
: el número de diapositivas en la presentación actualtoc
: la tabla de contenido, que enumera las secciones del documento. Cada sección tiene estas propiedades disponibles:title
: el título de la secciónnumber
: el número de diapositiva de la secciónsub
: subsecciones, si las hay Alcance de estilos
css/screen.css
incluida con el tema que está utilizandocss/print.css
Autores
Autor original y líder de desarrollo
Coautor
Colaboradores
Autores y colaboradores de la plantilla base (diapositivas html5)