Landslide génère un diaporama à l'aide de markdown, ReST ou textile. Il s'appuie sur le modèle html5slides de Google.
La démarque suivante produit ce diaporama.
# 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
et les modules suivants :
jinja2
pygments
pour la coloration syntaxique des blocs de code markdown
pour Markdowndocutils
pour le texte restructurétextile
pour textile watchdog
pour la surveillance/la régénération automatique avec l'indicateur -w
Installez la dernière version stable de Landslide avec un gestionnaire de packages python comme pip
:
$ pip install landslide
Si vous voulez rester à la limite :
$ git clone https://github.com/adamzap/landslide.git
$ cd landslide
$ python setup.py build
$ sudo python setup.py install
.md
, .markdn
, .mdwn
, .mdown
ou .markdown
h1
(par exemple # My Title
)---
markdown) sauf à la fin des fichiers mdh1
.!lang
où lang
est l'identifiant de langue pris en charge par pygment comme première ligne en retrait.rst
ou .rest
( .txt
n'est pas pris en charge )----
en RST) sauf à la fin des fichiers RST---
, comme dans le markdown landslide slides.md
ou landslide slides.rst
presentation.html
nouvellement généréeOu obtenez-le sous forme de document PDF si Prince est installé et disponible sur votre système :
$ landslide README.md -d readme.pdf
$ open readme.pdf
h
pour basculer l'affichage de l'aideleft arrow
et right arrow
pour naviguert
pour basculer vers une table des matières de votre présentation. Les titres des diapositives sont des liensESC
pour afficher l'aperçu de la présentation (Exposé)n
pour basculer la visibilité du numéro de diapositiveb
pour activer/désactiver la suppression de l'écran.c
pour basculer le contexte de la diapositive actuelle (diapositives précédentes et suivantes)e
pour créer des diapositives remplissant tout l'espace disponible dans le corps du document.S
pour basculer l'affichage du lien vers le fichier source pour chaque diapositivePlusieurs options sont disponibles en utilisant la ligne de commande :
-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 permet de configurer votre présentation à l'aide d'un fichier de configuration cfg
, facilitant ainsi l'agrégation des répertoires sources et leur réutilisation dans les présentations. Les fichiers de configuration Landslide utilisent la syntaxe cfg
. Si vous connaissez les fichiers ini
, vous voyez l'image. Vous trouverez ci-dessous un exemple de fichier de configuration :
[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
N'oubliez pas de déclarer la section [landslide]
. Tous les fichiers de configuration doivent se terminer par l'extension .cfg.
Pour générer la présentation telle que configurée, exécutez simplement :
$ cd /path/to/my/presentation/sources
$ landslide config.cfg
Vous pouvez utiliser des macros pour améliorer votre présentation :
Ajoutez des notes à vos diapositives à l'aide du mot-clé .notes:
par exemple :
# My Slide Title
.notes: These are my notes, hidden by default
My visible content goes here
Vous pouvez basculer l'affichage des notes en appuyant sur la touche 2
.
Certaines autres macros sont également disponibles par défaut : Ajoutez un QR Code à votre présentation en utilisant le mot-clé Vous pouvez également ajouter des notes du présentateur à chaque diapositive en faisant suivre le contenu de la diapositive d'un titre intitulé « Notes du présentateur ». Appuyez sur la touche « p » pour ouvrir la vue du présentateur. Les macros sont utilisées pour transformer le contenu HTML de votre diapositive. Vous pouvez enregistrer vos propres macros en créant des classes dérivées plop Cela rendra n'importe quelle diapositive comme ci-dessous : Consultez la documentation sur les extensions Markdown disponibles ici : Un thème Landslide est un répertoire suivant cette structure simple : Si un thème ne fournit pas de fichiers HTML et JS, ceux du thème par défaut seront utilisés. CSS n'est pas facultatif. Enfin, vous pouvez également copier l'intégralité du répertoire du thème dans celui de votre présentation en passant l'option Si vous ne voulez pas vous soucier de créer votre propre thème, vous pouvez inclure vos propres fichiers CSS et js utilisateur dans la présentation générée. Cette fonctionnalité n'est disponible que si vous utilisez un fichier de configuration Landslide, en définissant les indicateurs Ceux-ci relieront la feuille de style REMARQUE : les chemins d'accès aux fichiers CSS et JS doivent être relatifs au répertoire à partir duquel vous exécutez la commande Si vous avez l'intention de publier votre présentation HTML en ligne, vous devrez utiliser l'option De cette façon, il vous suffira d'héberger l'intégralité du répertoire de présentation sur un serveur Web. Bien sûr, ni Python ni PHP ni rien d'autre qu'un serveur Web HTTP (comme Nginx) n'est requis pour héberger une présentation écrasante. Le Voir https://github.com/adamzap/landslide/contributors.fx: foo bar
ajoutera les classes foo
et bar
à l'élément slide Codes QR
.qr
:
.qr: 450|http://github.com/adamzap/landslide
Notes du présentateur
Enregistrement de macros
landslide.macro.Macro
, en implémentant une méthode process(content, source=None)
et en renvoyant un tuple contenant le contenu modifié et certaines classes CSS que vous souhaiterez peut-être ajouter à votre diapositive
!python
import landslide
class MyMacro(landslide.Macro):
def process(self, content, source=None):
return content + '
!html
Utilisation avancée
Définition d'un fichier de destination personnalisé
$ landslide slides.md -d ~/MyPresentations/presentation.html
Travailler avec des répertoires
$ landslide slides/
Travailler avec la sortie directe
$ landslide slides.md -o | tidy
Utiliser un thème alternatif de glissement de terrain
$ landslide slides.md -t mytheme
$ landslide slides.md -t /path/to/theme/dir
Incorporation d'images codées en base 64
$ landslide slides.md -i
Exportation au format PDF
$ landslide slides.md -d presentation.pdf
Activation de la notation mathématique
Note that this require writing the slides in ReST format as well as
using Docutils 0.8 or newer.
$ landslide slides.rst -m
Activation des extensions Markdown
$ landslide slides.md -x abbr
Thématisation
mytheme/
|-- base.html
|-- css
| |-- print.css
| `-- screen.css
`-- js
`-- slides.js
--copy-theme
à la commande landslide
:
$ landslide slides.md -t /path/to/some/theme --copy-theme
Feuilles de style utilisateur et Javascripts
css
et/ou js
:
[landslide]
theme = /path/to/my/beautiful/theme
source = slides.mdown
css = custom.css
js = jquery.js
powerpoint.js
custom.css
et les fichiers jquery.js
et powerpoint.js
dans la section du fichier html de présentation.
landslide
. Publication de votre présentation en ligne
--relative
, ainsi que celle --copy-theme
pour avoir tous les liens d'actifs relatifs à la racine de votre présentation ;
$ landslide slides.md --relative --copy-theme
Variables du thème
base.html
doit être un fichier modèle Jinja2 dans lequel vous pouvez exploiter les variables de modèle suivantes :css
: le contenu de la feuille de style, disponible via deux touches, print
et screen
, toutes deux ayant :path_url
stockant l'URL du chemin du fichier d'actifscontents
stockant le contenu de l'actifjs
: le contenu javascript, ayant :path_url
stockant l'URL du chemin du fichier d'actifscontents
stockant le contenu de l'actifslides
: la liste des slides, chacune ayant ces propriétés :header
: le titre de la diapositivecontent
: le contenu de la diapositivenumber
: le numéro de la diapositiveembed
: le document actuel est-il autonome ?num_slides
: le nombre de diapositives dans la présentation actuelletoc
: la Table des Matières, listant les sections du document. Chaque section dispose de ces propriétés disponibles :title
: le titre de la sectionnumber
: le numéro de diapositive de la sectionsub
: sous-sections, le cas échéant Portée des styles
css/screen.css
fournie avec le thème que vous utilisezcss/print.css
Auteurs
Auteur original et responsable du développement
Coauteur
Contributeurs
Auteurs et contributeurs du modèle de base (html5-slides)