Adoption des sinogrammes pour les options courtes des programmes GNU

Posté par  (site web personnel) . Édité par Davy Defaud, ZeroHeure et bubar🦥. Modéré par ZeroHeure. Licence CC By‑SA.
30
1
avr.
2018
Humour

C’est une petite révolution du côté des coreutils, des built‐ins Bash et de tous ces petits programmes du projet GNU qu’on utilise sans même y penser : ceux‐ci voient arriver un changement majeur à leur syntaxe, qui va consister à utiliser des sinogrammes (caractères chinois) pour remplacer les options courtes, c’est‐à‐dire les options qui étaient jusqu’à aujourd’hui composées d’un tiret et d’une seule lettre de l’alphabet latin. Cette évolution est motivée par la pénurie de plus en plus pressante de lettres pour les options de certaines commandes, au développement desquelles elle devrait donner un nouveau souffle.

Interrogé lors d’une récente conférence à Paris, Richard Stallman lui‐même a déclaré : « J’approuve ce changement car ces programmes seront toujours distribués sous la licence publique générale GNU, version 3 ».

Tous les détails dans la suite de la dépêche.

Liquidprompt version 1.8

Posté par  (site web personnel) . Édité par Nÿco et claudex. Modéré par patrick_g. Licence CC By‑SA.
29
16
jan.
2014
Ligne de commande

Le Liquid Prompt est un prompt fluide affichant de manière limpide des informations utiles là où vous les verrez : le prompt de votre shell bash ou zsh. Le liquidprompt était déjà bien rempli de fonctionnalités, mais vu la quantité de travail de fond accompli sur la branche de développement, il coulait de source qu'il était temps de sortir une nouvelle version stable.

La version précédente manquait de tests sur les architectures que je ne peux pas tester (MacOS X, *BSD…), mais grâce aux nombreux contributeurs (apparemment pour la plupart francophones) les problèmes ont vite été résolus sur la branche de développement, develop. Grâce au passage de témoin officiel de l'auteur initial, nojhan, j'ai eu les coudées franches pour faire des factorisations plus profondes pour améliorer les performances.

Je profite de cette annonce pour féliciter publiquement deux contributeurs en particulier qui ont participé activement à cette version : François Schmidts et Rolf Morel grâce à des patches décisifs et pour de l'aide à mon travail de mainteneur grâce au défrichage des tickets. Merci !

Journal Dispositio, une bibliothèque Shell POSIX pour afficher des tables de données

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
28
8
août
2025

Si, comme moi, vous avez eu à reprendre et adapter du script shell pour afficher des tableaux avec mise en forme dans le terminal ou dans des script générant des syntaxes Markdown ou Textile (Génération automatique de ticket Redmine), alors vous serez sans doute intéressé par Dispositio.
Dispositio est un script shell conforme POSIX qui permet l'affichage des tables de données provenant de fichiers CSV, JSON et YAML dans le terminal. Il offre un formatage avancé, un support des couleurs (…)

Journal Gufo: un langage de shell moderne!

Posté par  . Licence CC By‑SA.
27
7
déc.
2017

Gufo est un prototype de langage de script moderne qui peut embarquer des commandes unix et servir de shell.

Pourquoi

Bash est, pour les utilisateurs techniques, l'interface texte majeure sous les systèmes GNU-linux.

La raison principale est la facilité à appeler des programmes externes et la possibilité de combiner des flux d'entrées/sorties dans l'environnement orienté fichier de GNU-linux.

En gardant conscience de la qualité et de la quantité de travail qui a été mise dans Bash, un système d'exploitation moderne (…)

Journal MCS: Un bot pour Teamspeak sous GNU/Linux

Posté par  (site web personnel) . Licence CC By‑SA.
26
15
août
2015

Bonjour,

J'écris ce premier journal (que de stress…) pour parler du logiciel Teamspeak sous Linux.

En effet Teamspeak est un logiciel de VoIP permettant de communiquer oralement en se connectant à un serveur, il est alors possible de créer des salons de discussion… Oui c'est un peu l'IRC de la VoIP et il est très apprécié chez les joueurs. J'utilise beaucoup ce logiciel pour communiquer avec des amis et certains d'entre eux utilisaient des bots.

Un bot est un programme (…)

Journal Shebang #!/usr/bin/env sh : testé et approuvé

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
26
2
mai
2019

Je prends grand soin à éviter les bashismes pour que mes scripts puissent tourner sur n’importe quel système, quelque soit le shell présent, pourvu qu’il soit compatible POSIX.

Mes scripts shell son préfixés avec le shebang #!/usr/bin/env sh et jusqu’à maintenant, je le faisais purement pour la bonne pratique, en me disant que je pourrais très bien utiliser #!/bin/sh, et mon environnement d’exécution se débrouillera toujours pour trouver un shell compatible POSIX pour exécuter mon script. Et si le (…)

LiquidPrompt version 1.0

Posté par  (site web personnel, Mastodon) . Édité par Nÿco et Florent Zara. Modéré par rootix. Licence CC By‑SA.
Étiquettes :
26
10
août
2012
Ligne de commande

LiquidPrompt est un prompt bash intelligent, dont l'idée générale est d'afficher élégamment des informations utiles uniquement quand le contexte le demande.

Un grand nombre de fonctionnalités, détaillées dans la suite de la dépêche, sont maintenant disponibles suite au succès fulgurant rencontré par la dernière dépêche sur le sujet.

NdM : nojhan est le papa des Geekscottes

Journal Lire de fichiers de configuration depuis un script shell

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
25
5
juin
2015

La petite technique shell du vendredi. Pour lire un fichier de configuration du style INI depuis un script shell, on peut utiliser le petit script sed suivant

1 {
  x
  s/^/default/
  x
}

/^#/n

/^\[/ {
  s/\[\(.*\)\]/\1/
  x
  b
}

/=/ {
  s/^[[:space:]]*//
  s/[[:space:]]*=[[:space:]]*/|/
  G
  s/\(.*\)\n\(.*\)/\2|\1/
  p
}

Il transforme

    # last modified 1 April 2001 by John Doe
    [owner]
    name=John Doe
    organization=Acme Widgets Inc.

    [database]
    # use IP address in case network name resolution is not working
    server=192.0.2.62
    port=143
(…)

Journal Args parser pour shell

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
25
15
fév.
2024

Bonjour à tous,

Vous écrivez des scripts shell mais vous trouvez que la gestion des options et arguments ainsi que de l'aide n'est pas leur point fort.
Pour pallier a ça j'ai fais une petite lib à sourcer dans vos scipts shell (dash, bash, zsh, ksh testés) pour gérer ceci.

Elle fonctionne un peu à la manière de argparse sous python et intègre une option pouir générer des script de complétion pour bash et zsh.
Elle est disponible ici (…)

Journal Récupérer une liste de lecture Apple

Posté par  (site web personnel) . Licence CC By‑SA.
24
26
mai
2019

Je suis récemment allé à une soirée où le choix musical m'a plu. La personne qui mettait sa musique a découvert qu'elle pouvait me partager sa liste en m'envoyant un lien qui pointe vers https://music.apple.com/fr/playlist/[quelque chose].

Je n'ai pas iTunes. Mon but : récupérer cette liste et en faire un truc que je peux utiliser. Ce journal est aussi un prétexte pour jouer avec jq, un outil pour faire des requêtes sur des données formatées en JSON.

Prenons (…)

Journal Migration de / d'un disque dur à l'autre avec btrfs

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
24
27
nov.
2017

Bonjour,

Suite aux bons journaux trouvés sur linuxfr à propos de btrfs,
j'ai transformé mes systèmes de fichier principaux en btrfs pour pouvoir
bénéficier de ses avantages et de snapperd.

Aujourd'hui, j'ai fait une mise à jour de mon nas pour passer du ssd au nvme.

Le nouveau disque est plus petit que l'ancien, je ne peux pas faire une bête
copie bit à bit de l'ancien disque vers le nouveau comme je fais à mon habitude.

Au vu des (…)

Journal petite introduction à Fish

Posté par  . Licence CC By‑SA.
Étiquettes :
23
10
avr.
2018

Fish est un shell qui se veut simple. Il est tout à fait utilisable, quoiqu'il souffre encore de quelques bugs. Son mode interactif est particulièrement agréable. Utiliser Bash, le shell par défaut de nombreuses distributions, consiste en partie à éviter les pièges et à se retrouver dans un empilement de syntaxes ajoutées au fil du temps. Fish, lui, essaye d’être cohérent. Il ne cherche pas à respecter POSIX, enfin pas complètement, même si je pense qu’il ne devrait même (…)

Journal Liquid prompt — un prompt Bash adaptatif utile : déménagement

Posté par  (site web personnel, Mastodon) .
Étiquettes :
23
19
juil.
2012

Pour ceux qui auraient suivi la dépêche « Un prompt bash utile, sans poudre aux yeux » ou ceux qui seraient intéressés par un prompt Bash qui déchire, sachez que — suite au franc succès rencontré — le projet a maintenant son propre dépôt : Liquid prompt.

Mettez à jour vos signets et outils de suivis !

Journal JSON en ligne de commande : jq/pjy

Posté par  . Licence CC By‑SA.
Étiquettes :
22
20
fév.
2018

Salut à toi, Nal,

Connais tu jq ?

C'est un outil en ligne de commande bien pratique quand on a des données en JSON et qu'on veut en extraire quelques infos. On lui passe un fichier JSON, une expression bien sentie dans un langage spécifique et concis, et le tour est joué.

Alors, je sais pas pour toi, Nal, mais je galère quand même pas mal chaque fois pour réussir à écrire l'expression qui va bien, car jq a son (…)

Journal vmux: un plugin pour utiliser neovim en tant que multiplexer de terminal

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
22
2
fév.
2018

TL;DR j'ai écrit un plugin, vmux, pour faciliter l'utilisation de neovim comme multiplexeur de terminaux.

Depuis un certain temps, il est possible d'ouvrir un terminal dans neovim (et c'est maintenant aussi le cas dans vim).
Je me suis donc demandé s'il était possible d'utiliser neovim à la place de mon multiplexeur de terminaux préféré (tmux).
J'ai donc essayé d'utiliser neovim à la place de tmux durant une semaine.
Voyant ce qu'il manquait pour mieux intégrer (…)