LibreOffice : Macros, sécurité, activation, programmation
Je conçois pas mal de fichiers LibreOffice dans lesquels il y a des macros permettant d'automatiser certaines tâches répétitives qui n'existent pas à l'origine. Pour cela, j'utilise le langage de programmation OOoBasic mais on peut aussi utiliser le Python (entre autres).
Les macros (ou scripts) sont des sous-programmes qui peuvent être potentiellement dangereux pour votre système à cause de puissantes commandes permettant à LibreOffice d'interagir avec votre ordinateur : on peut imaginer un effacement, la transmission de données à notre insu, ...
Du coup, il faut être extrêmement prudent⋅e lorsqu'on exécute un fichier contenant des macros car tout le monde n'est malheureusement pas bien intentionné.
[Ubuntu] Impression d'étiquettes et de cartes avec gLabels et LibreOffice Calc
Il existe une version plus récente de cette documentation sur cette page : https://forge.apps.education.fr/thierrym/glabels-creation-cartes-etiquettes
Pour imprimer des étiquettes et des cartes, on peut utiliser LibreOffice mais il existe une application beaucoup plus puissante qu'on ne trouve que sous GNU/Linux qui est gLabels. Elle permet entre autre d'imprimer directement des codes barres (utile pour une gestion de bibliothèque par exemple) avec beaucoup de formats supportés (EAN, UPC, CODE39, CODE 128 et ISBN).
Le problème que l'on peut rencontrer avec gLabels, c'est un manque de modèles pour certaines imprimantes ou étiqueteuses. Par contre, rien n'empêche de les créer.
L'autre limitation est que l'impression ne peut se faire qu'en recto. Pour le verso, il faudra bidouiller soit en créant 2 fichiers (un pour le recto et un autre pour le verso) ou en se servant du paramètre d'impression permettant de n'imprimer que les pages impaires (odd) ou paires (even en anglais) avec un fichier .csv dans lequel on a inséré des lignes spécifiques pour le verso (ça peut se faire par macro dans LibreOffice mais ça demande là d'autres compétences).
Si l'on veut des verso simples à obtenir on pourra se tourner vers les projets CartesMD ou CréaCartes hébergés sur la Forge des Communs Numériques Éducatifs proposée par l'Éducation nationale.
Remarques :
- Même si le projet est âgé (datant d'avant 2010) et qu'il n'évolue pas trop, ne vous y trompez pas, il est toujours aussi performant et fonctionnel. Je n'ai pas trouvé aujourd'hui d'équivalent en terme de souplesse et de personnalisation aussi poussée, tout en évitant les lignes de codes même s'il peut demander une certaine technicité pour générer les fichiers .csv avec LibreOffice.
- Sous GNU/Linux, gLabels est le seul logiciel qui m'a permis d’imprimer des étiquettes une par une à partir de l’imprimante d’étiquettes LabelWriter 450 Duo de Dymo.
Liens utiles :
- Site officiel : https://glabels.org/ cette page ne semble plus accessible et renvoie désormais sur cette page Github : https://github.com/jimevins/glabels-qt
- https://doc.ubuntu-fr.org/glabels
- Page concernant les codes barres pour une bibliothèque (site de Anne-Marie CUBAT sur PMB) : http://amcubat.be/docpmb/codes-barres-concepts-base
- Tutoriel complet : https://help.gnome.org/users/glabels/stable/index.html.fr
- Autre tutoriel (en anglais) : https://blog.worldlabel.com/2010/getting-started-with-glabels-labels-cards-gnulinux.html et avec la seconde partie en usage plus avancé : https://blog.worldlabel.com/2010/advanced-usage-with-glabels-labelscards-linuxgnu.html
- Ci-dessous en pièce jointe un tutoriel pdf pour générer des étiquettes avec des codes barres pour PMB.
Possibilités avancées à partir d'un fichier .csv :
[FreeCAD] Réaliser des tampons encreurs avec Inkscape
Pour le scrapbooking mais pas seulement, il peut être intéressant de fabriquer ses propres tampons. L'idée est de réaliser le motif à l'aide d'Inkscape et ensuite d'incorporer le fichier .svg obtenu dans FreeCAD pour générer le fichier .stl à imprimer.
Sources :
- Incorporer un fichier SVG dans FreeCAD : https://wiki.freecad.org/Import_text_and_geometry_from_Inkscape/fr
- Créer des tampons à la découpeuse laser : https://ressources.labomedia.org/tampon_laser
I- Travail dans Inkscape
- Préparer son texte : le mettre sur un chemin par exemple via le menu Texte → Mettre suivant un chemin.
- Puis convertir le texte en chemin via le menu Chemin → Objet en chemin (ou raccourci Maj+Ctrl+C).
- Séparer en sous-chemins toutes les parties du texte via le menu Chemin → Séparer (ou raccourci Maj+Ctrl+K).
- Ajuster la taille pour qu'elle corresponde à la taille du tampon (plus facile à réaliser à ce stade que dans FreeCAD).
- Faire une rotation pour que ça corresponde au sens voulu (horizontale par exemple).
- Faire une symétrie axiale "Retourner horizontalement" (raccourci H) pour lire de droite à gauche (le tampon est inversé par rapport au résultat final).
- Aller dans le menu Fichier → Propriétés du document... (ou raccourci Maj+Ctrl+D) et cliquer sur le bouton "Ajuster la taille de la page au contenu" pour réduire la taille juste aux lettres.
- Enregistrer au format .SVG Simple.
- Conseils : pour un résultat optimal, ne pas faire des motifs ni trop fins ni trop petits, bien marquer les séparations entre les différentes parties.
II- Travail dans FreeCAD
[OpenSCAD] Informations utiles
OpenSCAD est un logiciel libre permettant de concevoir des objets en 3 dimensions par programmation (contrairement à FreeCAD).
Un de ses principaux avantages est de pouvoir personnaliser (customiser) les dimensions de l'objet de façon très facile afin de pouvoir l'adapter. Ça peut être utile par exemple pour des embouts de tubes. Je joins ci-dessous un fichier permettant de générer des embouts à insérer dans des tubes carrés ou rectangulaires.
Pages utiles :
- https://openscad.org/
- https://static.fablab-lannion.org/tutos/openscad/ : diaporama en français très complet
- https://rudi.giot.eu/Tutorials/files/OpenScad.pdf : très bon tutoriel pdf en français
- http://edutechwiki.unige.ch/fr/Tutoriel_OpenSCAD : wiki en français
- https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Customizer
- http://edutechwiki.unige.ch/fr/Tutoriel_OpenSCAD
- Pour forcer l'affichage des décimales, on rajoute après le point virgule ce commentaire : // 0.01 (ici on force l'affichage sur 2 décimales)
ProfondeurExtraInsert = 1; // 0.01
- Pour afficher les étapes en montrant les différentes pièces ajoutées ou soustraites, il faut rajouter des caractères spéciaux devant l'instruction qu'on souhaite voir :
- dièse (#) -> forme en rouge
- pour-cent (%) -> forme en transparence
- point-d’exclamation (!) -> seule cette forme est affichée
- étoile (*) -> forme invisible
- Lorsqu'on a des formes compliquées, on peut les préparer dans des modules pour ensuite les appeler lorsqu'on les utilisera. Ça permet de réduire les imbrications de fonctions.
- Pour afficher la valeur des variables dans la console, on utilise la fonction "echo".
Fichiers paramétriques utiles :
- Fabriquer des rondelles ou des O ring en plastique souple (TPU) pour des joints d’étanchéité dans ce projet https://www.thingiverse.com/thing:3953156 avec un fichier OpenSCAD à télécharger.
- Pour fabriquer des objets avec des filetages (vis et écrous par exemple) :
[Kdenlive] Raccourcis et astuces utiles
Raccourcis et astuces utiles lorsqu'on utilise Kdenlive pour du montage vidéo.
Site officiel en français : https://kdenlive.org/fr/
- Couper un clip : Shitf + R ou utiliser l'icône "Ciseaux".
- Se placer au début ou à la fin d'un clip : Alt + flèches droite ou gauche
- Pour rajouter un temps au début de la timeline : faire un clic droit sur la timeline, cliquer sur "Insérer un espace" en cochant "Insérer un espace dans toutes les pistes" et indiquer la durée du rajout.
- Pour supprimer du temps vide au début de la timeline : faire comme ci-dessus en choisissant "Supprimer l'espace dans toutes les pistes".
- Pour ajouter du texte ou des formes à inscruster dans la vidéo (titre, info, cadre, ...) : Aller dans le menu "Projet" puis "Ajouter une vidéo de titre...".
- Pour générer les sous-titres automatiquement : aller dans "Projet" -> "Sous-titres" -> "Reconnaissance vocale...". Il sera quand même de ré-ajuster manuellement (majuscules, ponctuation, coupure des phrases, correction mots mal reconnus, ...).
- Pour les sous-titres, suivre les conseils donnés ici : https://videomenthe.fr/guide-sous-titrage-sme#codes-couleurs
- Les clips possédent à leur début et à leur fin, des effets intégrés sous forme de cercle permettant de faire des transitions.
- Pour produire la vidéo finale, aller dans le menu "Projet" -> "Rendu" ou utiliser le racourci CTRL + Entrée, choisir le format (MP4-H264/AAC à privilégier) puis cliquer sur le bouton "Vers un fichier".
[LibreOffice Calc] Astuces utiles
Je recense ici des petites astuces pour le tableur LibreOffice Calc que l'on est amené à utiliser régulièrement mais que l'on peut oublier.
Page pour les fonctions (intéressant pour les matrices par exemple) : https://help.libreoffice.org/latest/fr/text/scalc/01/04060107.html
Remarque : pour accéder directement à la dernière colonne ou la dernière ligne du tableur, utiliser le raccourci CTRL + Flèche BAS ou CTRL + Flèche DROITE. En rajoutant la touche SHIFT, on sélectionne en même temps. https://wiki.documentfoundation.org/Faq/Calc/147/fr
A- Suppression des espaces en fin de cellules :
- Menu "Édition" -> "Rechercher et remplacer..." (raccourci CTRL+H).
- Dans le champ "Rechercher", saisir "\s+$" ou " +$" (pour supprimer un seul espace à la fin, on utilisera l'expression "\s$" ou " $", l'espace peut se coder "\s")
- Dans le champ "Remplacer", laisser vide
- Cocher la case "Expressions régulières"
Remarque : le choix des autres options dépendra du besoin.
[BASH] Scripts utiles
Cette page me permet de retrouver des scripts en bash qui peuvent resservir (car on oublie lorsqu'on ne pratique pas souvent...).
- Site permettant de vérifier et déboguer ses scripts : https://www.shellcheck.net/. Il est aussi possible d'installer shellcheck dans sa distribution pour tester ses scripts avec un commande du type :
shellcheck my_script
- Conseils sur la robustesse des scripts : https://connect.ed-diamond.com/linux-pratique/lp-133/rendre-ses-scripts-bash-plus-fiables
- Conseils pour sécuriser ses scripts : https://blog.stephane-robert.info/docs/admin-serveurs/linux/scripts-shell-securises/
Un script bash est un fichier exécutant un ensemble de commandes de façon automatisée (équivalent des macros).
Pour lancer ce fichier, on tapera dans un terminal une commande du type :
./fichier_script.sh
Pour commencer un script, on commence par la 1ère ligne commençant par "#!" qu'on appelle sheBang. On écrira :
#!/bin/bash (façon "classique") ou aussi pour faciliter la portabilité #!/usr/bin/env bash (source : https://www.cyberciti.biz/tips/finding-bash-perl-python-portably-using-env.html)
I- Problème d'espace, de tirets ou de caractères spéciaux dans les noms de fichiers et de répertoire
Voir :
- Fixer le séparateur avec IFS : https://michauko.org/blog/ifs-separateurs-scripts-bash-174/
- Ignorer les tirets avec l'option "--" ou "./" : https://fr.linux-console.net/?p=2297#gsc.tab=0
II- Créer un sous-dossier identique dans tous les dossiers d'un même répertoire :
Sources :
Page 3 sur 38