Le Git et le couvert

« Toute la vie des chercheurs pour lesquels règnent les humanités numériques s’annonce comme une immense accumulation de lignes de commandes. Tout ce qui était directement et manuscriptement étudié s’est éloigné dans une représentation numérique. »
L’usage de la ligne de commande implique de nouvelles panières d’appréhender et d’étudier nos sujets d’études ; non pas que la finalité soit différente, mais le rapport au texte et l’interaction même que nous avons avec celui-ci se déploient dans des modalités d’analyses inouïe ; il n’est évidemment plus question de le toucher dans sa matérialité, qu’elle soit livresque ou même numérique – après tout, un texte sur écran d’ordinateur reste un texte. Les outils utilisés ici permettent d’entretenir un rapport de recherche pure et éloignée sur le texte.


boitenoire

La console de Git Bash

Il s’agit en effet, avec l’aide de Git Bash, d’analyser un texte de Cicéron. Le dossier contenant le fichier texte une fois identifié comme répertoire, le texte en question peut être « lu » par le logiciel. Cette manipulation, ce qui peut paraître inutile d’être noté mais qui en réalité est révélateur de nos pratiques digitales normales, et toutes celles qui s’ensuivent sont faites au clavier – il était question de recherche éloignée.

Une fois donc le texte inséré, nous pouvons l’analyser à l’aide de deux commandes : wc et grep.

La commande wc permet de spécifier les unités linguistiques du texte en les dénombrant : elle affiche le nombre de lignes, mots et caractères qu’il contient (dans cet ordre). Il est possible d’afficher chacune de ces données séparément en utilisant une version adéquate et développée de la commande, comme le précisait déjà Camille Duplaa dans son propre billet.

Les lignes de commande suivantes :

$ wc cicero.txt
$ wc -l cicero.txt (lignes)
$ wc -w cicero.txt (mots)
$ wc -m cicero.txt (caractères)

… permettent ainsi d’afficher ces résultats :

console3

Il est clair que la finalité de cette commande se borne à un rôle purement indicatif et quantitatif.


La commande grep permet quant à elle de trouver un mot. Il s’agit, mutatis mutandis, de la fonction rechercher de l’unix.

Elle s’écrit de cette manière :

$ grep '[insérer le mot recherché]' cicero.txt

En voici un exemple, où la recherche portait sur le mot liberavit :

Libérée, délivrée

Libérée, délivrée

Pour comparer avec le logiciel de prise de note et de lecture qu’on utilise communément pour lire les fichiers .txt standards, voici une recherche sur le bloc-notes de base de Windows faite avec CTRL + F :

texteciecro2

On voit ici deux différences de taille. D’abord, la commande grep de l’unix permet d’afficher tous les résultats de la recherche, c’est-à-dire toutes les phrases où le mot recherché apparaît. Cette exhaustivité contraste avec la spécification du logiciel « par défaut » qui cible chaque occurrence du mot recherché. En revanche, et cela constitue une limite de la console noire, l’affichage par défaut des résultats, qui ciblent donc le mot entré dans la ligne de commande, ne rend pas compte des syntagmes complets dans lesquels le mot est linguistiquement placé (cf. la capture d’écran ci-dessus, avec par exemple les mots coupés). Toute recherche ayant pour but de replacer les mots dans leur contexte serait donc vouée à l’aléatoire de la recherche et de l’affichage des mots par la console : le but de la commande est uniquement de signaler et identifier les occurrences précises d’un mot. L’usage en serait donc réduit à des études fort restreintes portant sur des présences de mots précis dans des textes connus, ou bien, dans un cadre plus ludique et personnel, à des recherches qui permettraient de se rendre compte des obsessions langagière de certains auteurs (« fétichisme », « marchandise » etc.).