Vernis­sage de l’ex­po­si­tion « Chacun est unique »

Le mois de mars a été pour moi l’oc­ca­sion d’une expé­rience photo­gra­phique. La ville de Niort, dans le cadre des « Rencontres de la jeune photo­gra­phie inter­na­tio­nale », a invité Vincent Rosen­blatt pour une rési­dence artis­tique et lui a proposé d’or­ga­ni­ser un work­shop s’éta­lant sur cinq mercredi, du 18 mars au 15 avril. Au travers d’échanges chaque rendez-vous a été l’oc­ca­sion pour chacun de mettre à l’épreuve du regard des autres, et de la critique de Vincent, ses clichés afin de déve­lop­per sa propre pratique. De nombreux clichés ont été présen­tés offrant une diver­sité de styles et de démarches. Les portraits étaient large­ment sur-repré­sen­tés, mais d’autres démarches plus origi­nales se lais­saient voir (ce que je trou­vais nette­ment plus inté­res­sant, vu l’abon­dance de portraits qui existe sur les plate-formes de diffu­sion de clichés).

De ces rencontres a découlé une expo­si­tion rassem­blant les clichés des treize photo­graphes amateurs nior­tais. L’objec­tif était le suivant : chaque photo­graphe avait à choi­sir parmi ses clichés celui qui le repré­sen­te­rait et qui propo­se­rait un portrait de son « iden­tité photo­gra­phique ». À ma grande stupeur, les portraits se sont retrouvé en sous-nombre, lais­sant la place à des travaux souvent person­nels.

Le vernis­sage a eu lieu ce vendredi 3 juillet. L’ex­po­si­tion quant à elle sera visible jusqu’au 29 août 2015 au square Henri-Georges Clou­zot, à Niort.

Vernissage - La planche contact
La planche contact présen­tant le projet et propo­sant une vue d’en­semble des clichés.
Vernissage - Le photographe
Le photo­graphe et son cliché.
La fameuse photo­gra­phie.

Critique de Moon

Je viens de regar­der Moon. J’ai mis du temps à entrer dans l’his­toire, comprendre les enjeux et le message du film. Je pense n’avoir saisi le message qu’à partir de la moitié du film, moment après lequel la trame est deve­nue très visible et les évène­ments faciles à prévoir.
Cela reste un fil inté­res­sant, qui nous invite à nous poser des ques­tions. Un film de SF comme je les aime, qui n’im­plique pas forcé­ment d’ex­tra­ter­restres ou autre tech­no­lo­gie abra­ca­da­bran­tesque. Un film sur l’homme, sur la soli­tude et (un peu) sur le clonage.

(Publié à l’ori­gine sur SensC­ri­tique.com.)

Travailler avec des sous-fichiers

De nombreux manuels et cours sur LaTeX conseillent de travailler avec des sous-fichiers, permet­tant de scin­der ses docu­ments de travail en plusieurs fichiers (e.g. un fichier par chapitre pour l’écri­ture d’un livre).

Prendre l’ha­bi­tude d’une telle pratique peut-être une très bonne idée, mais il peut égale­ment être très inté­res­sant de pous­ser plus loin la réflexion. Dans la mesure où le docu­ment va être scin­der, il peut être inté­res­sant de pouvoir compi­ler chaque sous-fichier de manière indé­pen­dante. Pour cela j’ai écrit un petit package (que vous ne trou­ve­rez pas sur le CTAN) qui permet de compi­ler un fichier à l’in­té­rieur d’un plus géné­ral ou de manière indé­pen­dante, sans avoir à modi­fier à chaque fois le code source.

Concer­nant l’ap­pel des packages

Il est néces­saire d’écrire l’en­semble des appels de packages dans un fichier à part puisque ce dernier sera appelé par le docu­ment maître à la compi­la­tion, mais égale­ment par les sous-docu­ments lorsqu’on les compi­lera de manière indé­pen­dante.

Dans ce fichier vous pouvez appe­ler les packages que vous souhai­tez, aucun n’étant néces­saire au bon fonc­tion­ne­ment du package que j’ai écrit. Vous pouvez égale­ment y indiquer votre nom avec la commande \author{} et éven­tuel­le­ment une date avec la commande \date{}.

Avec le fichier maître…

Le fichier prin­ci­pal se construit globa­le­ment de la même manière que d’ha­bi­tude, seule­ment il est néces­saire d’ini­tia­li­ser un comp­teur parti­cu­lier qui servira lors de la compi­la­tion du docu­ment et d’ap­pe­ler le fichier de préam­bule créé préa­la­ble­ment. Le comp­teur en ques­tion s’ini­tia­lise de la manière suivante :

\newcounter{multipart}

Ainsi, un exemple mini­mal de fichier maître se présen­te­rait comme suivant :

\documentclass{book}
\input{preambule} % le fichier indépendant qui contient l'appel des packages et la définition de l'auteur grâce à la commande \author{}
\newcounter{multipart}
\title{Le titre}

\begin{document}
\maketitle
\input{le sous-fichier}
\end{document}

… et les fichiers esclaves

Il s’agit à présent de nous arrê­ter sur les sous-fichiers. Il s’agit tout d’abord d’in­té­grer le fichier multi­part.tex qui contient les indi­ca­tions néces­saires au bon fonc­tion­ne­ment du proces­sus (et que nous déve­lop­pe­rons plus bas). Ce fichier doit se trou­ver dans le même dossier que le fichier compilé. En cas d’uti­li­sa­tion de sous-dossiers pour les fichiers, il est néces­saire que ce fichier se trouve égale­ment dans ces dossiers. (Un simple lien symbo­lique permet de simu­ler la présence de ce fichier sans avoir à les mettre à jour à chaque modi­fi­ca­tion.)

Il convient ensuite d’ap­pe­ler la commande \debut­mul­ti­part{}{} qui demande deux argu­ments. Le premier corres­pond au titre du docu­ment. Il appa­raî­tra comme un titre de chapitre lorsque le docu­ment sera compilé en même temps que le fichier maître (qui corres­pond à un livre), mais il devien­dra le titre d’un article lorsque le fichier sera compilé seul (le docu­ment prenant alors la classe article). Le second argu­ment corres­pond simple­ment au chemin du fichier de préam­bule créé plus tôt (ce chemin est le chemin rela­tif depuis le sous-fichier, il servira lors de la compi­la­tion auto­nome).

À la suite de cela vous n’avez qu’à écrire votre docu­ment (avec un premier niveau de titre commençant à la section).

En fin de fichier, il vous suffit d’in­diquer la fin du sous-fichier par la commande \finmul­ti­part{}.

Un exemple mini­mal serait le suivant :

\input{./multipart}
\debutmultipart{Mon titre de chapitre (d'article)}{../preambule}

Le corps de texte de mon document.

\finmultipart{}

Le package multi­part

Il ne nous reste pus qu’à créer (dans votre cas copier) le package en lui-même, dans un fichier multi­part.tex.

\ifdefined\debutmultipart
\else
  \newcommand{\debutmultipart}[2]{%
    % Définition du titre du document
    \ifdefined\titre
      \renewcommand{\titre}[0]{#1}
    \else
      \newcommand{\titre}[0]{#1}
    \fi
    % si le compteur 'multipart' existe...
    \ifcsname c@multipart\endcsname\stepcounter{multipart}
      % ...alors c'est que le document est chargé par le document principal
      % et le préambule a déjà été chargé par le document principal
      % le titre est donc un chapitre
      \chapter*{\titre{}}
      \addcontentsline{toc}{chapter}{\titre{}}
    \else    
    % ...sinon c'est que le document est compilé en autonomie

      % on définit le type du document
      \documentclass[a4paper]{article}

      % on charge le préambule
      \input{#2}

      % le titre est donc le titre du document
      \title{\titre{}}

      % on commence le contenu
      \begin{document}

      % on met en place le titre du document
      \maketitle
    \fi
  }

  \newcommand{\finmultipart}[0]{%
    % si le compteur 'principal' existe...
    \ifcsname c@multipart\endcsname \stepcounter{multipart}    
      % ...alors ne rien faire car le document continue dans le document principal
    \else
      % sinon on termine le contenu
      \end{document}
    \fi
  }
\fi

Voilà, il ne vous reste plus qu’à compi­ler à votre conve­nance le docu­ment prin­ci­pal ou le sous-docu­ment pour obte­nir le fichier de votre choix.

Réali­ser un sommaire auto­ma­tique sous LibreOf­fice

Lorsqu’on réalise un docu­ment assez long et/ou volu­mi­neux, il peut être inté­res­sant d’avoir un sommaire afin de mieux guider les lecteurs dans leur décou­verte de l’ou­vrage.

Il est bien sûr possible de réali­ser le sommaire (ou table des matières) à la main, en indiquant manuel­le­ment les noms des titres, sections, etc., et la pagi­na­tion corres­pon­dante (ne mentez pas, je sais que tout le monde l’a fait au moins une fois), mais cette méthode, en plus d’être longue et éprou­vante, pose le problème de l’ac­tua­li­sa­tion à chaque travail sur le docu­ment. Le texte gran­dis­sant, la pagi­na­tion en vient fata­le­ment à chan­ger et le travail est à refaire. Je sais ce que vont me dire les petits malin du fond de la classe “Eh, mais il suffit de faire le sommaire à la fin du travail, lorsque le docu­ment est terminé !” Merci pour cette inté­res­sante remarque à laquelle je répon­drais en vous deman­dant la solu­tion lorsqu’il vous faut rendre régu­liè­re­ment des versions plus ou moins abou­ties de votre travail…

Le plus simple, à mon sens, est de deman­der à LibreOf­fice de réali­ser de manière auto­ma­tique la table des matières. Pour cela, il est néces­saire d’uti­li­ser les styles.

Les styles

Les styles sont des options de mise en forme auto­ma­tique et géné­ra­li­sée à l’en­semble du docu­ment. Ils permettent d’avoir une cohé­rence dans la mise en forme, en page des diffé­rents éléments textuels, pictu­raux, etc. C’est grâce à eux, par exemple, qu’on peut faire en sorte que tous les para­graphes commencent par une inden­ta­tion et soient justi­fiés, ou encore que tous les titres de premier niveau soient en gras et souli­gnés.

Sous LibreOf­fice, il existe un certain nombre de styles déjà enre­gis­trés, qu’il est possible de modi­fier à votre conve­nance, et l’uti­li­sa­teur a la possi­bi­lité d’en créer d’autres. Concer­nant les titres, LibreOf­fice en embarque 10 niveaux, ce qui est ample­ment suffi­sant (on se sert la plupart du temps d’en­vi­ron 5 à 6 niveaux). Pour un docu­ment long composé en chapitres, on pour­rait consi­dé­rer les niveaux de titre comme tels :

  • Titre 1 : Chapitre
  • Titre 2 : Section (e.g. 1. Titre)
  • Titre 3 : Sous-section (e.g. 1.1 Sous-titre)
  • Titre 4 : Sous-sous-section (e.g. 1.1.1 Sous-sous-titre)
  • Titre 5 : Para­graphe

On se sert donc très peu des niveaux en dessous de para­graphe. On peut éven­tuel­le­ment descendre à 6 niveau si on souhaite divi­ser son ouvrage selon diffé­rentes parties, auquel cas le titre de niveau 1 corres­pond aux parties, le niveau 2 aux chapitres, etc.

En adop­tant cette pratique (ce qui, soit dit en passant, n’est pas très compliquée à faire), vous indiquez à LibreOf­fice ce que vous consi­dé­rez comme un “titre” (au sens le plus géné­ral), ce qui permet entre-autre de réali­ser la table des matières, mais aussi de numé­ro­ter auto­ma­tique­ment vos parties (par des chiffres, des lettres, etc.), ou encore de dépla­cer de grands morceaux de textes au sein de votre docu­ment.

Dépla­cer des parties

Je souhaite faire là un petit aparté. En utili­sant les styles de titre, LibreOf­fice enre­gistre votre décou­page du docu­ment. Vous pouvez alors ouvrir le “navi­ga­teur” (Menu Affi­chageNavi­ga­teur ou alors la petite bous­sole dans votre barre de raccour­cis, ou encore grâce à la touche F5). Dans ce Navi­ga­teur appa­raissent vos titres, affi­chés de manière hiérar­chique. En en sélec­tion­nant un dans le navi­ga­teur, vous pouvez, grâce aux outils de cette fenêtre monter ou abais­ser vos titres. Ce faisant, LibreOf­fice dépla­cera tout le contenu asso­cié à cette partie (à savoir les para­graphes mais aussi les sous-titres asso­ciés).

Vous commen­cez, j’ima­gine, à comprendre la puis­sance que peuvent avoir les styles dans LibreOf­fice.

Réali­sa­tion du sommaire

À présent que votre docu­ment est écrit, avec les titres iden­ti­fiés comme tels, nous pouvons deman­der à OpenOf­fice de créer le sommaire.

Normes de présen­ta­tion de réfé­rences biblio­gra­phiques

La consti­tu­tion d’une biblio­gra­phie est une étape impor­tante lors d’un travail et ce quelle que soit sa longueur ou la disci­pline. Le plus simple est, à mon avis, d’uti­li­ser un logi­ciel consa­cré à la gestion des réfé­rences mais parfois certains travaux courts ne néces­sitent l’in­ser­tion que d’une petite liste de réfé­rences. Toujours est-il qu’il existe certaines normes qui, au même titre que pour les normes typo­gra­phiques, ne sont pas figées mais permettent de conser­ver une certaine cohé­rence. Ce sont certaines de ces normes (ou règles) qui seront présen­tées ici (sachant que selon la langue dans laquelle vous écri­vez votre docu­ment, ces normes sont suscep­tibles de varier).

Conti­nuer la lecture de Normes de présen­­ta­­tion de réfé­­rences biblio­­gra­­phiques

Ressources biblio­gra­phiques

Il existe plusieurs sites permet­tant de récol­ter des infor­ma­tions permet­tant de remplir les champs biblio­gra­phiques.

Le plus simple est souvent d’al­ler sur le site offi­ciel de l’édi­teur, de la revue, du film, etc. afin de récu­pé­rer les infor­ma­tions. Cepen­dant de telles sources n’existent pas néces­sai­re­ment. Dès lors il peut être utile de connaitre quelques sites permet­tant de combler ces lacunes.

Géné­ra­liste

  • Wiki­pé­dia : La réfé­rence. L’en­cy­clo­pé­die en ligne permet de récol­ter quan­tité d’in­for­ma­tion et renvoie souvent sur les sites offi­ciels. Pour les livres, utili­sez la version fran­co­phone, en revanche pour les films je conseille la version anglo­phone qui est souvent plus complète.

Ouvrages/Revues

  • Les sites de vos biblio­thèques univer­si­taires, muni­ci­pales, etc.
    • LibX : Un plug-in pour Fire­fox et Google Chrome qui permet de recherche dans la base de données du SUDOC

Films/Docu­men­taires/Séries

Reco­der des ques­tion­naires avec LibreOf­fice

Lorsqu’on travaille sur des enquêtes par ques­tion­naire, il arrive fata­le­ment un moment où il devient néces­saire de trai­ter les résul­tats. On a alors tendance à coder les réponses afin d’en faci­li­ter la saisie. Cepen­dant, lorsque le travail sur la base de donnée ainsi construite arrive, il peut, cette fois, être plus simple d’avoir accès aux inti­tu­lés réels. Commence alors un travail de reco­da­ger des données.

Expli­ca­tion théo­rique

La méthode la plus perfor­mante reste l’uti­li­sa­tion de la formule condi­tion­nelle SI.

La syntaxe de cette commande est la suivante :

SI(test;traitement si vrai;traitement si faux)

Ainsi, il suffit de test le contenu d’une cellule et de deman­der l’af­fi­chage en consé­quence.

Cas pratique

Soit une série de réponses à une ques­tion à choix unique dont les moda­li­tés seraient les suivantes :

Réponse réelle Code réponse
Jamais 01
Souvent 02
Très souvent 03

À suppo­ser la feuille de calcul suivante :

A
1 01
2 03
3 01
4 02
5
6 01

Dans la cellule B1, il s’agi­rait d’écrire la formule suivante :

=SI($A1="01";"Jamais";SI($A1="02";"Souvent";SI($A1="03";"Très souvent";"Non réponse")))

Il suffi­rait alors de copier-coller cette formule dans l’en­semble de la colonne B pour que les codes se trans­forment en réponses intel­li­gibles. Le tableau précé­dent devien­drait ainsi :

A B
1 01 Jamais
2 03 Très souvent
3 01 Jamais
4 02 Souvent
5 Non réponse
6 01 Jamais

Rendre ses scripts acces­sibles de n’im­porte où

Tous ceux qui ont déjà créé des scripts Bash savent combien il est éner­vant de devoir soit se placer dans le dossier conte­nant le script en ques­tion, soit écrire le chemin complet vers le script pour l’exé­cu­ter. Or il est possible d’exé­cu­ter ses scripts depuis n’im­porte quel empla­ce­ment dans l’ar­bo­res­cence, simple­ment en disant à GNU/Linux où il doit cher­cher.

Un peu de théo­rie…

Afin d’exé­cu­ter des scripts et a fortiori des programmes, GNU/Linux regarde des dossiers spéci­fiques pour trou­ver les exécu­tables. Ces dossiers sont conte­nus dans la variable d’en­vi­ron­ne­ment $PATH. Afin d’af­fi­cher cette variable et savoir quels sont les dossiers parcou­rus, tapez la commande suivant dans un termi­nal :

$ echo $PATH

Les dossiers parcou­rus sont sépa­rés par le carac­tère “:”. Si vous voulez les voir s’af­fi­cher avec un dossier par ligne, vous pouvez écrire la commande suivante :

$ echo $PATH | sed -e "s/:/\n/g"

… et on passe à la pratique

Pour ajou­ter votre (vos) propre(s) dossier(s) à cette liste, il vous faut éditer votre fichier .bashrc. Ajou­tez-y à la fin une des deux lignes suivantes :

  • si vous voulez ajou­ter un seul dossier :
export PATH=$PATH:lien_absolu_vers_votre_dossier
  • si vous voulez en ajou­ter plusieurs, il suffit de sépa­rer les dossier par un “:” de la manière suivante :
export PATH=$PATH:lien_absolu_vers_votre_dossier_1:lien_absolu_vers_votre_dossier_2

Vous auriez pu écrire ces lignes direc­te­ment dans votre termi­nal, mais cela n’au­rait fonc­tionné que pour la session de ce termi­nal. Pensez à relan­cer une instance de termi­nal pour les chan­ge­ments soient pris en compte. À présent, vous pouvez appe­ler vos programmes et scripts shell où que vous vous trou­viez dans l’ar­bo­res­cence de votre ordi­na­teur.

Trans­fé­rer des données avec Rsync

Mise en réseau des postes

Il nous faut relier les deux postes infor­ma­tiques. Pour cela, le plus simple à mettre en place est de connec­ter les deux postes au même réseau, WiFi (fonc­tionne de manière accep­table lorsqu’il y a peu de données à trans­fé­rer) ou filaire. Les postes se verront alors affec­ter une adresse IP de manière auto­ma­tique.

Pour un tras­fert plus rapide, il est préfé­rable de passer par un switch. Là, il nous faudra assi­gner une adresse IP à chacun des postes. Connec­tez les PC à l’aide de cables “réseaux” (RJ45) au switch. Assi­gnez à présent une adresse IP, diffé­rente, à chaque poste à l’aide de la commande ifconfig, par exemple :

# ifconfig eth0 192.168.1.25

Prépa­ra­tion au trans­fert

Le trans­fert va s’ef­fec­tuer au travers du proto­cole SSH. Il faut donc qu’une connexion SSH soit possible entre le client et le serveur SSH. Instal­lez à présent la commande rsync qui va nous permettre de réali­ser le trans­fert. Cette instal­la­tion est néces­saire sur le client et le serveur.

# apt-get install rsync

Trans­fert des données

Placez vous sur le poste qui va rece­voir les données et récu­pé­rez son adresse IP.

# ifconfig

Eth0 corres­pond à votre liai­son filaire et Wlan0 à votre liai­son WiFi. L’adresse IP se trouve sur la deuxième ligne, après le inet adr.

Placez vous à présent sur la machine source, celle qui contient les données à envoyer, et tapez la commande suivante (en adap­tant à votre poste, les chemins devant être abso­lus) sur une seule ligne :

$ rsync -avz --progress --stats dossier_source votre_login_sur_le_poste_destinataire@adresse_ip_du_poste_destinataire:dossier_de_destination

Les options utili­sées sont les suivantes :

  • -a –archive (corres­pond au mode archive) ;
  • -v –verbose (active le mode bavard, le programme affi­chera quel fichier il envoie) ;
  • -z –compress (active la compres­sion des données pendant l’en­voie) ;
  • –progress (affiche la progres­sion durant le trans­fert) ;
  • –stats (donne des statis­tiques sur le trans­fert des fichiers).

Vous pouvez égale­ment utili­ser :

  • -c –cheksum (permet de véri­fier la somme MD5 des fichiers) ;
  • -u –update (n’en­voie que les fichiers nouveaux, utile pour la reprise d’un envoi stoppé ou pour faire fréquem­ment une copie sans reco­pier les données déjà à jour) ;
  • –help (affiche l’en­semble des options acti­vables).

Notez qu’il est tout à fait possible d’ef­fec­tuer cette mani­pu­la­tion avec des PC se trou­vant dans des lieux diffé­rents. Il suffit de connaître l’adresse IP publique. Certains sites tels que http://checkip.dyndns.org permettent de connaître sa propre adresse IP publique.

Lire les formats audio et vidéo libres sous GNU/Linux et MS Windows

Qui dit logi­ciel libre, dit formats libres. Vous connais­sez surement le format OpenDo­cu­ment (mais si, les odt, ods, odp, etc. utili­sés entre autres par OpenOf­fice.org et LibreOf­fice) ou encore le PNG et le SVG, ces formats d’images, respec­ti­ve­ment matri­cielles et vecto­rielles. Ce sont tous des formats libres, ouverts et il en existe, bien entendu, égale­ment dans le monde du multi­mé­dia. Les plus courants sont :

  • le OGG, un conte­neur pouvant accueillir, en plus de fichiers de sous-titre, des fichiers :
    • en OGG Vorbis (un algo­rithme de compres­sion audio avec perte),
    • en OGG Theora (un format de compres­sion vidéo),
  • le FLAC, un codec de compres­sion audio sans perte ;
  • le MKV, un conte­neur permet­tant d’ac­cueillir la majo­rité des flux et codecs audio/vidéo exis­tants ainsi que des pistes de sous-titre.

S’ils sont pris en charge (la plupart du temps) nati­ve­ment sous GNU/Linux, ça n’est pas le cas sous MS Windows et Mac OS (X). Cepen­dant, le lecteur VLC Media Player supporte (comme de nombreux autres codecs) les fichiers portant les exten­sions citées plus haut. Si certains s’en satis­fe­ront, au moins pour la vidéo, il faut avouer qu’il n’est pas force­ment très pratique à utili­ser au quoti­dien pour la musique, notam­ment face à des logi­ciels tels que MPD, Rhythm­box, Windows Media Player, ou encore iTunes, qui intègrent une gestion de biblio­thèque assez pratique.

Instal­la­tion

GNU/Linux

La plupart des distri­bu­tions GNU/Linux intègrent nati­ve­ment le support des formats libres. Si ça n’est pas le cas, vous avez toujours la possi­bi­lité de les rajou­ter, ne vous inquié­tez pas.

Pour instal­ler le support du MKV, il vous faut les librai­ries suivantes libebml et libmastroska. Pour le FLAC, il vous faut instal­ler flac. Enfin, pour le OGG, il faut instal­ler libogg et y ajou­ter libvorbis et vorbis-tools (pour la lecture du Vorbis) et libtheora (pour le Theora).

Pour Debian (et déri­vées), pour tout instal­ler d’un coup, entrez la ligne suivante dans un termi­nal :

# apt-get install libebml libmatroska flac libogg libvorbis vorbis-tools libtheora

MS Windows

Pour pouvoir profi­ter de ces fichiers sous MS Windows, il vous suffit de télé­char­ger l’exé­cu­table se trou­vant à cette adresse, de l’exé­cu­ter, et de redé­mar­rer votre machine. Une fois ceci fait, vous serez en mesure de lire ces fichiers direc­te­ment depuis le Windows Media Player.