Comment éditer du ReStructuredText facilement


 

Cela ne fonctionne plus avec Ubuntu 11.04 (Oneiric)

La communauté python utilise massivement le ReStructuredText et Sphinx pour créer de la documentation. Le gros avantage est qu’il ne demande pas beaucoup d’apprentissage et qu’il est capable de sortir des documents dans de nombreux formats (PDF, HTML, ODT, etc) et d’accepter des feuilles de style. Le problème qui revient souvent est la présence de fautes de syntaxe ce qui oblige à faire de nombreuses compilations du code dans les format de sortie finaux.

Enthought a écrit un début d’éditeur au sein de sa suite opensource (An editor for ReStructured Text et A Renewed ReStructuredText Editor!). Malheureusement aucun exécutable ne permet de lancer cet éditeur lors de l’installation de base de la suite. Voici comment corriger ce point :

$ sudo apt-get install python-enthoughtbase python-traits python-traitsgui
$ sudo touch /usr/local/bin/Rested
$sudo chmod +x /usr/local/bin/Rested

Ce fichier doit contenir le code suivant :

#!/usr/bin/python

from enthought.rst.rest_editor_view import ReSTHTMLEditorView
app = ReSTHTMLEditorView()
app.configure_traits()

Maintenant la commande ‘Rested nom_de_fichier’ vous permettra d’éditer vos fichiers avec un rendu en temps réel.

Récemment Enthought a sorti cet éditeur de sa suite pour qu’il puisse vivre sa propre vie et réduire ses dépendances. Vous pouvons obtenir et contribuer en utilisant le lien suivant : https://svn.enthought.com/svn/enthought/Rested/trunk

Il y a pas mal de petits bugs à corriger et une gestion des locales est à rajouter.

Installer et tester Django en 10 minutes sur une Ubuntu 9.10


J’ai trouvé une petite application web qui m’intéresse pour le site de l’AFPY : un éditeur de restructured text écrit pour Django. N’ayant jamais utilisé Django j’ai essayé de trouver une documentation pour installer et tester tout ça avec Ubuntu. Une recherche sur le moteur de recherche Exalead m’a permis de trouver la page de référence :

Django on Apache with mod_python

Seulement une page de texte pour une installation réussie… ou presque. Cette page a été mise à jour avant la sortie de la dernière mouture d’Ubuntu et quelques réglages ne fonctionnent plus.

Installation

Le module contenant les exemples a été déplacé dans python-django-doc :

sudo apt-get install libapache2-mod-python python-django python-django-doc
sudo vim /etc/apache2/sites-available/django-example

Configuration

Dans ce fichier vierge copier le texte suivant :

<Location "/django">
    SetHandler python-program
    PythonHandler django.core.handlers.modpython
    PythonDebug On
    PythonPath "['/usr/share/doc/python-django-doc'] + sys.path"
    SetEnv DJANGO_SETTINGS_MODULE examples.settings
</Location>

Personnalisation

Maintenant qu’Apache est configuré il faut modifier le fichier examples.urls pour le pas polluer la page d’accueil d’apache.

sudo vim /usr/share/doc/python-django-doc/examples/urls.py

En rajoutant django/ au début des expressions de correspondances nous n’interceptons plus la page d’accueil d’Apache :

from django.conf.urls.defaults import *

urlpatterns = patterns('',
    (r'^django/$', 'examples.views.index'),
    (r'^django/hello/', include('examples.hello.urls')),
)

Il ne reste plus qu’à activer notre configuration à la mode debian :

sudo a2ensite django-example
sudo /etc/init.d/apache2 reload

Votre site de test Django est disponible et tout cela ne vous a pas pris 10 minutes : http://localhost/django

Voilà qui est fait… il ne me reste plus qu’à regarder de plus près comment fonctionne Django. 🙂