Modifier la position de la barre de menu sur Ubuntu 20.04

Personnaliser la barre d’applications ubuntu20.04 en remplaçant le Dash par un Dock

Qu’est-ce que le Dash ?
Le Dash est cette barre fixe qui est ancrée par défaut sur le côté gauche, et en position verticale étendue de notre bureau, et où nous pouvons ancrer les différents lanceurs de programmes.

Qu’est-ce que le Dock ?
Le dock est également une barre où les différents lanceurs sont ancrés aux programmes, mais il n’est pas en position étendue et se trouve généralement en position basse du bureau.

Pour résumé, le Dash et le Dock ont les mêmes fonctions à la différence que le Dash ne peut pas changer de position.

Capture d'écran montrant d'une flèche le "Dash" à gaucheChanger le Dash en Dock  et mieux encore, nous pouvons le changer et le placer dans d’autres positions comme à droite, en bas ou en haut de notre bureau.

Il y a deux Façons pour le faire :

  • l’une est d’utiliser un programme avec une interface graphique
  • l’autre est d’utiliser la ligne de commande dans votre terminal favori

1) En utilisant un programme GUI (Graphical User Interface) :

Avant tout il faut installer un programme de configuration de l’environnement GUI qui possède de nombreuses options de configuration sur notre système d’exploitation « dconf-editor« .

Dans les dépôts est hébergé un programme de configuration de l’environnement GUI avec de nombreuses options de configuration sur notre système d’exploitation. Il s’appelle « dconf-editor« .

Pour l’installer, nous allons utiliser notre gestionnaire de paquets « apt »

$ sudo apt install dconf-editor

Dans mon cas, je l’ai déjà installé dans sa dernière version, comme vous pouvez le voir dans l’image ci-dessus.
Une fois téléchargé et installé, nous pouvons l’exécuter en le recherchant dans notre tableau de bord.

Lors de son exécution, il nous montre une fenêtre dans laquelle il nous avertit d’opérer avec prudence, car nous pouvons dé-configurer certaines parties de notre système d’exploitation.

Capture d'écran montrant un message d'avertissement et appelant à être prudentUne fois que nous avons accepté cet avertissement en cliquant sur le bouton « Je serai prudent« , nous devons nous déplacer à travers les différents niveaux de sous-menus, en cliquant dessus.

Le chemin exact que nous devons obtenir pour modifier les paramètres et les options de notre dock est : « /org/gnome/shell/extensions/dash-to-dock/« .

Il existe de nombreuses options de configuration pour notre dock.

Celles qui nous intéressent sont au nombre de deux : « dock-position » et « extend-height« .

Tout d’abord, nous devons rechercher « extend-height« . Cette option nous permet d’étendre ou de laisser notre quai centré, dans la position où il se trouve. Par défaut, il est étendu. Nous allons désactiver cette option.

En cliquant dessus, on obtient ce sous-menu d’options.

En cliquant sur le bouton « Utiliser la valeur par défaut« , les options « Valeur personnalisée » seront déverrouillées, et nous pourrons accéder à l’option « faux » afin que notre dock ne soit pas étendu.

Lorsque nous cliquons sur le bouton « Accepter » dans le coin inférieur droit de la fenêtre, les changements prennent effet. Et nous verrons le dock centré à gauche

Pour revenir au menu précédent, nous devons appuyer sur « dash-to-dock » dans le chemin qui apparaît en haut de la fenêtre :

Il ne nous reste plus qu’à choisir l’option « dock-position« , pour modifier l’emplacement de notre dock. Une fois dans cette option, nous voyons les options suivantes

Si nous cliquons sur le bouton « Utiliser la valeur par défaut« , les options « Valeur personnalisée » seront déverrouillées et nous pourrons en choisir quatre.

Je vais choisir « BOTTOM » et cliquer sur le bouton « Appliquer les modifications« .

Et le résultat est le suivant :

2) En utilisant la ligne de commande sur notre terminal

Depuis votre terminal ce sera beaucoup plus rapide, en exécutant la commande « gsettings » avec l’option « set » et en tapant l’adresse des sous-menus.

Pour désactiver l’extension dash et la transformer en dock nous allons exécuter la commande suivante avec comme argument l’adresse des sous-menus que nous avons vu en mode graphique :

$ gsettings set org.gnome.shell.extensions.dash-to-dock extend-height false

Et pour positionner le dock en bas du bureau, nous allons écrire la commande suivante :

$ gsettings set org.gnome.shell.extensions.dash-to-dock dock-position 'BOTTOM'

Vous pouvez modifier  d’autres options dans le dock, telles que les couleurs, la transparence du fond, la taille des icônes, etc. Mais faites preuve de prudence.

Bref, il y a une multitude de distributions Linux, plein de gestionnaires de fenêtres et tout est toujours très personnalisable… De quoi trouver/créer le Linux qui vous ressemble.

Mettre un filigrane sur des documents officiels – ligne de commande

Mettre un filigrane [ImageMagick] et supprimer les métadonnées [ExifTool] sur des documents officiels que nous devons envoyer via le web ou par mail.

Le tout en ligne de commande depuis un terminal.

Un billet comme un conseil dans ce monde soi-disant idéal de la dématérialisation.

Dans beaucoup de procédures télématiques, il nous est demandé des copies de nos documents personnels, tel que notre pièce d’identité (on va prendre cet exemple dans ce billet).

L’idée de ce billet me vient d’une discussion téléphonique avec une administration qui me demandait d’envoyer une photocopie ou scan de ma carte d’identité.

Curieux, je demande : D’accord, qu’allez-vous faire de cette pièce, c’est très personnel, où sera t-elle stockée, pour combien de temps ? Quelle garantis donnez-vous ?
Réponse : Ne vous inquiétez pas, nous avons des services très spécialisés et toutes les données sont cryptées !
Ha, le mot est lâché, rassurant, « cryptées »…
Moi : Vous me demandez d’envoyer par mail, ça arrive sur une boite mail où je suppose que plusieurs personnels du service y ont accès, comment est géré la boite mail, qui y a accès, est-elle sécurisée ?…
Réponse : Faites-le directement depuis notre site web, il y a le petit cadenas en haut à gauche, tous est crypté…
Ouh là là, « crypté » le mot qui se voudrait rassurant et qui pourtant me fait pousser les poils des oreilles.
Moi : soit, la communication de bout en bout est chiffrée, mais une fois ma pièce envoyée, la carte d’identité, que devient-elle ?
Réponse : Nous avons des spécialistes de la sécurité et tout est crypté…
Moi : bon je résume, je vous envoie un document en clair, transparent via votre site, il se retrouve quelque part sur l’un de vos disques durs, sans que je sache qui y a accès ni ce que deviendra ce document…
Il me coupe la parole… : Je vous l’ai dit, tout est sécurisé et crypté…
Moi : Je peux imaginer que l’accès aux disques ou support soient sécurisés, que les disques dur soient chiffrés, ou comme vous dites, cryptés, mon document lui est en clair et les disques, une fois montés et même chiffrés, les données restent en clair…

Bon je vous fais grâce de la suite de la discussion de sourd.

Dans un monde idéal…

Une fois votre document scanné, l’idéal est de réaliser un chiffrement asymétrique, soit avec votre certificat numérique, soit avec d’une autre façon comme par exemple en utilisant « gpg » (j’aime bien gnupg, je l’utilise pour mes signatures et chiffrement de mes mails et autres…) afin que personne ne puisse lire le document envoyé, sauf celui qui doit le réceptionner.

Mais que ce soit dans l’administration ou ailleurs, il est très rare que l’on se préoccupe réellement de la sécurité de ce que l’on envoie.

Ajouter un filigrane.

Dans le cas où le destinataire ne sait pas comment fonctionne le chiffrement et c’est malheureusement souvent le cas, nous pouvons choisir l’option d’ajouter un filigrane à nos documents privés. D’autant plus que nous ne saurons pas où sera notre document ni pour combien de temps…

Nous allons ajouter en ligne de commande un filigrane sur notre document avec ImageMagick.

Vérifions s’il est déjà, ou pas, installé sur notre pc.

dpkg --get-selections | grep imagemagick
imagemagick             install
imagemagick-6-common    install
imagemagick-6.q16       install

Si vous avez quelque chose de similaire à ci-dessus, c’est qu’il est installé, sinon il n’afficherait rien.
S’il n’est pas installé, il suffit de :

sudo apt install imagemagick

Une fois installé, nous pouvons utiliser tous les outils « ImageMagick ». Dans cet exemple, nous partirons d’une image test que j’ai trouvé sur le net et qui porte le nom « CNI-blog.jpg », vous l’aurez remarqué, je suis un peu plus vieux que sur la photo :

Fausse carte d'identité nationale française au nom de Camille, avec photo d'un bébé, née le 28 mai 2013, taille 53 cm, poids 3,5 kg. Texte : "Nous sommes heureux de vous présenter notre toute nouvelle citoyenne !"
Camille, notre nouvelle citoyenne française, reçoit officieusement sa carte d’identité nationale. Née le 28 mai 2013, elle mesure 53 cm et pèse 3,5 kg.

Afin d’ajouter un filigrane à l’image, nous allons exécuter la commande « convert » avec les options suivantes dans le même répertoire où se trouve notre image:

convert -density 150 -fill "rgba(255,0,0,0.25)" -gravity Center -pointsize 60 -draw "rotate -45 text 0,0 'COPIE'" CNI-blog.jpg CNI-blog-final.jpg

Description des options utilisées:

  • density: La résolution de la largeur de l’image avec l’unité de points par pouce (PPI).
  • fill: Couleur à utiliser.
  • gravity Center: position du texte, dans ce cas centrée sur l’image.
  • pointsize: taille en points de la police.
  • draw: annoter l’image avec une précision. Dans ce cas, avec un texte pivoté de 45 degrés dans le sens antihoraire dans les coordonnées X, Y 0,0 et le texte entre guillemets simples.
  • Ensuite, le fichier source où les modifications seront appliquées (CNI-blog.jpg) et le fichier de destination qui sera créé (CNI-blog-final.jpg).

Le résultat :

Exemple : Sur une Fausse CNI française au nom de Camille, avec photo d'un bébé, née le 28 mai 2013, taille 53 cm, poids 3,5 kg. Filigrane créé avec ImageMagick visible "COPIE" en diagonale.
Ce faux document, inspiré d’une carte d’identité française, intègre un filigrane « COPIE » pour illustrer comment ajouter des watermarks ou des éléments graphiques dans un document via ImageMagick.

Pour compliquer les choses il conviendrait de personnaliser notre filigrane en fonction de chaque procédure:

convert -density 150 -fill "rgba(255,0,0,0.50)" -pointsize 15 -draw "rotate -15 text 0,200 'COPIE POUR TRAITEMENT'" -draw "rotate -15 text -25,260 'DE RECENSEMENT'" CNI-blog.jpg CNI-blog-final-02.jpg

Résultat suivant :

Exemple de document administratif : CNI française au nom de Camille, née le 28 mai 2013, taille 53 cm, poids 3,5 kg. Filigrane rouge "COPIE POUR TRAITEMENT DE RECENSEMENT" visible. Texte : "Nous sommes heureux de vous présenter notre toute nouvelle citoyenne !"
Ce faux document, inspiré d’une carte d’identité française, intègre un filigrane COPIE POUR TRAITEMENT DE RECENSEMENT ».

Supprimer les métadonnées

Pour terminer, nous pouvons supprimer les métadonnées effaçables du fichier (en fait il faudrait commencer par là) avec le programme « exiftool« , ce programme peut être installé à partir des dépôts :

sudo apt install exiftool

Puis :

exiftool CNI-blog-final-02.jpg

Et pour supprimer les métadonnées de notre fichier image avec le filigrane créé, nous allons exécuter :

exiftool -all= CNI-blog-final-02.jpg
    1 image files updated

Pour voir que les métadonnées ont bien disparu comme le montre l’image ci-dessus, exécutez :

exiftool dni-final.jpg

Ces étapes nous ont permis d’apposer un filigrane sur un document privé et de supprimer les métadonnées, de sorte à sécurisé à minima ce que nous envoyons.

J’espère que ces petites astuces vous aideront tout en restant loin de la préservation de la vie privée, mais parfois l’on doit faire à minima.

Script shell : retrouvez un nom de fichier (odt ou ods) depuis un mot clé

Script shell : retrouvez un nom de fichier (odt ou ods) depuis un mot clé.

Vous recherchez un fichier dont vous ne vous souvenez pas du nom mais vous savez qu’il contient certains mots, retrouver ce fichier avec l’un des mots « clés ».

On peut aussi rechercher dans les fichiers « doc » ou « xls », mais une raison que je ne m’explique pas les résultats sont moins convaincants.

Lors de mes tests sur les fichiers « doc », il m’affichait des résultats de fichiers contenant le mot clé mais en excluait d’autres qui contenait ce même mot clé !? Peut-être que cela est dû au fait qu’ils n’ont pas été enregistrés avec les mêmes versions Word ? Bref, je n’ai pas de réponse pour ces extensions propriétaires.

Voici donc le script, rien de révolutionnaire, je n’invente rien, que des trucs que j’essaie d’adapter :

#!/bin/bash
# Recherche une chaîne de caractères dans tous les fichiers odt ou ods
# de façon récursive depuis le lieu de recherche.

# Syntaxe :
# nomduscript.sh "chaîne à rechercher" (sans guillemets).
# Répondre à la première question par odt ou ods
# Fonctionne partiellement avec doc ou xls ????
# Pour limiter la rechercher mettre le chemin absolu...

# exemple : "/home/user/Documents" (sans les guillemets).
# Pour une recherche depuis l'endroit où se trouve le script
# il suffit de taper un point "." (sans les guillemets).

echo "Dans quelle type de fichier penses-tu chercher ?"
echo -n "Saisir le type de fichier (odt ou ods) : "
read exten
echo -n "Saisir le chemin de départ : "
read chemin
find $chemin -type f -name "*.$exten" | while read i
do
[ "$1" ] || { echo "Bah ! Tu as oublié de mettre le mot recherché..." ; exit 1 ; }
unzip -ca "$i" 2>/dev/null | grep -iq "$*"
        if [ $? -eq 0 ]
        then
                echo "j'ai trouvé ton mot dans $i" | nl
        fi
done
echo "J'ai terminé mon travail !"

Une fois que vous avez sauvegardé ce script sous le nom de votre choix. Pour l’exemple nous allons le nommer search_mot.sh

Donc une fois votre fichier search_mot.sh créer il faut le rendre exécutable :

chmod +x search_mot.sh

Comment l’utiliser ? Il suffit de lancer le script avec le mot clé recherché (en fait, le mot clé est une chaîne de caractères). Exemple « script mot-clé » :

./search_mot.sh taxodiaceae

Le script va demander l’extension de fichier (odt ou ods) sachant que vous pouvez mettre doc ou xls mais avec un résultat moins probant… et je n’ai pas d’explication… Mais testez…

Puis il sera demandé le chemin de départ. Il s’agit du chemin absolu.

Donc soit la racine « / », soit votre home « /home/user/ »… Ou un autre chemin pou serrer au plus prêt la recherche. Mais il doit être absolu et partir de la racine /

Bon assez parlé et mon exemple avec les résultats en lançant le script plus le mot clé (ici taxodiaceae) :

./search_mot.sh taxodiaceae
Dans quelle type de fichier penses-tu chercher ?
Saisir le type de fichier (odt ou ods) : odt
Saisir le chemin de départ : /home/sima78/
1 j'ai trouvé ton mot dans /home/sima78/Documents/Bota/fiche/chryptomeria.odt
1 j'ai trouvé ton mot dans /home/sima78/Documents/Bota/cle_identif/chryptomeria_japonica .odt
1 j'ai trouvé ton mot dans /home/sima78/Documents/Bota/noms-familles/taxodiaceae.odt
1 j'ai trouvé ton mot dans /home/sima78/Documents/Bota/in-situ/chryptomeria_japonica.odt
1 j'ai trouvé ton mot dans /home/sima78/Documents/Bota/coniferes.odt
1 j'ai trouvé ton mot dans /home/sima78/Documents/Pedago/parcours/anim-0018.odt
J'ai terminé mon travail !

Voilà, bien entendu, vous pouvez perfectionner le script, le simplifier, je suis preneur…

Generer des QR Code depuis votre terminal

Générer des QR Code depuis votre terminal

De temps en temps je perds ou prends du temps pour fouiller dans les billets de mon ancien blog ou dans mes notes… Ha mes notes, c’est là où je commence des billets sur divers sujets en me disant quand j’aurai le temps je « creuserai » un peu, pour en faire un billet, puis le temps passe, et est-ce le manque de temps ou la paresse ?… Certainement un peu des deux, bon ok, peut-être un peu plus la paresse, mais bon, j’assume.

Mais voilà qu’en fouillant je retrouve des notes sur Qrenco et qrencode et décide de tester et d’en faire un billet.

Générer des Qr Code depuis son terminal, deux possibilités !

  • Sans rien installer
  • En installant qrencode

Sans rien installer

Il suffit de taper (pour l’exemple je prends mon blog), donc remplacer mon site par votre site ou autre.

Allez en une ligne de commande:

$ curl qrenco.de/https//chispa.fr/sima78

Et voilà votre premier QrCode, bon le mien 😉

Avoir votre QrCode en png en installant qrencode

Pour Ubuntu et Debian (avec sudo ou en root)

$ sudo apt install qrencode python-virtualenv

puis :

$ qrencode "https://sima78.chispa.fr" -o $HOME/sima78.png

Avec quelques options:

Un QRCode simple:

$ qrencode -s 8 -l Q -o sima78.png "https://sima78.chispa.fr"
QR code noir et blanc sur fond blanc, avec des motifs géométriques et des carrés de repérage aux coins supérieur gauche et inférieur droit.
Ce QR code minimaliste permet d’accéder rapidement à une information ou un contenu numérique. Ses motifs géométriques et ses repères visuels en font un outil pratique et esthétique.

Un QRCode plus complexe:

$ qrencode -s 8 -l Q -m 4 -v 15 -o sima78-03.png "https://sima78.chispa.fr"
QR code noir et blanc sur fond blanc, avec un motif dense et des carrés de repérage aux coins supérieur gauche et inférieur droit.
Ce QR code, plus complexe et dense, permet d’accéder à une ressource ou un contenu numérique. Ses motifs détaillés garantissent une bonne lisibilité, même sur de petites surfaces.

Pour voir toutes les options:

man qrencode

La source pour qrenco.de :

https://github.com/chubin/qrenco.de

Ecouter sa playlist depuis un terminal avec Moc

Écouter sa playlist depuis un terminal avec Moc.

Je vous l’accorde, ça sent le réchauffé car j’en avais déjà parlé sur mon ancien blog, heu à moins qu’il s’agissait de Cmus que j’avais également testé… La mémoire me joue des tours. Bref, vous vous doutez bien qu’il ne s’agit pas là de la dernière nouveauté et pour ceux qui ne connaissent pas je veux leur faire découvrir ce player en ligne de commande, très léger et qui fait très bien son travail.

Mais pourquoi un player en ligne de commande alors qu’il y en a une pléthore en mode graphique pour Linux ?

Bah, parce que j’aime bien ! Ça déjà, c’est indiscutable… d’autant plus qu’il va à l’essentiel, sans fioriture. Il reste efficace même avec un très grand nombre de fichiers.

Il prend en charge une grande partie des formats de fichiers tels que : MP3 , Ogg Vorbis , FLAC , Musepack , Speex , WAVE. Avec Sndfile il prendra aussi en charge : MOD , WavPack , AAC , SID , MIDI . La plupart des formats audio reconnus par FFMpeg / LibAV sont également pris en charge : MP4, Opus, WMA, APE, AC3, DTS – même intégrés dans des fichiers vidéo.

Pour ce qui est de la sortie il gère OSS, ALSA, JACK et SNDIO.

Installer Moc  (Music On Console – Player)

Sur ubuntu :

$ sudo apt install moc

pour ceux qui ne l’auraient pas dans leurs paquets :
https://moc.daper.net/download

Il ne reste plus qu’a le lancer

$ mocp

Et vous voilà avec deux jolies colonnes.

Sur la colonne de gauche vous vous déplacez sur votre arborescences avec les touches « flèche bas »↓, « flèche haut »↑ et « Entrée » pour aller sur vos répertoires contenant vos musiques.

Vous là, vous pouvez déjà écouter vos musiques mais il ne s’agit pas d’une playlist, celle-ci vous devrez la créer dans la colonne de droite.

Capture d’écran d’une interface de lecture audio en mode texte sous Linux, utilisant le lecteur MOC (Music On Console). L’écran affiche une liste de fichiers MP3 (Giuseppe Verdi et David Bowie) dans le répertoire /home/sima/Musique/Verdi. En bas, le lecteur audio MOC montre le titre en cours de lecture ("Stan Getz - João Gilberto - Corcovado"), le temps écoulé (03:06), la position dans la liste (5/19), et les options de lecture (play/pause, précédent, suivant, shuffle, repeat).
MOC : un lecteur audio puissant et léger pour Linux, entièrement contrôlable en ligne de commande. Idéal pour les utilisateurs qui préfèrent éviter les interfaces graphiques.

D’accord, mais comment faire ? Simplement avec les touches, hé oui, nous sommes sur un terminal.

Quelques fonctionnalités :

a : Ajouter fichier son/dossier des fichiers à la playlist
A : Ajouter un dossier de façon récursive à la playlist (en considérant le contenu de ses sous-dossiers)
ENTRER : jouer un fichier dans la liste ou Ouvrir un dossier
Tabulation : se déplacer entre les 2 colonnes (l’explorateur de fichiers à gauche et la Playlist à droite)
n : Jouer le fichier suivant
b : Jouer le fichier précédent
R : activer/désactive le mode Répétition
S : activer/désactive le mode Lecture Aléatoire de la liste/playlist en cours
p : Pause/Play
s : Stop
C : Nettoyer la playlist
T : Basculer dans le sélecteur d’apparence, pour changer le thème.
V : Pour sauvegarder la playlist actuelle au format « .m3u » dans le répertoire courant.
q :  Quitter le lecteur (l’afficheur) en gardant le serveur de musique actif
Q : Quitter totalement le lecteur

Le petit plus de Moc

Supposons que vous avez tapé « q » vous reprenez la main sur votre console pour taper vos lignes de commandes tout en musique.

Vous pouvez continuer à intervenir sur « Moc » avec les commandes suivantes

$ mocp -P (Mettre la musique en cours en pause)
$ mocp -U (Annuler la pause)
$ mocp -f (Jouer la musique suivante)
$ mocp -r (Jouer la musique précédente)
$ mocp -x (Fermer le lecteur MOCP)
$ mocp -q (Ajouter des fichiers du dossier courant à la playlist)
$ mocp -i (Afficher les informations méta de la musique en cours)
$ mocp -help (Pour afficher l’aide vous y découvrirez d’autres commandes)

Voir toutes les commandes

$ man mocp

Récupérer les données sur clé USB défectueuse – Photorec

Récupérer les données sur clé USB défectueuse – Photorec

Lorsque je pars en vacances j’aime bien avoir mes PlayLists audio sur une clé USB que je branche dans la voiture. Et là, après avoir récupéré mon véhicule au garage (oui, m’a vie est pleine d’imprévues) ma clé tombe au sol. Je la branche et l’écran de ma voiture m’affiche « Erreur connexion usb… ». Bref elle ne fonctionne plus.

Je préviens, inutile de me mettre en commentaire des propos du genre : une playlist sur clé usb, c’est un truc de vieux, tu peux avoir tes playlists en ligne, il y a des services dédiés… En plus Sima, tu as tes playlists sur ton cloud, alors ton smartphone et le bluetooth, tu sais ça marche bien, etc »
Je sais tout ça, donc inutile de me le rappeler, mes gosses se chargent déjà très bien de ce genre de réflexion  IRL

Bah oui, c’est peut-être un truc de vieux d’avoir ses playlists sur clé usb, et moi j’aime bien !

Rentrons donc dans le vif du sujet, je ne peux plus accéder aux musiques de ma clé usb.

Je branche la clé USB sur mon pc portable, elle s’allume mais ne clignote pas, ne se monte pas automatiquement.
Bon je sens que je vais passer plusieurs lignes de commande en root alors pour ne pas répéter les « sudo »

$ sudo -s

Ensuite, voyons si elle est visible

root@Port-01:~# fdisk -l
[Je ne mets pas tout l’affichage, allons à l’essentiel, tout en bas]
(…)
Périphérique Amorçage Début      Fin Secteurs Taille Id Type
/dev/sdb1    *           32 15669247 15669216   7,5G  c W95 FAT32 (LBA)

Point positif la clé est vue !

Donc j’essaie de la monter à la main :

root@Port-01:~# mount /dev/sdb1 /media/sima/
mount: /media/sima : wrong fs type, bad option, bad superblock on /dev/sdb1, missing codepage or helper program, or other error.

Bon là c’est déjà moins sympa. Je tente un fsck, sans grande conviction :

root@Port-01:~# fsck -r /dev/sdb1
fsck de util-linux 2.31.1
e2fsck 1.44.1 (24-Mar-2018)
ext2fs_open2: Numéro magique invalide dans le super-bloc
fsck.ext2 : Superbloc invalide, tentons d'utiliser les blocs de sauvetage...
fsck.ext2: Numéro magique invalide dans le super-bloc lors de la tentative d'ouverture de /dev/sdb1

Le superbloc n'a pu être lu ou ne contient pas un système de fichiers
ext2/ext3/ext4 correct. Si le périphérique est valide et qu'il contient réellement
un système de fichiers ext2/ext3/ext4 (et non pas de type swap, ufs ou autre),
alors le superbloc est corrompu, et vous pourriez tenter d'exécuter
e2fsck avec un autre superbloc :
    e2fsck -b 8193 <périphérique>
 ou
    e2fsck -b 32768 <périphérique>
/dev/sdb1: status 8, rss 4400, real 0.107799, user 0.004140, sys 0.004140

Bon, comme ce n’est pas satisfaisant et que je n’ai pas envi de perdre trop de temps en ligne de commande, passons directement à Photorec.

Photorec

Logo de PhotoRec, un logiciel open source de récupération de données. L’icône représente symboliquement des supports de stockage (disque dur, clé USB, disquette) et le nom "PhotoRec" en grand. En dessous, le slogan "digital picture recovery" et "from cgsecurity.org" sont visibles. Le design utilise un fond vert et blanc.
PhotoRec : l’outil de récupération de données le plus connu pour les images et fichiers multimédias. Son logo, reconnaissable entre tous, symbolise sa spécialisation dans la récupération de fichiers sur différents supports de stockage.

Ayant déjà utiliser Photorec avec succès, je me dis : pourquoi pas !
Installation de TestDisk dans lequel se trouve photorec

root@Port-01:~# apt install testdisk

Puis on lance :

root@Port-01:~# photorec
PhotoRec 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Capture d’écran de l’interface en ligne de commande de PhotoRec 7.0, affichant deux disques détectés : un disque dur interne de 500 Go et une clé USB de 8 Go. Le logiciel, développé par Christophe Grenier, est un outil gratuit de récupération de données, distribué sous licence GPL. En bas de l’écran, les options "Quitter" et "Procéder" sont visibles.
PhotoRec 7.0 en action : l’outil opensource de récupération de données affiche les disques disponibles avant de lancer une analyse. Ici, un disque dur interne et une clé USB sont prêts à être scannés pour récupérer des fichiers perdus.

Capture d’écran de l’interface en ligne de commande de PhotoRec 7.0, affichant deux disques détectés : un disque dur interne de 500 Go et une clé USB de 8 Go. Le logiciel, développé par Christophe Grenier, est un outil gratuit de récupération de données, distribué sous licence GPL. En bas de l’écran, les options "Quitter" et "Procéder" sont visibles.
PhotoRec 7.0 en action : l’outil opensource de récupération de données affiche les disques disponibles avant de lancer une analyse. Ici, un disque dur interne et une clé USB sont prêts à être scannés pour récupérer des fichiers perdus.
Capture d’écran de PhotoRec 7.0 affichant une fenêtre de sélection du type de système de fichiers. L’interface propose plusieurs options : ext2/ext3/ext4, FAT/NTFS/HFS/ReiserFS, ou "Autre". Un message indique que PhotoRec a besoin de connaître le type de système de fichiers où les fichiers perdus étaient stockés pour lancer la récupération.
PhotoRec 7.0 demande à l’utilisateur de préciser le type de système de fichiers (ext2/ext3/ext4, FAT, NTFS, etc.) avant de procéder à la récupération de données. Une étape clé pour une analyse efficace.
Capture d’écran de PhotoRec 7.0 affichant une fenêtre de sélection du type de système de fichiers. L’interface propose plusieurs options : ext2/ext3/ext4, FAT/NTFS/HFS/ReiserFS, ou "Autre". Un message indique que PhotoRec a besoin de connaître le type de système de fichiers où les fichiers perdus étaient stockés pour lancer la récupération.
PhotoRec 7.0 demande à l’utilisateur de préciser le type de système de fichiers (ext2/ext3/ext4, FAT, NTFS, etc.) avant de procéder à la récupération de données. Une étape clé pour une analyse efficace.
Capture d’écran de PhotoRec 7.0 affichant une liste de répertoires disponibles pour enregistrer les fichiers récupérés. L’interface indique clairement de ne pas choisir le même répertoire que celui des fichiers perdus. Les options incluent des dossiers comme /home/sima/Musique et des sous-dossiers dédiés à la récupération (recup dir.1, recup dir.2, recup dir.3).
PhotoRec 7.0 demande à l’utilisateur de choisir un emplacement sûr pour enregistrer les fichiers récupérés. Une étape essentielle pour éviter d’écraser les données perdues.
Capture d’écran de PhotoRec 7.0 en pleine phase d’analyse. L’outil affiche des statistiques détaillées : 7229360 secteurs lus sur un total de 15669216, 699 fichiers trouvés, et un temps écoulé de 3 minutes et 26 secondes avec un temps estimé à 4 minutes pour terminer. Les fichiers récupérés sont répertoriés par type (mp3, jpg, txt, zip, tx?). Le bouton "Stop" permet d’interrompre l’analyse.
PhotoRec 7.0 en action : l’outil affiche la progression de la récupération de données sur une clé USB. Les fichiers sont analysés secteur par secteur, et les résultats sont mis à jour en temps réel.

Le dernier screenshot est pris en cours d’exécution.

Et là, hourra ! Non seulement j’ai récupéré toutes mes musiques mais aussi retrouvé des fichiers que j’avais effacés depuis longtemps (photos, textes, vidéos, etc.).

Bien entendu, les fichiers audios ne sont plus ordonnés comme avant et n’ont plus leur nom de fichier d’origine mais un nom imposé par défaut lors de la récupération.
Reste plus qu’à passer par une application permettant de renommer mes fichiers audios en se basant sur les tag… Puis remettre tout sur une nouvelle clé USB.
J’ai utilisé « Entagged », mais il en existe plein d’autres sous linux « EasyTAG », etc. Ce sera peut-être un sujet de billet à venir.

Note: Si je n’ai pas récupéré mes playlists directement depuis mon cloud, ce qui aurait été plus simple, c’est que j’avais une connexion catastrophique à cet instant. Installer testdisk était la solution la plus rapide, même si j’ai dû m’y reprendre à deux fois.

VIM 04 – Utiliser des onglets dans l’éditeur Vim – ouvrir un Shell depuis Vim

Utiliser des onglets dans l’éditeur Vim – ouvrir un shell

Je souhaite partager un usage de Vim très intéressant: pouvoir travailler dans Vim avec des onglets et dans chaque onglet des fichiers différents et/ou même plusieurs fenêtres dans chaque onglet.

Bon, c’est le quatrième billet sur le sujet, si vous découvrez Vim, commencez par lire « VIM 01 – Entrer et sortir de Vim et Vimtutor » et surtout suivez le tutoriel « Vimtutor ».

Commencez par ouvrir plusieurs fichiers dans Vim avec la commande:

$ vim -p fichier1 fichier2 fichier3

Ce que dit le « man vim » concernant l’option « -p »

-p[N]       Ouvre N onglets. Quand N est omis, ouvre un onglet pour chaque fichier fichier.

Les trois fichiers ont été ouverts dans Vim sur des onglets différents.

Capture d'écran d'un terminal Linux montrant l'éditeur Vim avec plusieurs onglets ouverts (commade.txt, kclean-4.2.sh, save-serveur.txt). L'interface affiche des commandes shell exécutées depuis Vim, illustrant l'intégration du terminal dans l'éditeur.
Cette image montre comment utiliser les onglets dans Vim pour organiser plusieurs fichiers en cours d’édition. Elle illustre également l’ouverture d’un shell directement depuis Vim, permettant d’exécuter des commandes système sans quitter l’éditeur.

Si vous voulez en ouvrir un autre, il suffit de taper la commande

:tabnew fichier4

Et un nouvel onglet s’ouvrira.

Il y a aussi d’autres options pour ouvrir les onglets à différents endroits:

:-tabnew → ouvre l'onglet avant l'onglet actuel
:0tabnew → ouvre l'onglet en première position
:$tabnew → ouvre l'onglet en dernière position

Dans la partie supérieure l’on voit les différents onglets ouverts et le nom du fichier. Si vous modifiez le texte d’un onglet, le signe + apparaît à côté de son nom pour indiquer qu’il a été modifié et non sauvegardé.

Si vous divisez « Splitter » un onglet (comme vu dans Vim-03), un numéro apparaît à côté du nom, indiquant le nombre de divisions de cet onglet

Pour se déplacer entre les différents onglets, plusieurs options. En mode normal:

gt → passe à l'onglet suivant
gT → passe à l'onglet précédent
:tabfirst → passe au premier onglet
:tablast → passe au dernier onglet

Il y a aussi la possibilité de pouvoir réorganiser les onglets existants de la manière que vous souhaitez. Pour ce faire, il y a la commande « :tabm n » où « n » est le numéro de la position où l’on veut déplacer l’onglet en cours, en tenant compte du fait qu’il commence à compter à partir de la position 0.

Mettre l’onglet actuel en première position, nous tapez:

:tabm 0

Si vous voulez voir les onglets que vous avez ouverts et ce que vous avez dans chacun d’entre eux, vous pouvez exécuter la commande

:tabs

Exemple:

$ vim -p work/arch-vim/vim-03/vim-todo-lists.vim todo.vim Documents-vim.todo-list.txt

Dans Vim tapez « :tabs »

:tabs

Résultat:

Onglet 1
>   work/arch-vim/vim-03/vim-todo-lists.vim
Onglet 2
    todo.vim
Onglet 3
    Documents-vim.todo-list.txt
Appuyez sur ENTRÉE ou tapez une commande pour continuer

Cela nous indique que je suis actuellement sur l’onglet 1 « > » et le nom de fichier ouvert dans chaque onglet.

J’en ai fini avec les onglets, passons à l’ouverture d’un Shell

Ouvrir un shell depuis Vim

Vous êtes sur vim, et soudain, vous avez besoin de vérifier une ligne de commande ou autre chose depuis un terminal.
Inutile d’ouvrir un autre terminal, ou un onglet terminal (ne pas confondre avec onglet Vim vu plus haut), ou quitter Vim pour y revenir….

Rien de plus simple que d’ouvrir un shell depuis Vim.

Tapez l’une de ces deux commandes :

:shell

ou simplement:

:sh

Pour quitter le shell et revenir à notre vim, tapez

exit

Rajout suite aux commentaires 2020-0622-22:02.

On peut visualiser le shell en faisant:

:!

Appuyer sur « Entrée » pour revenir à Vim

Ou encore accéder au shell en tapant Ctrl+z pour passer Vim en arrière plan, faites ce que vous avez à faire, puis exécutez « fg » pour faire revenir Vim au premier plan.

Fin de rajout

Fin de ce billet sur Vim et Utiliser des onglets dans l’éditeur Vim – ouvrir un shellPour retrouver les billets concernant la série Vim:
Application Vim sur le tag Vim

Vim 03 – Diviser et redimensionner des fenêtres

Diviser « Splitter » et redimensionner des fenêtres dans l’éditeur Vim.

Lorsque vous travaillez avec un éditeur de texte il est souvent utile de pouvoir diviser en plusieurs fenêtres.

Vim permet de diviser facilement la fenêtre, verticalement et/ou horizontalement. Il est ensuite possible de redimensionner chacune des fenêtres pour les adapter à nos besoins.

L’intérêt d’avoir plusieurs fenêtres (deux, trois, quatre, etc.) est de permettre de voir  d’autres parties du fichier en cours d’édition, d’autres fichiers, l’aide de Vim, etc.

Voyons comment diviser une fenêtre sur l’éditeur Vim

Horizontalement :

:sp

Verticalement :

:vsp

Vous pouvez également utiliser les deux commandes simultanément en fonction des besoins, voir ci-dessous.
Vous déplacer d’une fenêtre à l’autre « Ctrl »+ »w »+ »flèche » ou comme vu dans VimTutor pour les déplacements (h, j, k, l)

Dès que vous faites « Ctrl+w » vous devez voir en bas à droite de votre console « ^w »
C’est-à-dire que nous appuyons sur la touche Ctrl et la touche w et nous pouvons relâcher, puis sur la touche dont nous avons besoin.

^w(+)Flèche haut : Passer à la fenêtre supérieure
^w(+)Flèche bas : Passer à la fenêtre inférieure
^w(+)Flèche droite : Passer à la fenêtre de droite (au même niveau !)
^w(+)Flèche gauche : Passer à la fenêtre de gauche (au même niveau !)

ou

^w(+)h : Placer le curseur à la fenêtre de gauche
^w(+)j : Placer le curseur à la fenêtre inférieure
^w(+)k : Placer le curseur à la fenêtre supérieure
^w(+)l : Placer le curseur à la fenêtre de droite

Je dois vous dire que ^w(+)lettre ne fonctionne pas sur mon pc? J’utilise les flèches, alors qu’en mode normal les lettres de déplacement fonctionnent aussi bien que les flèches.

Il est aussi possible de redimensionner les fenêtres à nos besoins.

^w(+)+ : pour agrandir la fenêtre
^w(+)- : pour réduire la taille de la fenêtre

Si nous voulons augmenter ou diminuer la fenêtre de 10 lignes

^w(+)10+ : pour agrandir la fenêtre de 10 lignes

Réduire de 5 lignes

^w(+)5- : pour réduire la fenêtre de 5 lignes

Pour agrandir ou réduire une fenêtre divisée verticalement

^w(+)>
^w(+)<

De même, si nous souhaitons agrandir ou réduire d’un certain nombre de colonnes

^w(+)10>
^w(+)10<

Pour dimensionner une fenêtre à la taille maximale autorisée

^w(+)| : pour la division verticale
^w(+)_ : pour la division horizontale

Enfin, si nous souhaitons une répartition égale des espaces

^w(+)=

Capture d'écran d'un terminal Linux montrant l'éditeur Vim avec deux fenêtres divisées horizontalement. L'interface est en mode texte, avec un fond noir et du texte en blanc, illustrant l'utilisation des commandes de split dans Vim.
Cette image montre le résultat de l’application des commandes de division (:sp ou :vsp) et de redimensionnement des fenêtres dans Vim. Les deux fenêtres permettent d’éditer différents fichiers ou vues simultanément, une fonctionnalité puissante pour la productivité.

Rajout suite au commentaire:

Bien entendu, pour fermer les fenêtres il suffit de se positionner dessus et de taper (en mode normal)

:q

Fin de rajout

Fin de ce billet sur Vim et la division et la dimension des fenêtres.

Pour retrouver les billets concernant la série Vim:
Application Vim sur le tag Vim

VIM 02 – Afficher les numéros de ligne dans l’éditeur

Afficher les numéros de ligne dans l’éditeur Vim

Deuxième billet de la série Vim.

Il arrive souvent lors d’un bug que le message d’erreur vous renvoi vers un numéro de ligne d’un fichier, ou un tutoriel vous suggère de modifier tel mot par tel autre à la ligne n°x.

L’éditeur Vim n’affiche pas par défaut les numéros de ligne d’un fichier. Voyons comment les activer et autres astuces.

Il faut dire que Vim pourrait être un peu plus « convivial ». Ce qui manque dès le démarrage, c’est que les numéros de ligne d’un fichier ne soient pas affichés.

Les activer est une chose très simple, comme nous le verrons. Mais nous en apprendrons aussi davantage sur ces informations pratiques offertes par Vim et sur d’autres façons alternatives d’afficher les numéros de ligne dans Vim.

Pour que l’éditeur Vim puisse afficher les numéros de ligne d’un fichier, il doit être configuré, car par défaut il n’est pas activé. Mais Vim a plusieurs options pour cette fonctionnalité.

PS: Si vous avez suivi le tutoriel VimTutor, vous devriez savoir que pour activer la « zone commande » (mode normal)vous devez  appuyer sur la touche « Echap » ou « Esc ». Par défaut, lorsque vous ouvrez vim, il s’ouvre en mode « normal », si vous souhaitez modifier du texte il faut passer en mode « Insertion » en tapant :i (il y a d’autre touches mode insertion…

Rajout du 22/06/2020 suite à une question dans les commentaires

Ouvrir un fichier à une ligne bien précise:

Vous souhaitez ouvrir le fichier toto.txt à la ligne 127. La commande est :

vim +[numéro-de-ligne] nom-du-fichier dans notre exemple:

vim +127 toto.txt

Fin du rajout.

L’une des commandes suivantes peut être exécutée pour afficher les numéros de ligne :

:set number
:set nu

Si nous voulons les désactiver, nous pouvons exécuter l’une des commandes suivantes :

:set nonumber
:set nonu

Si nous voulons passer d’un mode à l’autre, nous pouvons exécuter l’une des commandes suivantes :

:set number!
:set nu!

Ce qui signifie que si vous tapez la commande « :set nu! » une première fois vous aurez la numérotation, si vous retapez « :set nu! », annule la numérotation.

Vous pouvez aussi aller à une ligne spécifique. Par exemple, pour aller à la ligne 17 de votre document, étant en mode normal, nous exécutons la commande : (cela fonctionne même si les numéros de ligne ne sont pas affichés.)

:17

Afficher les numéros de ligne dans Vim de manière relative

Avec cette option, chaque numéro de ligne est numéroté non pas à partir du début du texte de manière immuable, mais à partir de la position du curseur, qui sera marquée comme la position 0.

Bien entendu, comme celui-ci change de position au fur et à mesure que nous avançons dans le document, ces chiffres relatifs changeront également.

Pour activer cette option, nous pouvons le faire en exécutant l’une des commandes suivantes :

:set relativenumber
:set rnu

Pour désactiver :

:set norelativenumber
:set nornu

Heu, juste une précision, les commandes qui sont données par deux sont similaires, ce qui signifie que vous pouvez activer avec « :set relativenumber » et désactiver avec « :set nornu » et inversement.

Pour alterner entre une option et une autre, nous pouvons le faire au moyen de n’importe laquelle de ces commandes :

:set relativenumber!
:set rnu!

Si nous voulons faire un saut de 5 lignes à partir de la position du curseur, nous pouvons le faire avec la commande :

5k

Afficher les numéros de ligne dans Vim de manière « hybride »

Depuis la version 7.4 de Vim, l’activation des deux options « number » et « relativenumber » produit un mode de numérotation de ligne hybride.

Il affiche tous les numéros de ligne de manière relative, à l’exception de la ligne où se trouve le curseur, qui affichera le numéro de ligne absolu, au lieu du numéro 0 qu’elle affichait en mode relatif.

Pour activer ce mode de numérotation des lignes, nous pouvons le faire avec n’importe laquelle de ces commandes :

:set number relativenumber
:set nu rnu

Ce qui signifie que vous pouvez également le faire en deux fois… vous avez besoin de la numérotation vous faites « :set nu », puis vous avez besoin de la numérotation relative sans perdre votre numéro de ligne, tapez « :set rnu »… Vous souhaitez revenir à la numérotation basique, tapez « :set nornu »…

La largeur de la colonne où sont indiqués les numéros de ligne est configurable. Vous pouvez régler la largeur à l’aide de n’importe laquelle des commandes :

:set numberwidth=4
:set nuw=4
Fin de ce billet sur Vim et la numérotation.

Pour retrouver les billets concernant la série Vim:
Application Vim sur le tag Vim

VIM 01 – Entrer et sortir de Vim et Vimtutor

Beaucoup de choses ont déjà été publiés sur le sujet, j’en suis conscient, j’espère faire découvrir Vim d’une façon différente et c’est surtout un prétexte pour m’y replonger, me redonner le reflex Vim et certainement me perfectionner.

Ce premier billet sur le sujet est très basique, le but est de savoir entrer et sortir de vim d’apprendre le minimum syndical au niveau des commandes pour éviter de revenir sur certaines commandes dans les articles qui suivront.

Je ne compte pas parler des versions graphiques, ni comment installer Vim car il me semble que cela l’est par défaut sur toutes les distributions linux (je n’ai pas souvenir d’avoir fait un jour « apt-get [ou apt] install vim », mais bon.)[voir les commentaires en fin de billet]. Je ne rentrerai pas dans la bataille Vim contre Emacs, ni dans les comparaisons avec d’autres éditeurs de textes que j’utilise régulièrement « Gedit« , « Nano » qui ont aussi toute leur utilité.

Là c’est simple, ouvrez une console et tapez « vim » :

$ vim
Capture d'écran de l'éditeur Vim en version 8.0.707, affichant les informations de version, les crédits (Bram Moolenaar et al.) et les instructions d'aide pour les utilisateurs. L'interface est en mode terminal avec un fond noir et du texte vert.
Cette image montre l’écran de démarrage de Vim, un éditeur de texte puissant et populaire dans le monde du logiciel libre. On y voit la version 8.0.707, les crédits des contributeurs, et des instructions pour obtenir de l’aide ou quitter le programme.

Comment sortir de l’éditeur Vim ?

Vous êtes coincé dans l’éditeur de Vim et vous ne savez pas comment en sortir ? Vous n’êtes pas le seul à qui cela est arrivé !

Pourtant c’est écrit à l’ouverture de vim.

Mais cela arrive au débutant, surtout si pour une raison quelconque, un fichier a été ouvert dans l’éditeur Vim (que vous découvrez) et que vous souhaitez quitter mais ne trouvez pas comment le faire, nous allons maintenant voir la solution. Mais ne soyez pas frustré, vous n’êtes pas le premier.

Une question banale ?

Le site web Stack Overflow est l’une des communautés de développeurs importantes et réputées qui cherchent des solutions, de l’aide sur la façon de résoudre les différents problèmes rencontrés par les programmeurs de nombreux domaines et langages.
Et pourtant il y a la question d’un utilisateur qui demande à la communauté comment sortir de l’éditeur de Vim ? Alors une question plutôt banale… ou pas tant que ça ! il suffit de lire le fil pour voir l’importance de la question.
Pendant des années, cette question a été une blague récurrente sur certains réseaux sociaux.

Alors que personne ne se moque de ceux qui pose la question et ne retardons pas plus longtemps la solution. Voici la réponse à la question « comment sortir de l’éditeur Vim? » :

  • Appuyez sur la touche Echap ou Esc. Le curseur va se placer en bas (la zone de commande)
  • Appuyez sur la séquence de touches :q
  • Vous pouvez également appuyer sur :q! pour quitter l’éditeur sans enregistrer les modifications
  • Appuyez sur la touche Entrée

Résumé des commandes. D’abord, nous appuyons sur Echap ou Esc pour nous placer dans le tampon inférieur en mode normal, et :

  • : q → quitte le fichier, si nous n’avons aucune modification sans l’enregistrer, il suffit de quitter.
  • : q! → quitte le fichier en supprimant les modifications non enregistrées.
  • : w → enregistre les modifications apportées au fichier, mais ne quitte pas Vim pour continuer à modifier le fichier.
  • : wq → enregistrer les modifications et quitter Vim.
  • : x → identique à la précédente.

Bien, vous savez entrer et sortir de l’éditeur Vim. Bon, finalement rien de compliqué jusque-là, alors passons à la suite, c’est encore plus simple.

VimTutor

Une application pour apprendre pas à pas les premières commandes sur Vim, avec cela vous allez vous familiariser avec Vim.
Bah, pourquoi tu n’as pas commencé par ça Sima78 ?
Commencer par quelques difficultés lorsque l’on découvre une application (bon, ce n’était pas non plus l’enfer…) et que l’on passe soudainement à quelque chose de plus ludique, celui qui n’a pas décroché va se dire « bah, moi aussi je peux utiliser Vim »… Du moins j’espère que ce sera la réaction du débutant.

Donc Vimtutor pour apprendre pas à pas, il faut commencer par l’installer (sur Debian et dérivées) :

# apt install vimtutor

ou

$ sudo apt install vimtutor

Puis on lance Vimtutor

$ vimtutor

Le résultat :

Capture d'écran du tutoriel Vim en français, affichant une introduction au logiciel Vim, ses objectifs pédagogiques, et des instructions pour configurer son clavier avant de commencer le cours.
Cette image montre la première page du tutoriel Vim en français, version 1.7. Elle explique l’objectif du cours, la durée estimée, et donne des conseils pour bien démarrer, notamment en vérifiant l’état du clavier.

Suivez le tuto pendant 25, 30 minutes. Recommencez jusqu’à bien maîtriser ces commandes de bases, vous aurez l’essentiel pour commencer à utiliser basiquement Vim et surtout pour aller plus loin.

Fin de ce billet sur Entrer et sortir de Vim et Vimtutor.

Pour retrouver les billets concernant la série Vim:
Application Vim sur le tag Vim