yeKblog

Participer à un projet libre est un jeu... Et toi, à quoi tu joues ?

Aller au contenu | Aller au menu | Aller à la recherche

GNU nano

nano est un éditeur de texte ncurses facile à prendre en main (les raccourcis les plus utiles sont affichés), il fait moins peur que vim ou emacs lorsque l’on débute. Ces derniers sont puissants et très pratiques une fois configurés et/ou pris en main. Mais il arrive que l’on soit sur une machine qui n’a pas emacs, qui n’a pas notre config de vim,… il est alors très intéressant de connaître la base de nano. Voici les raccourcis dont j’ai personnellement besoin.

Raccourcis

Base

  • F1 pour afficher l’aide
  • ctrl+x Quitter
  • ctrl+o Enregistrer
  • ctrl+k Couper la ligne courante vers le presse-papiers
  • alt+t Couper tout ce qui est après le curseur (jusqu’à la fin du document)
  • alt+6 Copier la ligne courante dans le presse-papiers (penser à maintenir maj). Ce raccourci étant innaccessibe, ma config ajoute alt+' pour copier
  • ctrl+u Coller le presse-papiers
  • alt+u Annuler la dernière opération
  • alt+e Refaire la dernière opération annulée

Recherche

  • ctrl+w Rechercher une chaîne ou une expression rationnelle
  • alt+w Recommencer la dernière recherche
  • alt+↑ / alt+↓ Rechercher la prochaine occurrence en avant/arrière
  • alt+r Remplacer une chaîne ou une expression rationnelle
  • alt+g Aller à la ligne et à la colonne indiquées

Navigation

  • alt+] Aller à ([{ correspondant
  • ctrl+espace ⇔ ctrl+→
  • alt+espace ⇔ ctrl+←
  • ctrl+a ⇔ home
  • ctrl+e ⇔ end
  • alt+\ ⇔ ctrl+home
  • alt+/ ⇔ ctrl+end
  • ctrl+y Monter d'un écran
  • ctrl+v Descendre d'un écran
  • alt+( Aller au début du paragraphe
  • alt+) Aller à la fin du paragraphe

Utile

  • alt+a Marquer le texte depuis la position du curseur (maj+←↑→↓ fonctionne aussi directement)
  • alt+3 Commenter/décommenter la ligne courante ou les lignes marquées (penser à maintenir maj). Ce raccourci étant innaccessibe, ma config ajoute alt+* pour commenter
  • ctrl+c Indiquer la position du curseur
  • alt+d Statistiques du document
  • alt+→ / alt+← Passer d’un fichier à l’autre (si plusieurs fichiers ouverts)
  • alt+b Sauvegarde automatique (on/off)

Indentation

  • alt+} / alt+{ Indenter/Désindenter la ligne courante ou les lignes marquées
  • alt+i Activer/Désactiver l’indentation automatique
  • alt+q La touche tabulation ajoute des espaces au lieu de \t (on/off)

Interface

  • alt+h Activer/Désactiver la Touche « Début » intelligente
  • alt+o Utiliser 1 ligne de plus pour l'édition (commutateur)
  • alt+s Défilement progressif/par bloc
  • ctrl+alt+$ Affichage automatique sur plusieurs lignes (on/off)
  • ctrl+alt+# Afficher/Cacher les numéros de lignes
  • alt+x Afficher/Cacher les raccourcis principaux
  • alt+c Afficher/Cacher la position du curseur

Texte

  • alt+p Afficher/Cacher les blancs (espace, tabulation)
  • alt+y Activer/Désactiver la coloration syntaxique

Configuration

Sur un nano non configuré, il me "suffit" alors de faire : alt+h, alt+i, alt+s, ctrl+alt+$ pour obtenir la configuration qui me convient. Pour activer cela directement, mon fichier de configuration ~/.nanorc (généré à partir d’un cp /etc/nanorc ~/.nanorc) :

set smarthome                 # équivaut à alt+h
# set morespace                 # équivaut à alt+o
set autoindent                # équivaut à alt+i
set smooth                    # équivaut à alt+s
set softwrap                  # équivaut à ctrl+alt+$
# set casesensitive             # recherche sensible à la casse quel raccourci clavier ?
# set linenumbers               # équivaut à ctrl+alt+#
set matchbrackets "(<[{)>]}"  # plus d’utilités pour alt+]
set tabsize 4                 # tabulation de 4 au lieu de 8
set tabstospaces              # espaces au lieu de tabulation

bind ^S savefile main         # ctrl+s sauvegarde
bind M-B cutwordleft main     # alt+b supprime le mot précédent le curseur
bind M-N cutwordright main    # alt+n supprime le mot suivant le curseur
bind ^Q exit main             # ctrl+q quitte
bind M-* comment main         # les alt+num ne sont pas pratiques alt+* pour commenter
bind M-' copytext main       # les alt+num ne sont pas pratiques alt+' pour copier

## To include all existing syntax definitions, you can do:
include "/usr/share/nano/*.nanorc"
## Paint the interface elements of nano.
 set titlecolor brightwhite,blue
 set statuscolor brightwhite,green
 set numbercolor cyan
 set keycolor cyan
 set functioncolor green
## In root's .nanorc you might want to use:
# set titlecolor brightwhite,red
# set statuscolor brightwhite,red
# set numbercolor magenta
# set keycolor brightmagenta
# set functioncolor magenta

Dans Tilix, nano pose quelques difficultés

alt+(↑←↓→0123456789) permettent de basculer d’un terminal à l’autre (pavage), il est donc impossible d’utiliser les raccourcis correspondants de nano :

  • alt+→ / alt+← Passer d’un fichier à l’autre (si plusieurs fichiers ouverts)
  • alt+↑ / alt+↓ Rechercher la prochaine occurrence en avant/arrière

Pour les raccourcis alt+num, il est possible d’activer capslock mais ce n’est pas idéal, surtout que ceux-ci sont vraiment utiles :

  • alt+6 Copier la ligne courante dans le presse-papiers
  • alt+3 Commenter/décommenter la ligne courante ou les lignes marquées

Pour résoudre ce désagrément, une solution simple consiste à ajouter la touche super à ces raccourcis clavier de Tilix : Remplacer alt+(0123456789↑←↓→) par alt+super+(0123456789↑←↓→)

Conclusion

Deux points m’énervent dans nano :

  1. La coloration syntaxique : lorsqu’il y a des \" parmi des ", c’est vite illisible et il n’y a pas de couleur pour les espaces et tabulations (je pourrais regarder comment améliorer cela avec https://github.com/nanorc/nanorc peut-être).
  2. les raccourcis claviers sont "originaux" sans que je ne puisse comprendre la logique.

Si un gros fichier de configuration est nécessaire et que je dois apprendre de nouveaux raccourcis clavier, autant apprendre vim et ainsi jouir d’un logiciel puissant dont l’ergonomie est maximale (au détriment de l’intuitivité). Il est peut-être temps pour moi de commencer l’apprentissage…

Installation de SciDAVis sous Debian et Manjaro

Après plusieurs essais infructueux, j’ai fini par réussir à installer SciDAVis 1.21 sous Debian ! Voici mon aide mémoire, version étoffée et légèrement commentée de INSTALL.md.

a8f640460a634f36.png

Installer la dernière version de SciDAVis sous Manjaro

Juste pour comparer, voici la méthode qui m’a permis d’obtenir SciDAVis sous Manjaro… 💖

sudo pacman -S yaourt base-devel
yaourt scidavis

Tout est dit…

Installer la dernière version de SciDAVis sous Debian

Comme la version de SciDAVis disponible dans les dépôts est vieille, nous allons passer par la compilation.

sudo apt install build-essential git
git clone https://github.com/highperformancecoder/scidavis.git
cd scidavis

Il faut installer toutes les dépendances nécessaires à la compilation. Pour trouver l’ensemble des dépendances, j’ai ajouté les dépôts deb-src dans mon fichier /etc/apt/sources.list, puis tapé sudo apt-get build scidavis, ce qui est équivalent à :

sudo apt install docbook docbook-to-man libboost-date-time-dev libboost-date-time1.62-dev libboost-serialization1.62-dev libboost-serialization1.62.0 libboost1.62-dev libgl1-mesa-dev libglu1-mesa-dev libgsl-dev libmuparser-dev liborigin2-1v5 liborigin2-dev libosp5 libqt4-dev libqt4-dev-bin libqt4-opengl-dev libqtassistantclient-dev libqwt5-qt4-dev libqwtplot3d-qt4-dev mesa-common-dev opensp pyqt4-dev-tools python-qt4-dev python-sip-dev qt4-linguist-tools qt4-qmake sip-dev

Lors des commandes qmake et make plusieurs erreurs bloquent la compilation :

ls: impossible d'accéder à '/usr/lib*/libqwt5.so': Aucun fichier ou dossier de ce type
ls: impossible d'accéder à '/usr/lib*/libqwt5-qt4.so': Aucun fichier ou dossier de ce type
src/Graph3D.h:32:41: fatal error: qwtplot3d/qwt3d_surfaceplot.h: No such file or directory

Pour trouver quel paquet permet d’ajouter le fichier manquant j’ai tenté apt-file search libqwt5-qt4.so mais le problème n’était pas là.

sudo ln -s /usr/lib/libqwt-qt4.so.5 /usr/lib/libqwt5-qt4.so
sudo ln -s /usr/lib/libqwt5-qt4.so /usr/lib/libqwt5.so
sudo ln -sf /usr/include libscidavis/src/qwtplot3d
sudo ln -sf /usr/include/qwtplot3d-qt4 scidavis/qwtplot3d

Pour les deux premiers liens symboliques je me suis débrouillé, pour les deux suivants, merci rapport de bug 286. On peut maintenant lancer la compilation

qmake CONFIG+=python CONFIG+=liborigin
make qmake
sudo make INSTALL_ROOT=/usr/local
sudo make install

Ne reste plus qu’à gérer l’icône de l’application :

sudo cp scidavis/icons/scidavis.svg /usr/share/pixmaps/
sudo sed -i "s#Icon=scidavis#Icon=/usr/share/pixmaps/scidavis.svg#g" /usr/share/applications/scidavis.desktop

Grâce à cette installation j’ai appris à me servir de sed, apt-get build et apt-file search certes, mais j’ai quand même pas mal galéré et perdu de temps… 💔 Et encore j’avais la chance de pouvoir utiliser apt-get build parce qu’une ancienne version de SciDAVis est disponible dans les dépôts, sinon toutes les dépendances auraient dues être trouvées à la mano… Y a des jours où je me demande si je ne devrais pas passer définitivement à Manjaro au lieu de sans cesse me demander si ça sera suffisamment stable à l’usage…

Scratch 2 offline sous Debian 64 bits

Je viens d’acheter « Crée ton jeu de casse-briques avec Scratch » pour que mon fils de 10 ans s’amuse (mon fils de 6 ans a commencé à le lire également…). Le livre a l’air intéressant mais pour en suivre les conseils il faut Scratch 2 et non Scratch 1.4 (présent dans les dépôts).

51QNxfVRvIL._SX340_BO1_204_203_200_.jpg

L’installation de Scratch2 sous Debian 64 bits est plus ou moins une horreur. Il faut dire qu’il est nécessaire d’installer Adobe Air au préalable et comme toujours avec les produits Adobe, c’est l’enfer…

Après avoir suivi différents tutos sans succès, je désespérais tellement que je pensais à l’installer via Wine, mais j’ai fini par tomber sur une documentation claire et efficace. Comme il s’agit d’un pdf, les copier/coller sont parfois source de problèmes (retour chariot intempestif). Comme j’ai trouvé cette notice après beaucoup d’acharnement (pas de résultat lors des recherches sur le blog de l’auteur par exemple, j’ai peur de perdre les informations à long terme, je préfère donc en avoir une copie ici (instructions auxquelles j’ai apporté quelques très légères modifications) :

i386

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libgtk2.0-0:i386 libstdc++6:i386 libxml2:i386 libxslt1.1:i386 libcanberra-gtk-module:i386 gtk2-engines-murrine:i386 libqt4-qt3support:i386 libgnome-keyring0:i386 libnss-mdns:i386 libnss3:i386

Liens symboliques

sudo ln -s /usr/lib/i386-linux-gnu/libgnome-keyring.so.0/usr/lib/libgnome-keyring.so.0
sudo ln -s /usr/lib/i386-linux-gnu/libgnome-keyring.so.0.2.0/usr/lib/libgnome-keyring.so.0.2.0

Adobe Air SDK

sudo mkdir /opt/adobe-air-sdk
wget http://airdownload.adobe.com/air/lin/download/2.6/AdobeAIRSDK.tbz2 -O /tmp/AdobeAIRSDK.tbz2
sudo tar jxf /tmp/AdobeAIRSDK.tbz2 -C /opt/adobe-air-sdk

Adobe Air

wget https://aur.archlinux.org/cgit/aur.git/snapshot/adobe-air.tar.gz -O /tmp/adobe-air.tar.gz
sudo tar xvf /tmp/adobe-air.tar.gz -C /opt/adobe-air-sdk
sudo chmod +x /opt/adobe-air-sdk/adobe-air/adobe-air

Scratch-456.0.4

À adapter s’il y a une nouvelle version ici

sudo mkdir /opt/adobe-air-sdk/scratch
wget https://scratch.mit.edu/scratchr2/static/sa/Scratch-456.0.4.air -O /tmp/Scratch-456.0.4.air
sudo cp /tmp/Scratch-456.0.4.air /opt/adobe-air-sdk/scratch/

Extraction de l’icône du jeu

sudo unzip -j /opt/adobe-air-sdk/scratch/Scratch-456.0.4.air icons/AppIcon128.png -d /opt/adobe-air-sdk/scratch/

Création d’un raccourci

sudo nano /usr/share/applications/scratch2.desktop

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Exec=/opt/adobe-air-sdk/adobe-air/adobe-air /opt/adobe-air-sdk/scratch/Scratch-456.0.4.air
Icon=/opt/adobe-air-sdk/scratch/AppIcon128.png
Terminal=false
Name=Scratch 2
Comment=Programming system and content development tool
Categories=Application;Education;Development;ComputerScience;
MimeType=application/x-scratch-project

Une fois l’application lancée, il est possible d’en changer la langue en cliquant sur le globe à gauche du menu « File ».

Post-it Inkscape : Réinitialiser le centre de rotation

Ce matin, j’ai eu le plaisir d’assister à quelques conférences de Grafik Labor.

logo2016grafiklabor.png

Grafik Labor est un événement proposé par l’AFGRAL, dont l’objectif est de fédérer autour des logiciels libres graphiques : des conférences Gimp, Blender, Inkscape, Scribus, Synfig, Gstreamer,… pour moi c’est un peu le paradis. Ça se déroulait le 2 et 3 juillet à Rennes et les locaux d’AFGRAL étaient complets, c’est vraiment cool de voir que le sujet intéresse plein de monde.

Ce matin, Elisa de C. Guerra présentait les bases de Inkscape. Je connais déjà assez bien ce soft puisque j’initie moi-même régulièrement mes collègues à l’utilisation de ce logiciel de dessin vectoriel. La conférence était donc très intéressante pour moi, non pas pour apprendre les bases mais pour voir comment Elisa, que je sais très bonne pédagogue, développe sa présentation, pour éventuellement m’en inspirer pour la forme, le rythme ou le contenu.

Une question s’est posée : Comment réinitialiser la position du centre de rotation ? C’est une question que je m’étais déjà posée sans jamais être suffisamment ennuyé pour chercher à la résoudre.

Quel est le problème ?

Lorsque vous cliquez deux fois avec l’outil de sélection sur un objet, vous faites apparaître les poignées de rotation et de cisaillement. Au centre de l’objet apparaît une croix : le centre de rotation.

Capture_du_2016-07-03_17-08-36.png

Il est possible de déplacer cette croix pour personnaliser l’axe de rotation mais comment faire pour replacer ce centre de rotation parfaitement au centre de l’objet si on l’a préalablement bougé ?

Quelles solutions ?

Une solution très simple proposée par un membre de l’assistance, ce matin, m’a intriguée et j’ai donc tenté de trouver une solution plus "correcte". Voici toutes les solutions que j’ai identifiées (la première est celle proposée, les deux autres sont celles que je viens de trouver, en bidouillant lors de la rédaction ce billet) :

  • Sélectionner l’objet et le grouper (Ctrl+G). Même si l’objet n’est groupé qu’à lui même, le centre de rotation n’est plus celui de l’objet mais celui du groupe, par défaut au centre donc… Ceci à l’avantage de permettre de réinitialiser le centre de rotation sans perdre définitivement le centre de rotation personnalisé.
  • Sélectionner l’objet et afficher l’éditeur XML (Maj+Ctrl+X), redéfinir à 0 les valeurs de inskscape:transform-center-x et inskscape:transform-center-y

Capture_du_2016-07-03_17-18-41.png

  • Tout simplement : Shift+clic gauche sur la croix (amusant de constater finalement qu’une solution très simple est disponible)

Post-it : Dégradé de couleur en fonction de la hauteur Blender Cycles

Dans tout logiciel de mathématiques tel que Matlab Gnuplot, Matplotlib ou SageMath, on obtient facilement des graphiques 3D dont la couleur varie en fonction de la cote (l’axe z) mais dans Blender, ce n’est pas aussi automatique, il m’a fallu pas mal chercher :

blender_colorrampe_z.png

[Source]

J’avais déjà, dans un autre cas de figure, cherché à modifier la couleur en fonction de la cote : à partir d’une image prise avec une caméra, je souhaitais obtenir une courbe 3D représentant la luminosité. La cote était alors automatiquement extraite de l’image, il suffisait d’utiliser la même source pour la couleur :

blender_displacement_p.jpg

Post-it : Ciel étoilé Blender Cycles

Il est possible d’obtenir un ciel étoilé magnifique avec Cycles et beaucoup de nodes :

elbrujodelatribu_preview7_medium_4b805987f368e804cdc037a353573915e5ff509e.jpg

Mais j’avais besoin de quelque chose de très simple, juste quelques points blancs sur fond noir. Pour cela, il suffit de détourner une texture Voronoi, quelques nodes suffisent :

blender_cycles_stars_sky.png

Rappel : Pour obtenir le Multiply, Add → Converter → Math.

Post-it : Grille Blender Cycles

J’essaye de représenter la déformation de l’espace-temps par une masse importante (c’est à la mode en ce moment…). Mais pour commencer, il faut déjà réussir à représenter une grille dans le moteur de rendu Cycles. La solution qui me semble la plus simple consiste à détourner Brick Texture :

blender_cycles_grille.png

Révisions de tables d’addition et multiplication - Mathématiques CE2

Pour que mon fils apprenne et révise ses tables d’addition et multiplication j’ai commencé par lui poser des questions, comme l’ont fait mes parents lorsque j’étais enfant. Puis j’ai tenté de laisser l’informatique prendre le relais car apprendre en jouant est souvent apprécié par les enfants (et par les adultes aussi d’ailleurs).

Calcul pour les enfants

Après quelques recherches parmi la tonne de jeux éducatifs, j’ai lancé Calcul pour les enfants sur tablette (application gratuite mais non libre et avec publicités).

L’avantage de cette application est qu’il est possible d’activer/désactiver certaines tables, ce qui est très pratique lorsque votre enfant doit apprendre les tables de 1 à 5 mais n’a pas encore appris les suivantes.

J’avais initialement proposé de jouer à TuxMath, un jeu avec un temps limite par opération, mais il se mettait dans un état de stress tel, malgré un compte à rebours très long, qu’il me semblait préférable de trouver autre chose. Cette application n’a pas de limite de temps, il pouvait jouer sereinement. Il a beaucoup jouer à ce jeu et son petit frère de 4 ans (3 quand il a commencé) était très content d’y jouer également pour imiter son frère (se limitant aux additions et se servant des doigts de son père comme boulier). Seul souci, en cas de faute, mon plus grand fils refuse de continuer la partie, cache la section de l’écran où sa faute apparaît et se met dans des états impossibles (crise de larme,…). Rien à faire pour le raisonner.

[Digression] Quand je le vois jouer à la console, je constate que les jeux actuels aident énormément les joueurs en difficulté, il n’est pas nécessaire de recommencer encore et encore si on rate. Les Mario actuels (par exemple) disposent d’un mode automatique si vous ratez trop de fois, si l’on compare cela au fait que le premier Mario sur NES n’avait pas de sauvegarde… Est-ce parce que c’était difficile que l’idée de tout recommencer ne me dérangeait pas ? Je me rappelle avoir fait et refait les premiers niveaux de Wonder Boy des dizaines voire des centaines de fois et avoir adoré ce jeu, cela contraste tellement avec mon fils qui hurle qu’il est nul parce qu’il a fait une erreur… bref, il faudra que je le fasse jouer à de vieux jeux pour vérifier ma théorie et que je m’occupe de ce problème d’assurance. [/Digression]

iTooch CE2

Puisqu’il entre en CE2, j’ai installé quelques jours avant la rentrée, deux applications pour qu’il révise un peu. Il adore iTooch Mathématiques CE2 et iTooch Français CE2 (applications gratuites mais non libres et avec publicités). Dans ces deux applications pour tablette, des questions sont posées dans plusieurs catégories, des étoiles récompensent les meilleurs résultats, on peut choisir la notation (18/20 ou B+). Mon fils ne semble pas ressentir de frustration, il aime jouer. Il faut dire que du jeudi au samedi, les écrans sont interdits à la maison, sauf quelques rares fois, pour les jeux éducatifs, que ne serait-il pas prêt à faire pour jouer sur écran ?

TuxMath

L’année scolaire commence par des révisions de tables d’addition. J’aurais pu le faire un peu rejouer au premier jeu cité, mais cette fois c’est l’extrême lenteur à laquelle il répond qui pose problème. J’ai donc ressorti TuxMath (jeu gratuit et libre) sur PC.

Les opérations tombent plutôt lentement, surtout en plein écran (fullHD), il est possible de choisir un peu le niveau, le mode arcade est certainement le plus intéressant. Les parties sont très longues, du coup, il a pu réviser sans pour autant ressentir de lassitude. Parmi les regrets, je trouve dommage de ne pas pouvoir supprimer la table d’addition de 0 car cette table est assez peu utile à réviser, quelques réglages plus fins sur les niveaux seraient intéressants. Mais de toute façon, le mélange laser/astéroïdes rend le jeu attirant.

Les révisions vont bon train jusqu’à ce qu’une nouvelle crise de larme n’apparaisse après plusieurs minutes de jeu, le deuxième jour. Non pas qu’il en ait raz-le-bol mais parce que le jeu commence à être trop rapide pour lui. C’est un peu comme Tetris, au fur et à mesure le jeu accélère et ne s’arrête qu’une fois que vous n’arrivez plus à suivre et qu’un « Game Over » apparaisse. Le problème ici est que mon fils considère alors qu’il perd, qu’il est mauvais, qu’il a échoué. Décidément, cette idée est tenace et un brin agaçante ! J’ai beau lui expliquer que c’est le fonctionnement du jeu en mode arcade qui est ainsi, qu’il ne peut pas continuer indéfiniment et qu’il ne faut pas voir cela comme une défaite mais comparer son score aux fois précédentes, rien à faire pour le raisonner. Décidément il va falloir que je travaille ce point.

Réfléchir est un jeu... Et toi, à quoi tu joues ?

Je pourrais tester encore et encore les centaines d’applications pour en trouver une qui convient mais j’ai finalement trouvé plus amusant. Il me faut un jeu sans timing par question, sans « Game Over », qui permet de sélectionner les tables à réviser où le score dépend de la vitesse, du nombre de fautes… après tout, c’est une bonne occasion de jouer moi-même : Je vais l’écrire ce jeu !

Je n’ai pas besoin de fioriture, un simple script en console devrait suffire. Avec un peu de chance, si le code est suffisamment simple, je pourrais initier mes enfants au code (Lourd est le parpaing de la réalité sur la tartelette aux fraises de nos illusions) ! C’est parti pour l’écriture d’un script en python ! Par quoi commencer ? Ben, apprendre python, pardi ! Je constate assez vite que c’est plus simple que ce à quoi je m’attendais initialement. Il faut dire que mon script ne demande pas de fonctionnalités bien complexes…

Après quelques courtes minutes et recherches sur la toile, j’obtiens le code suivant :

#!/usr/bin/python3
# -*- coding: utf-8 -*-
from random import randint
x=(randint(1,9))
y=(randint(1,9))
z=x+y
print(x,"+",y,"=")
input_reponse = input("Votre réponse : ")
if (z==int(input_reponse)):
  print ("yes")
else:
  print("no")

Alors certes, cela ne casse pas trois pattes à un canard mais c’est moi qui l’ai fait ! Je suis content de moi, il m’en faut peu j’en conviens, mais je suis content d’avoir créé moi-même le programme dont j’avais besoin. Pas besoin de connaissance poussées en informatique, je suis persuadé que la majeure partie des gens aurait pu écrire ces 12 lignes. Le problème est que la plupart des gens ne se savent pas capables de le faire, un manque de confiance mélangé, il faut l’admettre et c’est normal, à une dose de flemme saupoudrée de total désintérêt. C’est dommage car c’est amusant (bien plus stimulant et intéressant que la partie de solitaire sur tablette à laquelle ma voisine de car jouait hier soir, si vous voulez mon avis).

Un tout petit peu plus loin

Quelques minutes et une boucle while plus tard, j’obtiens une petite soixantaine de lignes de code. J’ai maintenant un script assez simple et qui convient pour mon usage.

Je pourrais enregistrer les meilleurs scores, vérifier si la réponse est bien un entier, faire une interface graphique avec des dessins, ajouter les soustractions, multiplications, divisions,… cela me permettrait d’apprendre un peu plus le langage et l’algo… un jour peut-être, quand le besoin se fera ressentir. À moins que ce script me serve justement à démontrer aux fistons qu’il est facile d’obtenir un programme simple en le codant soi-même…

J’ai mis cela sur mon dépôt GitHub sous licence libre évidemment (CC0 aurait été plus approprié que GPL vu la simplicité de l’algo mais bon, j’avais le fichier de licence GPL déjà prêt…). Aurez-vous envie d’y jeter un œil ? Je ne pense pas que cela puisse vous être d’une grande utilité, c’est plus l’idée de faire soi-même que le code que je voulais partager ici.

Pour le score, pas facile de trouver le juste équilibre, j’ai fini par choisir cette formule :

score=partie_entière_de( 1000× (points-0.2×nb_fautes)/temps_moyen_par_question )

je ne sais pas si c’est le meilleur choix mais il n’est pas aisé de trouver la formule idéale… il va falloir que j’y réfléchisse un peu plus… chic !?

Bonus : Smartphone

Il existe une application Android qui permet d’exécuter des scripts Python (dans mon cas Python3) : QPython3. Celle-ci ne semble pas libre (we will push on the whole qpython to be opensource gradually) et demande l’accès à beaucoup de choses dans mon téléphone (il y a une explication à cela, puis-je vraiment faire confiance ?) mais je n’ai pas trouvé d’équivalent dans F-droid…. Toujours est-il que maintenant mes enfants pourront faire des additions sur mon téléphone dans la salle d’attente du médecin, ce sera toujours plus utile qu’Angry Birds.

Conclusion

Je n’ai pas fait grand chose ici, bien moins que pour mes scripts nautilus, bien moins que n’importe quel développeur que vous aurez l’occasion de croiser. Je n’ai rien développé d’important ici, ce n’est pas du code dont je peux être particulièrement fier pourtant j’éprouve une satisfaction certaine, le plaisir de réfléchir à des algorithmes simples, le plaisir d’apprendre une nouvelle syntaxe, le goût des choses simples comme diraient Ludwig Schweisfurth et son épouse Wilhelmine.

Grammalecte − Lettre ouverte Académie Française

Voici le message que je viens d’envoyer à l’Académie Française.

Bonjour

N’est-ce pas le rôle de l’académie française de soutenir une initiative comme http://fr.ulule.com/grammalecte/ (plus d’informations et une interview de l’auteur : http://framablog.org/2015/05/13/plus-erreurs-de-grammaire-ni-typographie-avec-grammalecte/)

Un tel logiciel libre devrait à mon sens être promu par l’académie française ou même être développé par elle. Mais le plus efficace étant sûrement de soutenir les compétences là où elles sont, l’académie ne devrait-elle pas participer au financement de cette campagne ? À défaut d’employer cette personne…

Qu’en pensez-vous ?

Grammalecte est un projet qui doit être soutenu ! Avoir à disposition un logiciel libre et gratuit pour corriger et apprendre la grammaire française est indispensable. À défaut de proposer une grammaire plus logique qu’historique !

Plot, Fit et religion

Il y a quelques mois, j’ai envoyé un courriel à mes collègues pour tenter de remplacer l’usage de Origin par une alternative libre. Sur le moment, je n’avais pas diffusé plus largement mon message mais je ne suis peut-être pas seul à rencontrer ce genre de situation, je me suis dit qu’il était peut-être pertinent de le copier ici.

Quand je vois les sommes engagées dans des logiciels propriétaires par mon employeur, je me dis souvent qu’il serait préférable que de telles sommes aillent dans des logiciels libres, cela éviterait de payer pour chaque nouvelle version, et côté libre, pourrait peut-être influencer le développement pour prioriser le développement de fonctionnalités qui nous sont nécessaires !

Il arrive régulièrement que j’entende des discours très engagés (voir agressifs) pour inciter les gens à utiliser des logiciels libres. Je suis ici plus modéré ; je constate que mes gamins ne m’écoutent pas plus quand je gueule (ou alors il faut vraiment hurler !?), je me dis que de la même façon, mes collègues m’écouteront plus si mon discours est posé et argumenté.

J’ai tenté d’être le plus concis mais complet possible :

screenshot.png

Introduction

Parfois on utilise des logiciels payants parce qu’on ne connaît pas d’alternative gratuite. Origin, par exemple, a un coût non négligeable et nous pose quelques problèmes depuis la fin de xp (les postes de stagiaires sont sous GNU/Linux). Hier, lors d’une discussion Joachim, un nom est lâché QtiPlot. Après quelques recherches sur celui-ci, je souhaite vous parler de son fork¹ : SciDAVis (page wikipedia).

Religion

Je sais qu’il y a des aficionados de Saint Origin et que ceux-ci refuseront de changer de logiciel. Même si l’alternative proposait des fonctionnalités supplémentaires et était reconnu par tous comme meilleur, ces personnes refuseraient de changer (le changement étant souvent chronophage, source de problèmes ou au moins de craintes, rayez les mentions inutiles), mon but n’est pas d’imposer un logiciel à tous et je peux comprendre que l’on ne souhaite pas changer, je n’ai aucun problème avec cela, mon but est de proposer une alternative gratuite multiplateforme pour tous ceux qui n’ont pas de religion en terme de "plot-age".

Alternative crédible ?

Pour les postes de stagiaires, je ne proposais que Gnuplot, un outil puissant mais en ligne de commande, ce qui peut rendre son utilisation ou sa prise en main complexe². SciDAVis est un logiciel dont l’interface est très proche d’Origin, je l’installerai sur tous les postes stagiaires une fois la promo 2014 partie. Vous pourrez alors leur proposer ce logiciel pour tracer, pour "fit-ter",… Je ne sais pas si cette solution peut vous convenir aussi bien qu’Origin, n’étant que très peu "plot-eur" moi-même mais les fonction de fit sont là, les plots ont des rendus corrects en 2D et 3D, les formats de sortie sont variés (eps, pdf, png, svg,…), il semble que la solution soit vraiment intéressante. Il existe aussi Veusz comme alternative crédible, mais aussi Grace (GraceGTK et QtGrace), Kst ou encore LabPlot (comme quoi, les solutions alternatives ne manquent pas) et proposent, semble-t-il, des fonctions similaires, à tester…

Annotations

¹ → Nouveau logiciel créé à partir du code source d'un logiciel existant. Ici le fork est né à la suite de divergence de point de vues ou d'objectifs parmi les développeurs

² → Par défaut, les courbes sont graphiquement suboptimales, heureusement il existe quelques conseils intéressants.

Blender User Group Rennes

Mercredi soir, j’ai rejoint les locaux de ActivDesign pour une première réunion d’utilisateurs de Blender sur Rennes. Nous n’avions pas tellement communiqué sur la mise en place de cette réunion, du coup il n’y avait pas foule, mais pour les prochaines, nous devrions faire un effort.


Afficher une carte plus grande

L’idée de ce BUGR (Blender User Group Rennes) a été initiée le mardi 13 décembre 2014, nous avions alors tenter de lister ce qui pourrait être fait, ce qui nous intéresserait. Mais depuis cette date chacun vaquait à ses occupations et il aura fallut attendre ce mercredi 11 mars. L’idée est de se réunir une fois par mois pour faire ses propres projets Blender. En cas de problème on a des collègues sous la main pour répondre à quelques questions. On en profite pour papoter logiciel libre, montrer nos créations, nos tutos,…

blender-socket.png

La diversité de Blender fait que nous avons chacun eux des activités clairement différentes : Découverte de l’éditeur de nœuds, tests de jeux, pour ma part j’ai profité de l’occasion pour faire mon premier essai de tracking vidéo. Pendant 2h30 chacun a avancé ces projets.

Je n’ai jamais participé à des GUL (Groupe d’utilisateurs Linux), je n’ai jamais été attiré par de telles réunions. Ici, j’ai tout de suite été intéressé et je ne regrette aucunement. Je n’avais jamais été attiré par le côté communautaire des logiciels libres, n’en voyant pas vraiment l’intérêt pour mon propre usage (si ce n’est de trouver plein de réponses dans les forums). Maintenant, je constate que, même pour quelqu’un de casanier comme moi, de telles réunions peuvent être particulièrement agréable.

Si Blender vous intéresse et que vous êtes pas loin de Rennes, peut-être nous croiserons nous bientôt…

GNU/Linux est meilleur que Windows pour lancer des applications Windows…

Mise en situation : Un de mes collègues a utilisé il y a longtemps, le logiciel Big-Ci pour concevoir ses schémas et typons électroniques. Depuis pas mal de temps, il utilise le logiciel libre Kicad mais à une époque il utilisait ce logiciel propriétaire. C’est un logiciel qui avait été acquis à une époque lointaine, d’ailleurs la version qu’il avait était initialement prévue pour Windows 3.1. Mais il était possible de la faire tourner encore sous XP. Mon collègue n’utilise plus jamais Big-Ci mais aujourd’hui il a voulu dépanner un appareil dont le schéma avait été fait avec ce vieux logiciel et évidemment enregistrer dans le seul format proposé, format que lui seul est capable d’ouvrir. Sous Windows 7 (64bits qui plus est), malgré toutes les tentatives, malgré les options de compatibilité cochées, rien à faire, le logiciel ne se lancera pas.

J’ai un poste qui tourne en 32 bits, Ubuntu GNU/Linux 14.04. J’ai demandé à mon collègue de m’envoyer son dossier contenant l’exécutable, juste pour le test. J’ai installé Wine, cela à fonctionné, j’ai pu faire une capture d’écran du schéma qu’il avait lui-même fait mais qu’il ne pouvait plus lire car Windows n’est pas capable de lancer son vieux logiciel.

J’étais assez satisfait mais le fait d’être en 32 bits m’avantageait et la comparaison n’était alors pas possible de façon objective. Impossible donc de vanter les mérites de GNU/Linux en l’état… J’ai donc voulu me mettre dans les mêmes conditions que le poste Windows. Dans une Virtualbox elementaryOS GNU/Linux Freya Beta en 64 bits, j’ai installé Wine

bigci_p.jpg

Maintenant je peux le dire, Microsoft devrait installer Wine par défaut dans Windows, cela permettrait de proposer un OS avec une meilleure compatibilité descendante ! Enfin, si Microsoft veut vraiment fournir cette compatibilité… J’entends tellement régulièrement dire que les logiciels libres sont souvent de moins bonne qualité que leurs homologues propriétaires (alors que bien souvent il s’agit plus d’un problème d’habitude…), ça fait du bien de pouvoir montrer un exemple aussi flagrant que celui-ci.

zsh

Toutes les distributions GNU/Linux que j’ai eu l’occasion de tester proposent un terminal monochrome et laid par défaut. Le terminal est un outil particulièrement pratique (après quelques temps d’apprentissage). Je n’arrive pas à concevoir que les distributions GNU/Linux continuent à proposer un prompt austère par défaut alors qu’il est possible d’en obtenir de très sympathiques assez facilement. Depuis que je suis sous Linux (début 2003), les interfaces graphiques ont fait de gros progrès : de plus en plus esthétiques, pleines d’effets, les icônes et les couleurs sont jolies,… mais côté terminal, rien, nada, que dalle, aucun changement esthétique ! Je ne demande pas à avoir un Final Term (même si j’aimerais bien son redimensionnement dynamique) mais juste quelques fonctionnalités et couleurs !

J’utilise zsh depuis quelques temps et celui-ci me convient très bien, surtout une fois adapté comme bon me semble. Mais cette personnalisation, j’aimerais pouvoir la faire très facilement lorsque je suis sur un nouveau poste, je mets donc ici les commandes et les fichiers qui me permettent d’obtenir ma configuration.

Définir zsh par défaut

sudo apt-get install zsh # installation de zsh
chsh -s /bin/zsh # définir zsh comme shell par défaut

Oh My ZSH!

Oh My ZSH! est un projet très intéressant, dont le but est de rendre votre terminal esthétique et fonctionnel. Je n’ai pas installé Oh My ZSH! directement mais j’ai repris une partie du thème agnoster que je trouvais très esthétique (pas parfait dans tty mais ce n’est pas trop grave) pour ma config zsh. Je râte certainement plein de fonctionnalités (plus de 180 plugins, plus de 140 thèmes !) en procédant ainsi mais j’ai l’impression de mieux comprendre mes fichiers ainsi (allez comprendre…).

Pour utiliser ce thème il faut installer 3 polices de Powerline Font Family, que je duplique ici : Inconsolata-dz-Powerline.otf, Menlo-Powerline.otf et mensch-Powerline.otf

J’ai personnalisé le fichier de configuration de zsh pour y ajouter mes modifications personnelles (des alias principalement) ou des modifications pompées dans la config de mon collègue Gardouille. Mon fichier de configuration .zshrc est donc très adapté à mon usage, mais sait-on jamais certains points peuvent peut-être vous intéresser.

wget -P $HOME/.fonts/ http://yeknan.free.fr/dc2/public/zsh/Inconsolata-dz-Powerline.otf http://yeknan.free.fr/dc2/public/zsh/Menlo-Powerline.otf http://yeknan.free.fr/dc2/public/zsh/mensch-Powerline.otf # Téléchargement des fonts
wget -O $HOME/.zshrc http://yeknan.free.fr/dc2/public/zsh/zshrc # Téléchargement du fichier de configuration

Redémarrer le terminal pour que les modifications prennent effet.

Personnalisation

Si vous êtes connecté sur votre machine vous n’avez pas forcément besoin de voir pseudo@machine en permanence, par défaut, cette configuration cache cette information, si vous vous appelez yekcim… Si votre pseudo n’est pas yekcim :

sed -i s/yekcim/votrepseudo/g .zshrc

Si vous n’appréciez pas cette dissimulation, vous pouvez commenter les deux lignes en question

capture_zsh.png

Textext dans Inkscape 0.91

Intégrer des formules LaTeX directement dans Inkscape est quasi indispensable pour les scientifiques utilisateurs de ce logiciel de dessin vectoriel. Il est possible de le faire directement via la menu Extensions → Rendu → LaTeX…. Si cette entrée n’est pas disponible, c’est qu’il manque une dépendance, mais tant qu’à installer celle-ci, profitez-en pour installer Textext, l’extension LaTeX plus complète qui permet de ré-éditer les équations.

Si vous téléchargez Textext directement depuis le site officiel alors que vous utilisez Windows le script ne se lancera pas. Il est nécessaire d’utiliser une version modifiée de Textext. J’ai trouvé cette version modifiée sur le net, j’en mets une copie ici car beaucoup des liens que j’ai trouvé ont tendance à renvoyer vers des 404… [sources : 1 2 3].

Windows

logo_windows.png

Choisissez les fichiers d’installation 32 ou 64 bits en fonction de votre système. Si vous ne savez pas lequel il vous faut : Clic droit sur l’icône Ordinateur (sur le Bureau ou dans le Menu Windows) → Propriétés, l’information est affichée dans Système : Type du système.

  1. Installer Miktex, Ghostscript, Ghostview, ImageMagick
  2. Installer pstoedit en personnalisant l’installation :
    1. Installation dans le dossier de Gostgum : C:\Program Files\Ghostgum\pstoedit
    2. Cocher : « .h and .lib files for using the pstoedit.dll in other programs » et « plugins SVG, MIF, EMF, CGM format (shareware) »
  3. Copier les fichiers textext.py et textext.inx dans : C:\Program Files\Inkscape\share\extensions
  4. Extraire site-packages.zip dans : C:\Program Files\Inkscape\python\Lib\site-packages
  5. Clic droit Ordinateur (sur le Bureau ou dans le Menu Windows) : Propriétés → Paramètres système avancés → Variables d'environnement… Dans Variables système → Path, ajouter :

;C:\Program Files\gs\gs9.15\lib;C:\Program Files\gs\gs9.15\bin;C:\Program Files\ghostgum\pstoedit

MacOS

logo_mac.png

  1. Installer pstoedit via Macports ou Fink
  2. Copier les fichiers textext.py et textext.inx dans le dossier : /Applications/Inkscape.app/Contents/Resources/extensions

GNU/Linux

logo_linux.png

  1. Installer les dépendances : texlive pstoedit pdf2svg
  2. Copier les fichiers textext.py et textext.inx dans le dossier : ~/.config/inkscape/extensions/ ou dans /usr/share/inkscape/extensions si vous souhaitez installer l’extension pour tous les utilisateurs.

Post-it : Activer temporairement la composition html dans Thunderbird

Je rédige une fois l’an des courriels en html. C’est donc plutôt rare mais chaque fois je suis particulièrement agacé : activer/désactiver l’html est particulièrement fastidieux dans Thunderbird (Édition → Paramètres des comptes → Rédaction et adressage → Rédiger les messages en html). J’ai cherché une extension pour passer d’un mode à l’autre en un clic… je n’ai rien trouvé. Pourtant, il existe une solution très simple, encore faut-il la connaître…

Pour rédiger un mail en html alors que vous êtes configuré en mode de rédaction texte (ou l’inverse) : Maintenir Maj enfoncé en cliquant sur « Écrire », « Répondre » ou « Transférer ».

Le genre d’astuce très pratique qu’il faut noter dans un coin si on ne veut pas l’oublier !

[source]

Mes scripts… mes règles de structure

Dans le navigateur de fichier Nautilus, j’ai très vite apprécié la possibilité d’écrire des scripts qui simplifient souvent les tâches courantes (tourner des images, renommer en fonction des données exif, convertir,…). Ces scripts sont accessibles dans le menu qui apparaît lors d’un clic droit sur un fichier, cette possibilité devient très vite indispensable. J’utilisais pas mal cette possibilité il y a quelques années et dernièrement j’ai remis le nez dans ces fameux nautilus-scripts.

J’ai re-téléchargé un ou deux packs de scripts car les miens avaient disparus suite à une mauvaise manipulation ou je ne sais quelle maladresse combinée à une sauvegarde défaillante. J’ai montré cette fonctionnalité à un de mes collègues. Il a trouvé cela génial. Mais étrangement les scripts que j’avais mis de côté ne fonctionnaient pas sur sa machine. J’ai pensé qu’il n’avait pas installé les dépendances (ce qui était en effet le cas) mais un problème peut en cacher un autre : les scripts en question utilisaient la variable $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS or il utilise Nemo, cette variable a été renommée $NEMO_SCRIPT_SELECTED_FILE_PATHS dans ce navigateur… J’ai trouvé cela très ennuyeux et c’est là que commence mon aventure.

Les scripts sont simples à écrire, quelques lignes suffisent mais en contrepartie, les scripts sont souvent assez peu bavards : s’il y a une erreur de dépendance, bien rien ne se passe ; si vous appliquez un script prévu pour un certain type de fichier, sur un autre, cela peu donner des résultats catastrophiques car de plus, certains scripts écrasent le/les fichier(s) source(s) ! Je me souviens d’un clic légèrement décalé par rapport à celui désiré qui avait détruit un de mes svg en appliquant une conversion prévue pour un jpg…

Du coup, j’ai créé mon dépôt de scripts sur github (je migrerais sûrement sur gitlab un jour), j’y dépose évidemment mes scripts mais surtout mes règles de structures. Mes scripts respectent donc les règles suivantes :

  • N’écrase jamais l’entrée !!!
  • Fonctionne aussi bien dans le prompt que dans n’importe quel navigateur de fichiers supportant les nautilus-scripts
  • Des notifications (en cas de problèmes de dépendances ou de type de fichiers invalide), on ne laisse pas l’utilisateur dans l’incompréhension en cas d’erreur !
  • Le type de fichier est déterminé par la commande file --mime-type -b "$input" | cut -d "/" -f2 (au besoin remplacer f2 par f1, supprimer le cut) jamais en déterminant les caractères après le dernier point ou pire les 3 derniers caractères du nom de fichier !
  • Tous les textes en anglais car les traductions sont difficiles à maintenir, le moins de texte possible.
  • Le nom du script contient des caractères utf-8 permettant de mieux comprendre le fonctionnement (ajouter ↶ ou ↷ pour un script de rotation permet de déterminer le sens c’est très pratique !)
  • Le nom du script contient des variables si le script est décliné en plusieurs version
  • Utilisation directe (pas de boite de dialogue)
  • Faciles à copier et à adapter (donc commenté, proprement indenté,…)

Je modifie régulièrement, au fur et à mesure de mes idées et des commentaires de contributeurs éventuels, les fonctions permettant d’obtenir ces résultats, tout est expliqué sur le dépôt.

Pour l’instant assez peu de scripts sont écrits mais une fois la structure bien en place le nombre de scripts devrait vite augmenter. Pour l’instant, sont disponibles :

  • installer des polices
  • concaténer / séparer les pages, tourner, compresser des pdf
  • redimensionner, recadrer automatiquement, convertir, tourner des images (90°, 180°, 270°, symétrie axiale)
  • renommer des photos à partir des données exif (date)
  • supprimer un fond blanc, ajouter un fond coloré à une image

Cela me permet de plus, d’apprendre à utiliser git, c’est tout bénef.

fixmbr

Il arrive que j’installe Linux en dual-boot sur des postes puis que, quelques temps plus tard, le poste changeant d’utilisateur, Linux doive être enlevé. Problème : la configuration du boot est souvent dans la partition Linux, il est donc nécessaire de restaurer le Master Boot Record… Pour cela les commandes les plus connues se font en console depuis un CD d’installation Windows. N’ayant pas toujours un tel disque sous la main (les portables sont fournis avec des disques de restauration, parfois ils n’ont pas de lecteur de disque,…), une solution depuis un live Linux (cd ou usb) est beaucoup plus pratique.

Il existe plein de possibilités (boot-repair par exemple) mais le plus simple me semble être :

  • dans un terminal, taper : sudo apt-get install lilo (depuis Ubuntu, à adapter en fonction du gestionnaire de paquets du live choisi)
  • ignorer les messages à propos de liloconfig, puis : sudo lilo -M /dev/sda mbr (après avoir déterminé si le disque en question est bien /dev/sda ou /dev/sdb… à l’aide de gparted, df ou autre)

{source}

Post-it avconv : Pivoter une vidéo

avconv -i in.mov -vf "transpose=1" out.mov

(avconv est un fork de ffmpeg, il est possible d’utiliser la même commande avec ffmpeg)

Pour la valeur de transpose :

  • 0 = 90° trigonométrique + symétrie verticale
  • 1 = 90° horaire
  • 2 = 90° trigonométrique
  • 3 = 90° horaire + symétrie verticale

La dactylographie, quel intérêt ?

Intérêts

La vitesse n’est pas le seul bénéfice d’une frappe à dix doigts à l’aveugle. La dactylographie apporte bien plus que ce que nous ne l’imaginons au premier abord.

1. Confort (adieu migraine et nuque raide)

Sur dix doigts, nous n’en utilisons souvent que la moitié et nous passons notre temps à zieuter rapidement les touches. Lorsque nous regardons notre clavier, notre œil fait une mise au point sur nos doigts ; lorsque nous regardons ce que nous avons tapé, notre œil se focalise sur l’écran ; et ainsi de suite autant de fois que nécessaire. Ces variations de focale, bien qu’imperceptibles, fatiguent notre œil et par conséquent nous fatiguent…

Pire, si vous regardez votre clavier (souvent nous le faisons de façon tellement machinale que nous ne nous en rendons plus compte, faire un test de frappe avec un tissu sur les mains est souvent révélateur), il est fort probable que vos yeux ne soient pas les seules parties de votre corps en mouvement, votre nuque suit la cadence. Si vous portez des lunettes, ce hochement de tête est même rendu obligatoire par la réduction du champ de vision imposé par cet accessoire. En tapant à l’aveugle, votre regard est posé sur votre moniteur, uniquement sur votre moniteur.

D’ailleurs, puisque vous le regarderez, c’est le moment d’en profitez pour le régler convenablement :

  • Directement devant vous sans qu’une rotation de votre tête ne soit nécessaire.
  • À environ une longueur de bras de distance.
  • Incliné d’environ 10-15°.
  • À une hauteur convenable, c’est-à-dire de sorte que votre regard soit au niveau du bord supérieur de l’écran.

2. Concentration (adieu fautes)

Bon nombre d’utilisateurs remarquent qu’ils font plus de fautes sur PC que sur papier : des accords de conjugaison qui hérissent le poil en temps normal, des fautes de grammaire qui feraient saigner les pupilles d’un enfant de CM1,… Si c’est votre cas, notez qu’une explication possible à ce genre de phénomène est le manque d’attention que vous pouvez apporter à votre texte. Lorsque vous écrivez sur une feuille, vous êtes concentré sur vos phrases, pas sur votre stylo. Vous maîtrisez parfaitement votre stylo, vous n’avez pas besoin de réfléchir à son utilisation. Lorsque vous tapez au clavier sans avoir pris le temps de maîtriser celui-ci, vous êtes distrait de votre texte, une partie de votre attention est inconsciemment en train de se concentrer sur la position des touches.

En apprenant à taper à dix doigts à l’aveugle, vous finirez par ne plus réfléchir à la position des touches, comme un pianiste sur son instrument.

3. Célérité (adieu latence)

Bien évidemment, gagner en vitesse ne manque pas d’intérêt. Imaginez pouvoir écrire à la vitesse de vos pensées, aucun décalage qui ne limite vos idées. Et n’oublions pas la messagerie instantanée ou IRC, une discussion fluide est toujours plus agréable, vous l’avez d’ailleurs remarqué lors de discussion en ligne avec vos parents (ou grand-parents) : une discussion ralentie est tout simplement agaçante. Ne vous est-il jamais arrivé de taper une longue phrase avant de vous rendre compte que vous n’avez pas sélectionné le bon endroit et que par conséquent toute votre frappe est à recommencer ? Si c’est le cas, notez que la dactylographie vous évitera ce genre de déconvenue.

Les logiciels d’apprentissage de dactylographie

Vous ne pourrez pas taper à l’aveugle à dix doigts sans passer par une période d’apprentissage. Pendant cette phase, il est important de se rappeler que la vitesse n’est pas ce que vous devez chercher à développer au départ ; la précision est un allié précieux, la vitesse viendra avec le temps et l’assiduité dans les exercices. Pour commencer, placez vos index sur F et J, vos autres doigts sur les touches à proximité. Vous ne devez en aucun cas regarder vos doigts, le mieux est donc d’afficher dans un coin de votre écran, une image représentant le clavier. Pour votre apprentissage et pour l’entraînement (quotidien si possible), des logiciels sont à votre disposition.

Ktouch, dans sa dernière version, est certainement l’un des meilleurs logiciels d’apprentissage. Il y a un gestionnaire de profil, les leçons sont suffisamment courtes pour ne pas décourager le néophyte, ce qui implique que refaire un exercice n’est pas agaçant. L’interface est complète et la courbe de progression, montrant à la fois vitesse et précision, bien pensée. Un logiciel à essayer.

ktouch1.png

Son alternative Klavaro a le gros avantage d’avoir une introduction intéressante et des exercices qui évoluent très lentement : le premier exercice, vous ne tapez que deux lettres avec vos index, le second est réservé aux majeurs,… En ajoutant ainsi les nouvelles lettres très lentement, l’apprentissage se fait en douceur, trop peut-être, les exercices étant parfois long. Les courbes de représentation sont peu exploitables puisqu’il y a une courbe par exercice, dommage.

klavaro3.png

klavaro2.png

Certaines alternatives existent bien évidemment, mais bon nombre ne proposent pas de leçon de placement des doigts, ce qui est un manque indéniable. C’est le cas par exemple de gtypist qui s’utilise en ligne de commande – à ne conseiller qu’aux puristes du terminal – ou l’extension Addictive Typing Lessons pour Firefox qui ne présente pas non plus de réel intérêt.

Si vous ne trouvez pas de logiciel à votre goût, tapez par exemple « cours dactylo » ou « typing lessons » dans votre moteur de recherche préféré et vous trouverez suffisamment de résultats pour qu’il soit impossible de les lister ici. Citons simplement pour exemples http://www.keybr.com et http://www.dactylocours.com.

Les jeux

Une fois que vous commencez à maîtriser votre clavier avec tous vos doigts et sans vos yeux, vous pouvez chercher à progresser de façon plus ludique de temps en temps. Ces jeux ne remplacent pas les exercices mais une petite pause jeu ne fait pas de mal…

1. Pour les enfants

Gcompris comprend un jeu de chute de lettres ou de mots. Destiné aux enfants comme tous les jeux de la suite, les décors sont colorés. Notons qu’il n’y a pas de module pour que les enfants apprennent à placer leur doigts correctement, c’est dommage.

gcompris.png

La même remarque peut-être faite pour Tux Typing qui propose des jeux mettant en scène des chutes de poissons ou des destructions de comètes. Les animations de manchots de ce jeu le rendent sympathique. Graphiquement plus abouti et proposant plus de possibilités que l’équivalent inclus dans Gcompris, c’est vers ce jeu que vous devez orienter vos chères têtes blondes.

tuxtyping1.png

tuxtyping2.png

2. Dans le terminal

xletters est un jeu dans lequel des mots tombent, vous devez les taper avant qu’ils n’arrivent en bas. Au fur et à mesure des niveaux, les mots accélèrent et leurs vitesses ne sont plus synchronisées. Même principe de jeu pour Typespeed si ce n’est que les mots défilent de gauche à droite et qu’un peu de couleur l’agrémente : selon le temps qu’il vous reste pour le taper, les mots sont successivement vert, orange puis rouge. Avantage non négligeable de ce dernier, il est possible de choisir la langue des mots qui défilent depuis un menu.

typespeed.png

3. Sur le web

De très nombreux jeux sont disponibles sur la toile, leur intérêt est très variable. Parmi les plus amusants, citons :

Letter Bubbles est un jeu simple dans lequel des bulles contenant une lettre apparaissent et parcourent l’écran jusqu’à ce que vous tapiez leur contenu. Le jeu est classique mais propose quelques options originales (certaines bulles en explosent plusieurs, les réseaux sociaux sont bien utilisés pour partager son score,…).

Dans Z-Type, vous êtes aux commandes d’un vaisseau qui doit empêcher une invasion de mots. La musique est plutôt sympa, les mots assez variés. Fait assez rare pour être signalé, ce jeu n’est pas en flash mais en html5.

Si c’est la compétition qui vous motive, alors rendez-vous sur 10FastFingers ou typeracer. Vous pourrez vous confronter aux meilleurs, comparer votre vitesse de frappe par rapport à vos amis, faire la course…

En cherchant quelques minutes sur divers sites de jeux flash, il est possible de lister plusieurs centaines de jeux de dactylographie, tous plus ou moins identiques sur le principe, plus ou moins amusants, plus ou moins esthétiques, mettant en scène des avions, des vaisseaux, des monstres, le football américain, le karaoké, des escargots, deux filles en sous-vêtements dans un stand de tirs, des poules ou enfin un chat ninja tueur de dinosaures zombies,… bref, il y a peu de chance que vous n’en trouviez pas un seul qui soit à votre goût !

Conclusion

La dactylographie apporte de réels bénéfice au confort, ne négligez pas l’importance d’une bonne maîtrise d’un outil que vous utilisez certainement très régulièrement. Et si comme moi vous n’arrivez pas à vous faire à l’azerty, passez au bépo !

Blender pour les effets spéciaux d'un film amateur

Introduction

Énormément de gens utilisent Adobe After Effects pour les effets de leurs films amateurs. Je déteste vraiment Adobe :

  • tarifs complètement prohibitifs pour le grand public.
  • logiciels non disponibles pour GNU/Linux.
  • Je ne comprends pas pourquoi Flash player et Adobe Reader (par exemple) sont aussi gourmands en espace disque !? Si peu de fonctions dans autant de code, c'en est presque inquiétant… sans parler du fait que leurs plugins pour navigateurs web sont carrément instables…
  • par défaut, leurs applications gratuites installent un antivirus si vous n'avez pas vu la case à décocher avant le téléchargement du fichier (lamentable, surtout quand on voit les problèmes que 2 antivirus en parallèle impliquent sous Windows !).

Pirater un logiciel Adobe (ou autre) m'est complètement insupportable également ; quand je vois le nombre de spywares, adwares et malwares que l'utilisateur lambda choppe sous Windows juste en téléchargeant des applications sur des sites qui semblent pourtant corrects, je n'ose même pas imaginer la gueule des postes où des cracks et autres keygens venant de sites warez ont été utilisés !

Et puis franchement, soyons honnêtes, combien d'amateurs utilisateurs de Adobe After Effects ont réellement besoin de ce soft ? J'entends par là qu'il n'est peut-être pas nécessaire de payer un logiciel privateur (qui plus est, achat dans une version spécifique, la mise à jour sera payante !) pour faire un diaporama de trois photos… Mais est-il possible de faire un film avec des effets spéciaux pas trop ridicule gratuitement ? Est-il possible de monter un film gratuitement ? C'est possible ! La preuve par l'exemple.

Exemple

J'ai fait un petit film pour amuser la galerie pendant le mariage de ma frangine, vous savez, le petit film qui occupe les invités une vingtaine de minutes pour permettre au traiteur de faire quelques finitions et qui tente d'émouvoir le jeune couple avec plein de références qu'ils aiment, des privates jokes et des clins d'œil relatifs à leurs passés.

Lorsque j'ai fait ce film, je ne pensais pas le diffuser ailleurs que pendant le mariage, pour un public d'une centaine de personnes uniquement. Je le mets ici, non pas pour le diffuser à plus grande échelle (ce n'est pas pour l'audience que mon site a que ça va changer grand chose de toute façon) mais je m'en sers ici pour appuyer et développer plus simplement mon propos. Si vous ne connaissez pas les jeunes mariés, il y a peu de chances que vous compreniez beaucoup de choses mais bon, pour ceux que le film intéresserait :



Pour le montage j'ai utilisé Kdenlive, de loin le plus complet et plus pratique des logiciels de montage sous GNU/Linux (très loin devant Pitivi et Openshot). Pour les effets spéciaux j'ai utilisé Blender, de loin la plus géniale des usines à gaz qu'il m'ait été donné d'utiliser, j'adore jouer avec ce logiciel même si je n'en maîtrise qu'une infime partie. J'aurais pu utiliser Blender pour le montage également mais je trouvais Kdenlive plus pratique pour cette partie.

Les effets spéciaux

How I met your mother (0:11)

Le générique de « How I met your mother » est plus complexe que ce qu'il n'y paraît peut-être au premier abord ; la caméra navigue parmi des photos dans un environnement 3D, les photos ont parfois un fond transparent laissant entrevoir d'autres photos… Dans Blender, j'ai placé différents plans-photos, différentes lumières et j'ai défini des mouvements de caméra pour coller au mieux à l'original. J'avoue que ça a été assez long à faire mais le rendu correspond à ce que j'attendais. Par contre, le fichier source étant particulièrement peu propre (trop de sources de lumières par exemple) le rendu a été particulièrement long mais surtout, j'en ai tellement honte, je ne pourrais pas me résoudre à vous montrer plus que cette capture.

blenderfx_himym.png

Stargate (2:17)

J'ai voulu créer mon propre effet "trou de ver" mais je n'avais pas vraiment le temps, j'ai également tenté de faire disparaître la voiture de différentes façons (apparition d'un portail temporel, vibration de la caméra et de la voiture, modification de la taille de la voiture…) mais le rendu était tellement ridicule, j'ai préféré utiliser Kdenlive pour un simple fondu vers une séquence extraite de Stargate SG1… J'aurais vraiment aimé n'utiliser que des séquences libres de droits, que ce soit pour la vidéo ou les musiques, mais j'avoue que la facilité l'a parfois emporté (surtout pour les musiques…).

worm.jpg

Nus (2:38, 4:58 et 18:16)

Nous avons tourné en caleçon mais dans la scène nous sommes censés être nus, puisque nous faisons un voyage dans le temps version « Terminator ». Comment faire ? J'aurais pu ajouter un cache noir rectangulaire devant nos sous-vêtements mais j'avais dans l'idée qu'une mosaïque pixelisée couleur chaire serait plus efficace visuellement. Comme nous n'avions pas des caleçons beiges lors du tournage, je ne pouvais pas pixeliser directement avec les effets classiques d'un logiciel de montage, j'ai donc utilisé Blender. Je reprends une section de l'image (nos ventres) légèrement décalée vers le bas (sur nos caleçons) puis je pixelise cette section. Pour ceux que les nodes en question intéressent, voici une capture :

blenderfx_nude.png

Le rendu est plutôt réussi. Je n'ai pas joué avec les fonctions de tracking de Blender, cela m'aurait certainement simplifié les choses, toutefois, pour le peu d'images clés à définir, il m'a semblé plus rapide et pertinent de le faire à la main que d'apprendre à utiliser correctement cette fonction. C'est dommage de se priver d'un apprentissage mais c'était plus rapide, même si mon attitude était court-termiste. Pour ceux qui ne connaissent pas Blender, comprenez bien que les nodes permettent énormément de choses et notez qu'il est très agréable de créer ses propres effets, d'avoir un contrôle énorme, de réfléchir à la meilleure solution. Créer des effets ainsi me procure bien plus de plaisir intellectuel que d'en utiliser des fonctionnels dans un logiciel non libre dont le rendu ne serait peut-être pas parfaitement à l'image de ce que je souhaitais mais surtout sur lesquels je n'aurais que très peu de contrôle. Avec Blender, si le rendu ne me convient pas, je continue à travailler et réfléchir, c'est vraiment enrichissant

Tournages en décalé (3:35 et 12:42)

Les personnes qui ont joué ces scènes n'avaient pas de créneaux communs pour tourner (en plus d'être mauvais acteurs, décidément des conditions de tournage excécrables ! ;-) ). Le montage permet de les réunir, il ne s'agit pas d'un effet spécial à proprement parler mais n'oubliez jamais que le montage permet déjà de faire une grosse partie du travail. Bon, il est certain que si j'avais pu tourner au moins à des heures ou météo approximativement identiques, j'aurais pu éviter les problèmes d'ombres / lumière que j'ai eu ici,… ne visant pas de nomination à l'oscar du meilleur film de mariage, j'ai laissé couler.

Corbeau (5:44)

Ne prenant pas le temps de dessiner un corbeau en 3D, j'ai simplement réutilisé un vieux dessin vectoriel que j'avais fait il y a longtemps, mais le principe est le même.

corbeau.png

Avec blender, je défini un masque pour détourer les acteurs, j'ajoute une image de corbeau qui se translate et qui s'affiche ou non en fonction du masque, j'ajoute des disques et le tour est joué, j'obtiens un corbeau derrière les acteurs sans même avoir utilisé un fond vert. Si les acteurs avaient bougés j'aurais utilisé un fond vert et Blender m'aurait de toute façon permis très simplement de le gérer comme il se doit.

Le visiteur du futur (7:12)

Scène entièrement copiée sur le visiteur du futur, aucun effet spécial particulier (si ce n'est quelques réglages de luminosité avec Kdenlive) mais je tenais à le dire : j'ai sans vergogne pompé l'épisode 3 de la première saison 1 ! J'aime cette web-série (n'hésitez pas à acheter les dvd et la bd ; en plus Ankama fait un excellent travail, ils ne se contentent pas de mettre une galette dans une boîte, les coffrets sont beaux et bien remplis !). Je ne pensais pas avoir pompé les dialogues à ce point, c'est en revoyant l'épisode il y a peu que j'ai constaté avec stupeur que la scène était une simple photocopie noir et blanc de la scène originale (même chose mais sans les couleurs : qualité de jeu de Florent Dorin et Raphaël Descraques, mise en scène de François Descraques), comme si j'avais stocké inconsciemment et avec exactitude les dialogues en mémoire, j'ai été vraiment étonné. Notez que l'"acteur" et la voix off ne connaissaient pas l'épisode. En tout cas, un énorme merci à l'équipe de cette série pour tous les énormes fous rires. Comprenez bien que mon but était de faire un clin d'œil à ceux qui connaissaient la série, pas du tout de m'approprier l'excellent travail de François Descraques.

Sabres lasers (9:27)

J'avais fait quelques essais avec mon fils, il y a quelques temps (Nodes Blender : Effet sabre laser). J'ai réutilisé les mêmes nodes en utilisant, cette fois, les fonctions de masques qui ont été intégrées depuis à Blender.

blenderfx_light_saber_1.png

blenderfx_light_saber_2.png

Ligoter ma belle-mère (11:21)

Aucun effet spécial pour cette scène, juste un pur plaisir que je tenais à souligner ici.

Massue (18:10)

Faite très rapidement avec Blender à quelques jours de la dead-line, je n'ai pas pris le temps de définir une texture ou d'écrire 1000T sur la massue, je me suis juste contenté de deux cylindres vaguement marron. Vu la durée de la scène, je me suis dis que ça passerait…

blenderfx_massue.png

Mouton (20:21)

Le mouton qui apparaît de façon furtive dans le film fait parti d'un projet plus complet de court métrage. Ce mouton, je l'adore, je l'utilise d'ailleurs comme avatar. À long terme j'espère pouvoir faire mon court métrage mais il va me falloir du temps et quelques heures d'apprentissage. Si vous voulez des détails sur ce projet rendez-vous sur le sujet « Dors ! » sur le forum de blenderclan. Ça fait pas mal de temps que le projet est en stand-by mais je n'abandonne pas.



Conclusion

Basiques, simples mais efficaces, je n'ai pas à rougir de mes effets spéciaux ! Ce n'est pas un chef d'œuvre mais pour un film diffusé à un mariage, c'est loin d'être honteux, le film a parfaitement répondu à mes attentes. Il est vrai que des professionnels avec le même outil, des connaissances et un peu plus de temps font un milliard de fois mieux (Tears of steel par exemple) mais le sujet n'ai pas là ; avec un minimum de maîtrise de Blender, il est possible de faire des effets spéciaux pour un film amateur, qu'on ne me dise plus qu'un utilisateur lambda a besoin d'un logiciel privateur payant pour faire des films ! C'est faisable sans un sou, en gardant une totale liberté et sans remplir sa machine de MVT (Maladie Virtuellement Transmissibles).

Sans parler d'effets, juste pour ce qui est du montage, je ne dirais qu'une chose : Il n'est pas nécessaire d'utiliser Pinnacle Studio pour faire un montage simple. Pinnacle Studio est un logiciel immonde rempli de bugs qu'il ne faut surtout pas utiliser. Ne le conseillez qu'aux personnes que vous détestez !!! J'ai eu l'occasion de faire un montage avec cette ignoble bouse (version 17) pour un petit film au boulot ; plus jamais ça ! Même l'utilisateur de Pinnacle Studio qui l'avait conseillé et commandé (parce que c'est payant en plus !), qui en était un fervent défenseur, a admit après usage intensif qu'il s'agit finalement d'un logiciel à éviter. Il y a des logiciels gratuits très bien pour faire mieux plus facilement, sans plantage pourquoi vous priver ? Si ceux-ci ne sont pas disponibles pour votre système d'exploitation, trouvez un geek dans votre village pour vous installer un dual-boot GNU/Linux !

- page 1 de 7