Macros/Python Guide/fr/IDE

⇐ Introduction Ma première macro ⇒
 * Table des matières|

Environnement de développement

Nous abordons ici dans un premier temps, comment éditer les macros Python dans LibreOffice ?

Puis nous aborderons, comment assurer un suivit des modifications et comment travailler à plusieurs sur les macros ?

=Éditer ses macros Python= Comment éditer ses macros Python dans LibreOffice ?

Par défaut dans LibreOffice il n'est pas possible d'éditer des macros Python :

Nous pouvons observer deux arbres contenant des macros Python dans la Fenêtre de dialogue Macros Python.

Mes macros : Les macros de l'utilisateur
Ces macros se trouvent à l'emplacement :

~/.config/libreoffice/4/user/Scripts/python/
 * Pour linux:



Macros LibreOffice : Les macros accessibles à tous les utilisateurs
Ces macros se trouvent à l'emplacement :

/usr/lib/libreoffice/share/Scripts/python/
 * Pour linux:



L'éditeur de macros Python
LibreOffice n’offre pas encore d’éditeur pour Python. Ces limitations sont dues au manque de développeurs.

Si vous voulez des macros Python, vous devez donc utiliser un éditeur externe pour modifier vos macros affichées dans Mes macros ou dans Macros LibreOffice.

Il existe une extension, que vous pouvez télécharger sur le site des extensions de libreoffice Téléchargement, qui vous permet d'intégrer un éditeur python externe.

Installation d'un Environnement de Développement pour les macros Python
Pour l'installer, lancez LibreOffice.

Ouvrez le menu Outils/Gestionnaire des extentions... Ctrl+Alt+E.

Dans la boite de dialogue Gestionnaire des extensions, cliquez sur le bouton «Ajouter...» au bas de la fenêtre.

Dans la fenêtre Ajouter des extensions, recherchez et sélectionnez le fichier apso_v?.?.?.oxt lien téléchargement que vous avez téléchargé précédemment. Puis cliquez sur le bouton «Ouvrir».

Une fenêtre Contrat de licence du logiciel d'extension apparait. Lisez et faite défiler le texte jusqu'a la fin avec la bare de défilement vertical, ou le bouton «Défiler vers le bas».

Vous pouvez valider avec le bouton «Accepter» si vous êtes d'accord avec ce contrat pour utiliser l'extension.

Normalement, comme le lien de téléchargement ne référence pas la dernière version de cette extension, vous devez cliquer sur le bouton «Vérifier les mises à jour...» au bas de la boite de dialogue Gestionnaire des extensions.

Faite la mise à jour de l'extension en cliquant sur le bouton «Installer» de la fenêtre Mise à jour de l'extension.

Une fois l'extension mise à jour cliquez sur le bouton «OK».

Après un redémarrage de libreoffice un menu Gérer les scripts python Alt+Maj+F11 a été installé dans le menu Outils/Macros.

Configuration du lanceur de l'éditeur de macros Python
Vous devez d'abord avoir un éditeur pour Python d'installé.

Dans nos exemples : Kate
 * Pour Linux:

notepad++
 * Pour Windows

Dans la fenêtre Gestionnaire des extensions repérez la macro complémentaire ::APSO::. Cliquez sur le bouton «Options...». Dans la boite de dialogue Options-apso-EditorKicker : Exemples : pour Linux : kate pour Windows : C:\Program Files (x86)\Notepad++\notepad++.exe Exemples : pour linux : {FILENAME} pour windows : -y{COL} -x{ROW} {FILENAME}
 * 1) Dans la section Editeur saisissez votre éditeur de macro Python.
 * 1) Dans la section Options saisissez les paramètres à passer à l'éditeur en ligne de commande avec les variables utiles à la bonne exécution.

Faites attention à ne pas oublier deux particularités de Python :

 * respecter la casse (majuscules/minuscules) pour les noms de variables,
 * et mettre des parenthèses vides dans tout appel d’une méthode sans argument.

=La gestion de versions= La gestion de versions (en anglais version control ou revision control) consiste à maintenir des versions d'un ou plusieurs fichiers de macro. Ce logiciel va vous permettre d'avoir une historisation de vos modifications dans vos macros. Il va aussi être possible de partager collectivement le travail de dévellopement des macros.

Vous n'êtes pas obligé d'utiliser un logiciel de gestion de versions pour de petites macros (quelques dizaines de lignes), mais c'est vivement conseillé au dela d'une centaine de lignes.

Par contre si vous partez sur un développement collaboratif c'est une obligation.

La gestion des historisations et des versions avec Git
Git est un logiciel de gestion de versions décentralisé créer par Linus Torvalds.

On enttend par décentralisé la possibilité de versionner en local ses modifications/créations de macros Python, avec la possibilité de pousser ces modifications/créations sur une ressource centralisée pour un travail collaboratif.

Nous allons donc voir comment gérer ses versions de macros ?

Puis comment centraliser ses macros Python pour une gestion collaborative de leur développement ?

Pour installer le logiciel git exécutez ce tutoriel. Pour une documentation complète, consultez la page de manuel Git).

Pour installer l'analyseur graphique des différences Kdiff3 suivez ce lien puis «Download» sur le menu à votre gauche.

Sous Linux
fichier /home/user/.gitignore_global

fichier /home/user/.gitmessage.txt

La Gestion de versions des macros
Nous allons voir ici comment mettre en place la gestion de versions de nos macros python sous LibreOffice ?

Puis nous verrons les commandes de manipulation de base de la gestion de versions des macros.

Comment initialiser la gestion de versions sous LibreOffice ?
Pour initialiser un nouveau dépot de version, il suffit d'utiliser la commande init de git.

git init : crée un nouveau dépôt de macros. Cela crée un nouveau sous-répertoire nommé .git qui contient tous les fichiers nécessaires au dépôt ;

En ligne de commandes

 * Sous Linux

Pour plus d'informations voir la documentation

Git sous KDE avec Dolphin
Touche «F4» pour afficher ou masquer le terminal sous Dolphin.

Comment historiser un fichier ou une modification à git ?
Votre dépot local de git est composé de trois parties gérées par git.

La première est votre espace de travail où se situe réellement vos fichiers et dossiers.

La seconde est une liste des changements dans vos structures de fichiers et de répertoires de l'espace de travail, appelé l'index, qui prend en compte toutes vos modifications depuis le dernier stockage des changements.

La dernière est le stockage des changements dans la base git locale origin/master appelé HEAD qui pointe vers la dernière historisation que vous avez faite.



Comment ajouter un fichier ou une modification à la liste des changements ?
Comment voir les fichiers qui ont été modifiés ou créés entre l'espace de travail et le dépot git ?

git status : affiche l'état des modifications et de l'index.
 * Sous Linux

Comment voir ce qui a été modifié dans les fichiers ?

git diff : affiche les différences entre les fichiers de l'espace de travail et le dépot git.
 * Sous Linux

git add : ajoute des nouveaux éléments modifiés dans la liste des modifications à historiser (l'index).
 * Sous Linux

Pour plus de détails voir la documentation


 * Git sous KDE avoc Dolphin

Comment revenir sur les modifications de vos fichiers et dossiers, et sur l'historisation de la liste des changements ?

 * Revenir sur un changement dans un fichier


 * Revenir sur le positionnement dans la liste des changements

Pour plus d'informations sur git reset

Exemple de restauration d'un fichier supprimé ou
 * Sous Linux

Revenir sur l'ensemble des changement depuis la dernière historisation (commit).

Pour plus de détails voir la documentation

Comment ajouter les modifications au dépot git local de LibreOffice ?
git commit : intègre les modifications du répertoire de travail qui sont indexées pour historisation dans le dépot local de git. cd /home/utilisateur/.config/libreoffice/4/user/Scripts/python/ utilisateur@station:~/.config/libreoffice/4/user/Scripts/python$git commit -m 'Version initiale du projet' cd /usr/lib/libreoffice/share/Scripts/python/ utilisateur@station:/usr/lib/libreoffice/share/Scripts/python$sudo git commit -m 'Version initiale du projet'
 * En ligne de commandes
 * 1) Sous Linux
 * 2) Pour les macros de l'utilisateur
 * 1) Pour les macros partagées avec tous les utilisateurs

utilisateur@station:~/.config/libreoffice/4/user/Scripts/python$git log commit 5081147b1770efeff75ee1b7ac6ff99af5a2e735 Author: Franc SERRES  Date:  Tue Feb 28 22:53:56 2017 +0100 Version initiale du projet Signed-off-by: Franc SERRES 

Pour plus de détails voir la documentation


 * Git sous KDE avoc Dolphin

Comment ajouter une version de développement au dépôt git local de LibreOffice ?
Quel est le commit où nous voulons poser une étiquette ?
 * Sous Linux

Ou pour une vue synthétique :

Mise en place de l'étiquette avec un commentaire
 * Sous Linux

Visualiser le contenu de l'étiquette
 * Sous Linux

Pour plus de détail voir la documentation

Comment mettre en place un dépot git distant pour nos macros Python ?
Il existe quatre façons d'accéder à un dépot distant pour Git.
 * 1) Un partage réseau local.
 * 2) Un serveur web autentifiant.
 * 3) Un accès SSH.
 * 4) Le protocole Git.

le dépôt sur partage réseau local

 * Sous Linux

si vous n'avez pas déjà initialisez le dépôt local :
 * Sous Linux

se connecter au dépôt distant :
 * Sous Linux

Initialisation avec le contenu de votre dépôt local
 * Sous Linux

le dépôt accessible par ssh
Création de l'utilisateur du dépôt
 * Sous Linux

Ajout des utilisateurs pouvant accéder au dépôt avec leur clé ssh
 * Sous Linux

donnez les droits à git sur les répertoires du dépôt distant
 * Sous Linux

se connecter au dépôt distant :
 * Sous Linux

Pour plus d'informations voir la documentation

Gestion du dépôt distant
Se connecter à un dépot distant :
 * Git en ligne de commandes

Vérifier les connexions existantes déjà réalisées pour ce dépôt

git remote -v : URLs stockées par Git.
 * Sous Linux

Se connecter au serveur distant

git remote add  : se connecter à un serveur git distant par défaut origin.
 * Sous Linux

git remote add  : se connecter à un serveur git distant avec un autre nom que origin.
 * Sous Linux

Voir les différences entre le dépôt distant et le local :

git fetch : Met à jour la liste des différences entre le dépôt local et le dépôt distant.

Mettre à jour le dépôt local avec le dépôt distant :

git checkout : extrait le contenu dans le répertoire de travail.

git push origin master : met à jour le serveur distant avec le dépôt local master.

git pull : met à jour le dépôt local avec le serveur distant.

git clone  : clone un dépôt distant dans un dossier de macros (git init + git remote add + git fetch + git checkout).

Pour plus d'informations voir la documentation


 * Git sous KDE avoc Dolphin

Gestion des branches
git checkout -b Test : création d'une branche Test en local.
 * Git en ligne de commandes

git push origin Test : mise à jour de la branche Test sur le serveur distant.

git branch Test : crée une nouvelle branche de dévellopement de macros sur le serveur.

git branch -d Test : supprime la branche Test du serveur.

git diff Test master : Changements de la fussion de branches.

git checkout master : bascule sur la branche master.

git merge Test master : fusionne la branche Test dans master.


 * Git sous KDE avoc Dolphin

Pour plus d'informations voir la documentation

⇐ Introduction Ma première macro ⇒