Ligne de commande Liquidprompt version 1.8

Posté par . Édité par Nÿco et Xavier Claude. 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 !

Ligne de commande À la Croisée des Chemins: crossroad, environnement de cross-compilation

67
18
oct.
2013
Ligne de commande

Cross-compiler pour Windows sur une machine Linux est maintenant aussi simple que compiler pour Linux avec le fameux triptyque ./configure && make && make install. Crossroad fait référence à la fameuse chanson "Cross Road Blues" de Robert Johnson, une des références du blues que je joue régulièrement moi-même. La chanson raconterait comment Robert Johnson aurait rencontré le diable à un croisement de route. La légende populaire veut qu'il aurait alors vendu son âme au diable en échange de son extraordinaire don pour la musique. Je trouvais que c'était le nom parfait pour mon outil, me permettant de cross-compiler pour des environnements propriétaires. :-)

NdM : le film libre Crossroads la route du blues vous en dira plus sur le génial Robert Johnson.

Ligne de commande Bash Argsparse : mieux gérer sa ligne de commande dans ses scripts.

Posté par (page perso) . Édité par Xavier Teyssier, Benoît Sibaud et ZeroHeure. Modéré par Xavier Claude. Licence CC by-sa
46
10
oct.
2013
Ligne de commande

Je vous présente une bibliothèque écrite en Shell : bash-argsparse

Bash-argsparse permet une gestion des options de la ligne de commande en plus haut niveau qu'un simple getopt, un peu comme le module argparse de python.

Parmi la liste des fonctionnalités, on trouve :

  • la génération automatique du --help ;
  • la vérification des entrées utilisateurs, soit suivant des énumérations, soit suivant des formats pré-établis (nombres entiers, adresses IP, etc.), soit via des résultats de fonctions définies par le développeur du script ;
  • l'exclusion mutuelle de plusieurs options ;
  • le cumul de valeur par répétition d'une option ;
  • et plein d'aut'trucs.

Ligne de commande ack 2.0

Posté par (page perso) . Édité par Davy Defaud, Florent Zara, Nÿco, BAud et Barret Michel. Modéré par tuiu pol. Licence CC by-sa
Tags :
39
23
avr.
2013
Ligne de commande

La commande ack est un équivalent à grep, optimisé pour parcourir les répertoires hétérogènes de code source. Par défaut, si aucun fichier n’est donné en paramètre, ack parcourt le dossier courant.

Publiée sous Artistic License 2.0, les principales nouveautés de cette version 2 sont :

  • Par défaut, et contrairement à la version 1.x, tous les fichiers, même ceux dont le type n’est pas connu, sont parcourus. Il est possible de revenir à l’ancien comportement avec l’option -k.
  • L’identification du type de fichier est améliorée, elle se base soit sur l’extension (.rb identifie un fichier de type Ruby), soit sur le nom (Rakefile identifie un fichier de type Ruby), soit sur le contenu du fichier (/#!.+ruby/ dans la première ligne d’un fichier identifie également un fichier de type de Ruby).
  • Les fichiers de configuration sont plus granulaires : /etc/ackrc est global au système, ~/.ackrc est spécifique à l’utilisateur et l’on peut avoir un fichier spécifique au projet courant.
  • L’option -x dit à ack de parcourir la liste de fichiers envoyée via stdin à la manière de xargs, ce qui permet d’écrire des commandes du genre git ls|ack --type=cpp -x foo.

Il est aussi possible d’écrire des greffons en Perl pour aller lire d’autres types de fichiers comme une archive ZIP ou un classeur ODF.

N. B. : Attention, sous Debian et Ubuntu, le logiciel s’appelle ack-grep (ack existant déjà). Le site officiel d’ack présente la méthode pour l’installer en tant que ack, qui est plus propre que celle décrite dans la page de manuel du paquet ack-grep (dans la dernière question de la FAQ).

Ligne de commande Coloriser des flux de texte avec colout

Posté par (page perso) . Édité par Benoît Sibaud. Modéré par Xavier Claude. Licence CC by-sa
65
4
avr.
2013
Ligne de commande

Les réalisateurs de films policiers ne s'y trompent pas : lire des flux de textes en ligne de commande nécessite parfois le super pouvoir de lisibilité.

Bien que les outils GNU soient extrêmement pratiques pour manipuler des flux de texte, il en manquait un pour aider à mettre en valeur l'information importante, sans masquer l'accessoire. Par exemple pour faciliter la lecture de logs s'étendant sur plusieurs lignes ou pour détecter rapidement le numéro de ligne d'un fichier responsable d'une erreur de compilation.

Heureusement, grâce à la commande colout (aujourd'hui en version 1.0), vous pouvez maintenant très facilement coloriser colorer colorier mettre de la couleur là où vous le souhaitez dans votre ligne de commande.

Basiquement, colout s'utilise comme un filtre de flux de texte classique, généralement après un pipe, et mets en valeur les bouts de texte correspondant à une expression régulière avec une couleur et un style de votre choix :

    <flux de texte> | colout <expression régulière> [couleur [style]]

L'IHM de colout est pensée pour être simple tout en permettant des utilisations vraiment intéressantes, telles que le coloriage l'application des couleurs sur les groupes des expressions, l'utilisation de cartes de couleurs (mais si, vous savez, les couleurs de l'arc-en-ciel…), la coloration la mise en valeur de la syntaxe de code source, des thèmes automatiques et même l'application d'une couleur en fonction de la valeur d'un nombre.

Ligne de commande Guake perd son dernier développeur - appel à un repreneur

Posté par (page perso) . Édité par Benoît Sibaud et Nÿco. Modéré par Christophe Guilloux. Licence CC by-sa
19
27
mar.
2013
Ligne de commande

Cette fin d'après-midi, Pierre-Yves Chibon annonce qu'il quitte le développement de l'application et lance l'appel pour un éventuel repreneur. L'application est écrite en python, et utilise GTK2. Celui qui reprendrait le projet aurait un travail de fond à effectuer, s'il veut assurer le futur du logiciel, pour le passer en dconf/gtk3. Il y a également beaucoup de tickets ouverts dans le système de ticketing, avec des patchs, fonctionnalités qui n'ont jusque là pas été implémentées. Citons notamment le support multi-moniteurs.

NdM : une précision apportée dans le commentaire de GeneralZod : Pierre-Yves Chibon administrait le serveur et faisait les paquetages Fedora, sans être développeur du projet.

Ligne de commande LiquidPrompt version 1.3

Posté par (page perso) . Édité par Lucas Bonnet. Modéré par Christophe Guilloux. Licence CC by-sa
36
12
mar.
2013
Ligne de commande

LiquidPrompt est un prompt clefs-en-main pour bash ou zsh, dont l'idée générale est d'afficher élégamment des informations utiles uniquement quand le contexte le demande.

Le rythme des linuxfrisations s'est fait moins frénétique (il va falloir songer à aller glaner des utilisateurs ailleurs…) mais cette version apporte néanmoins son lot de bonnes idées, jugez plutôt :

  • ma préférée : lorsque vous êtes dans un multiplexeur de terminal (screen ou tmux), les crochets se colorent en bleu…
  • … et le prompt peut être utilisé comme titre de fenêtre de screen ;
  • support de Bazaar ;
  • une option pour désactiver les VCS sur certains répertoires (par exemple si vous avez des dépôts SVN montés via le réseau, vous avez envie de les désactiver, si si) ;
  • sous git, un + jaune apparait si vous avez au moins un stash ;
  • ajoute une fonction prompt_tag pour ajouter facilement un mot clef (ou ce que vous voulez) en tête de prompt ;
  • des bugfix de portabilité et des améliorations de rapidité.

Pour les amateurs, la branche develop dispose d'une option (en beta) permettant d'utiliser une couleur différente pour des hôtes différents, lors de connexion SSH (telnet restant en rouge gras).

Ligne de commande LiquidPrompt version 1.2

Posté par (page perso) . Édité par NeoX, baud123 et Nils Ratusznik. Modéré par Nÿco. Licence CC by-sa
43
16
jan.
2013
Ligne de commande

LiquidPrompt est un prompt clefs-en-main pour bash ou zsh, dont l'idée générale est d'afficher élégamment des informations utiles uniquement quand le contexte le demande.

De nombreuses nouveauté sont disponibles depuis la dernière linuxfrisation, notamment :

  • la gestion de zsh en plus de bash ;
  • des commandes pour désactiver temporairement le prompt (et revenir à l'ancien ou carrément tout désactiver) ;
  • de quoi configurer facilement le prompt dans des fichiers à soi (couleurs, thèmes, options) ;
  • la désactivation optionnelle de chaque fonctionnalité du prompt (même à chaud) ;
  • une couleur indiquant si le forwarding X est actif ;
  • gestion du chroot sous Debian et du virtualenv sous Python ;
  • la réplication du prompt dans le titre de la fenêtre ;
  • la gestion de Fossil (le gestionnaire de version) ;
  • la possibilité de masquer l'utilisateur, si c'est celui qui est loggué ;
  • l'utilisation du builtin DIRTRIM, sous bash, s'il est installé ;
  • un fichier .bashrc à utiliser pour l'installation ;
  • plein (mais alors plein) de bugs en moins et de vitesse en plus !

Ligne de commande LiquidPrompt version 1.0

Posté par (page perso) . Édité par Nÿco et Florent Zara. Modéré par Christophe Guilloux. Licence CC by-sa
Tags :
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

Ligne de commande Un prompt bash utile, sans poudre aux yeux

Posté par (page perso) . Modéré par NeoX. Licence CC by-sa
40
7
juil.
2012
Ligne de commande

La configuration de l'invite de commande du shell est un sujet largement traité sur le web. Cependant, on y voit le plus souvent des configurations du type « j'affiche l'horloge sur une ligne complète en arc-en-ciel clignotant ». Pas cool.

Le prompt idéal doit permettre de se rendre compte intuitivement de l'environnement où vous êtes (connexion ssh, root, dépôt git, etc.) et ne doit afficher les informations contextuelles que si elles sont nécessaires. Cool.

Le prompt bash que je vous propose a les fonctionnalités suivantes :

  • couleurs vives pour une connexion root,
  • affichage du nom d'hôte uniquement en cas de connexion distante, avec une couleur différente selon le type de connexion (ssh, telnet),
  • dans les répertoires GIT, affichage du nom de la branche, avec une couleur indiquant le statut des commits
  • rappel du nombre de jobs attachés au terminal, si besoin est
  • alertes batterie et/ou charge système, si besoin est, avec un dégradé de couleurs

Ligne de commande dfc 3.0.0 : nouvelle version majeure pour cette alternative haute en couleurs à l'utilitaire df(1)

Posté par (page perso) . Édité par Nÿco, Xavier Claude et Florent Zara. Modéré par Florent Zara. Licence CC by-sa
34
31
mai
2012
Ligne de commande

Pour ceux ayant raté ma dépêche présentant dfc(1) le 1er avril dernier, sachez qu'il s'agit d'un utilitaire en ligne de commande se voulant une alternative au vénérable df(1), apportant notamment de nombreuses options supplémentaires ainsi qu'un affichage coloré comportant des barres de graphe.

Plusieurs lecteurs de LinuxFr.org avaient fait part de leurs suggestions d'améliorations et requêtes de nouvelles fonctionnalités en commentaire de la dépêche et elles ont pour la plupart pris place dans cette nouvelle version majeure de dfc(1), aux côtés d'autres améliorations.

Ligne de commande Mosh, the Mobile Shell

Posté par . Édité par Nÿco, Xavier Claude et baud123. Modéré par NeoX. Licence CC by-sa
57
16
avr.
2012
Ligne de commande

Mosh est une application permettant d'ouvrir une session à distance et sécurisée sur une machine de type Unix.

À la différence du célèbre et incoutournable SSH, Mosh offre la possibilité de maintenir une session ouverte tout en étant connecté par intermittence (roaming IP), d'où son nom : Mobile Shell.
Ce dernier est une alternative au couple SSH+Screen.

Fonctionnement

Mosh utilise SSH pour se connecter sur l'hôte distant. Une fois la connexion établie, un processus mosh-server prend le relais sur un port UDP en ouvrant une nouvelle session sécurisée et ferme la session SSH. Le client communique alors directement avec mosh-server. Avantage de la solution ? Si le client change d'adresse IP et qu'il retente une connexion à travers SSH, mosh-server reprend le dialogue avec la nouvelle adresse IP.

Mosh utilise aussi une approche différente de SSH pour la gestion de l'affichage du terminal client. Mosh n'attend pas une réponse de l'hôte distant pour afficher ce qui a été saisi par l'utilisateur. Le client et le serveur possèdent chacun un instantané (snapshot) de l'écran à afficher. La solution de Mosh repose sur la synchronisation de ces deux états. Ce qui permet à l'utilisateur de réduire les impressions de latence si la qualité de sa connexion est mauvaise.

Autres points importants :

  • Mosh n'a pas besoin des droits super-utilisateur pour s'exécuter.
  • Mosh impose un environnement en UTF-8 et ne gère pas d'autres encodages.
  • Mosh ne gère pas encore le X-forwarding, ni le Port-forwarding.

Ligne de commande dfc(1): une alternative à df(1) apportant couleur et graphe

Posté par (page perso) . Édité par baud123. Modéré par baud123. Licence CC by-sa
37
1
avr.
2012
Ligne de commande

Il y a maintenant une quinzaine jours, j'ai entrepris l'écriture d'un petit utilitaire se voulant une alternative au fameux df(1).

J'ai d'abord commencé le développement avec comme objectif mon propre plaisir à développer puis je me suis vite rendu compte qu'il se trouvait des personnes intéressées par ce projet.

Les versions se sont succédées à un rythme soutenu jusqu'à la version 2.3.0 sortie aujourd'hui. J'ai estimé que la maturité de ce programme était maintenant suffisante afin de mériter une dépêche et de le faire connaître aux personnes pouvant potentiellement être intéressées.

Qu'apporte dfc(1) que ne propose pas déjà df(1)? En voici la liste :

  • Gestion des couleurs avec modes automatique, toujours et jamais (similaire à ce que l'on peut trouver dans les commandes ls(1) et grep(1)).
  • Affichage d'un graphe montrant le taux d'utilisation des disques.
  • Possibilité d'afficher les options de montage.
  • Ajustement automatique de l'affichage en fonction de la taille du terminal.

En plus de ces options, dfc(1) gère également une fonction de filtrage par type de système de fichiers (inclusion et exclusion), le choix de l'unité de mesure pour l'affichage (human-readable, Kio, Ko, Gio, etc.), le décompte du nombre d'inodes, la somme des données (y compris les inodes si l'option est activée) et l'affichage du type de système de fichiers.

Pour l'instant, dfc(1) ne fonctionne que sur GNU/Linux mais un portage est en cours pour prendre en charge notamment FreeBSD et le portage vers d'autres plate-formes (autres *BSD et OSX) devrait se faire à plus ou moins moyen-terme.

Ligne de commande Coloriser la sortie d'une commande arbitraire

Posté par (page perso) . Édité par NeoX. Modéré par j. Licence CC by-sa
36
31
mar.
2012
Ligne de commande

Ne vous est-il jamais arrivé de souhaiter que la sortie de votre commande favorite soit en couleurs, afin de vous aider à trouver l'information que vous cherchez ? Que celui qui n'a jamais pesté devant les affichages de g++, en dehors de son IDE favori, sur un code utilisant des templates, me jette la première pierre.

En attendant la nouvelle génération de terminaux, il vous reste au moins deux options : acoc ou colout.

Ligne de commande Les vrais développeurs utilisent ed !

Posté par (page perso) . Édité par Nÿco, Lucas Bonnet, Manuel Menal, Malicia et Xavier Claude. Modéré par patrick_g. Licence CC by-sa
Tags :
36
4
jan.
2012
Ligne de commande

Certains logiciels font parti de la tradition UNIX. C'est, par exemple, le cas de l'éditeur de texte ed. Écrit par Ken Thompson (OS UNIX, Plan 9 et les langages B et Go), il a marqué une étape importante pour les expressions rationnelles. Avant cette implémentation, le concept des expressions rationnelles n'était formalisé que dans des publications mathématiques, que Ken Thompson avait lues.

GNU ed, l'implémentation de l'éditeur ed par le projet GNU, sous licence GPL, est sorti en version 1.6 hier.

GNU ed is an 8-bit clean, more or less POSIX-compliant implementation of the standard Unix line editor.

Ligne de commande iCalFilter 0.1 : un couteau suisse en ligne de commande pour les fichiers iCalendar

Posté par (page perso) . Édité par Xavier Claude, Nÿco et Bruno Michel. Modéré par patrick_g. Licence CC by-sa
Tags :
40
20
déc.
2011
Ligne de commande

iCalFilter est né du constat qu'il n'existait pas (comprendre : je n'ai pas trouvé) d'outil en ligne de commande pour manipuler les fichiers iCalendar (format standard de calendriers). Leur structure interne (suite d'enregistrements multilignes non-ordonnée) rend impossible (ou difficile) l'usage des outils unix traditionnels.

Voilà pourquoi j'ai écrit iCalFilter (aujourd'hui disponible en version 0.1, tadaam !), en python, et sous GPL3+.

iCalFilter propose donc des fonctions proches d'outils unix traditionnels, mais adaptés au format iCalendar, ainsi que des possibilités sympatiques de formattage de la sortie : au lieu de fournir en sortie un fichier iCalendar, il peut produire une vue calendaire colorée dans la console (et bientôt en HTML, postscript, etc.).

En deuxième partie de la dépêche, quelques exemples de commandes possibles. Voir aussi la documentation pour quelque chose de plus exhaustif, ou la page d'exemples de scripts (pour publier des infos de temps libre/occupé, supprimer des vieux événements d'un calendrier, afficher une vue calendaire des événements du jour ou de la semaine...)

Ligne de commande Autojump : nouvelle version et nouvelles fonctionnalités

Posté par (page perso) . Édité par Xavier Claude, Malicia, Benoît Sibaud et Nÿco. Modéré par Benoît Sibaud. Licence CC by-sa
Tags :
40
11
déc.
2011
Ligne de commande

Je viens de publier la 19ème version d'autojump et je saisis l'occasion pour présenter ce petit utilitaire ainsi que ses nouvelles fonctionnalités.

Pour ceux et celles qui ne le connaissent pas, autojump est un utilitaire qui permet de se déplacer plus facilement dans son système de fichier depuis le shell. Plus précisément, il maintient une trace des répertoires dans lesquels l'utilisateur passe le plus de temps et permet de sauter de l'un à l'autre en saisissant un fragment du nom du répertoire cible. Plus de détails dans la seconde partie de la dépêche.

Autojump supporte bash et zsh, et est disponible sous forme de paquet pour un bon nombre de distributions. Il fonctionne également sous Windows et Mac OS. Il est distribué gratuitement sous licence GPL v3.

Ligne de commande Socat, un outil en ligne de commande pour maîtriser vos sockets

Posté par (page perso) . Édité par Pierre Jarillon et Xavier Claude. Modéré par Nÿco. Licence CC by-sa
Tags :
38
7
déc.
2011
Ligne de commande

Socat est un outil en ligne de commande pour manipuler des sockets réseau, sous licence GPL. La version 1.7.2.0 vient de sortir avec les nouveautés suivantes :

  • prise en charge des interfaces tun/tap sans adresse IP ;
  • ajout des options openssl-compress et max-children ;
  • amélioration pour certaines plateformes, et notamment Mac OS X Lion, DragonFly et Android.

Rappelons que socat sert principalement à relayer deux flux de données de manière bidirectionnelle. Comme ces flux peuvent être de types très variés et acceptent de nombreuses options, il est possible d'utiliser socat pour des usages très divers. Voici quelques exemples :

socat -d -d READLINE,history=$HOME/.http_history TCP4:www.domain.org:www,crnl
# Vous pouvez saisir du texte avec la bibliothèque readline et il sera envoyé en TCP à www.domain.org sur le port 80 (www). Pratique pour simuler des requêtes HTTP à la main.

socat TCP4-LISTEN:www TCP4:www.domain.org:www
# C'est un simple transfert de données entre 2 flux TCP. Tout ce qui arrive sur le port 80 (www) de la machine locale est envoyé vers www.domain.org et inversement.

socat -u TCP4-LISTEN:3334,reuseaddr,fork OPEN:/tmp/in.log,creat,append
# Dans cet exemple, socat va écrire tout ce qu'il reçoit sur le port 3334 dans un fichier.

Ligne de commande htop atteint la version 1.0  !

Posté par (page perso) . Édité par Davy Defaud, patrick_g et Nÿco. Modéré par Xavier Teyssier. Licence CC by-sa
Tags :
56
22
nov.
2011
Ligne de commande

htop est un outil en mode texte qui permet d’afficher les processus qui tournent et les informations associées à ces processus, comme leur utilisation du temps processeur ou leur consommation mémoire. htop est publié sous licence GPL et vient d’atteindre la symbolique version 1.0.

htop est un clone de top, mais en mieux. Il permet par exemple :

  • d’avoir un défilement (scroll) horizontal et vertical ;
  • de tuer un processus sans avoir à entrer à la main son identifiant PID ;
  • de démarrer plus rapidement ;
  • d’afficher des barres colorées pour indiquer l’utilisation processeur globale et la consommation mémoire.

Bref, je vous encourage à essayer htop, c’est un très bon remplaçant à top.

Ligne de commande SFRswallow, envoyer des SMS en ligne de commande

Posté par (page perso) . Modéré par Xavier Teyssier. Licence CC by-sa
Tags :
34
5
nov.
2011
Ligne de commande

Avoir un forfait téléphone mobile avec textos illimités, c’est cool. Surtout si on veut envoyer une information urgente à beaucoup de monde en même temps. Ça fait quelque temps que j’ai un forfait de ce type chez SFR. Mais, déjà, écrire du texte à partir d’un téléphone est une horreur : c’est lent et inefficace. En plus, les différents téléphones que j’ai essayés ne m’ont jamais permis d’envoyer le message à plus de 20 contacts à la fois…

SFR propose à ses clients une interface Web à partir de laquelle on peut envoyer des SMS. C’est ainsi qu’est né SFRswallow, un petit script Python qui envoie le SMS à travers le site de SFR. Il s’utilise vraiment très simplement :

sfrswallow 0642424242 "Quelle est la différence entre un pigeon ?"

Ce n’est pas forcément beaucoup plus efficace que d’écrire le texto directement depuis le téléphone… Ce qui est plus intéressant, c’est de le coupler avec un serveur de courriel (par exemple Postfix, c’est celui qui tourne chez moi) pour envoyer des SMS en écrivant des courriels à 0642424242@sms.example.org.

En espérant que ça puisse servir à quelqu’un.

P. ‐S. : Je tiens à prévenir que pour SFR, « SMS illimités » signifie qu’on peut envoyer des textos à 100 destinataires différents sans surcoût (au‐delà, c’est cher, j’en ai fait la désagréable expérience !).

Ligne de commande Vim fête son 20e anniversaire

Posté par (page perso) . Modéré par Christophe Guilloux. Licence CC by-sa
43
3
nov.
2011
Ligne de commande

Vim, le célèbre éditeur de texte vient de fêter son 20e anniversaire. C’est, en effet, le 2 novembre 1991 que Bram Moolenaar a publié la première version de Vim. C’était alors un clone de vi pour Amiga. Toutefois, contrairement à vi, c’est un logiciel libre. Il a pu ainsi être porté rapidement sur d’autres environnements et devenir l’éditeur de référence de nombreux développeurs.

Au fil des ans, de nombreuses versions se sont succédées (la version actuelle est la 7.3), mais son auteur a gardé le principe que Vim doit rester un éditeur de texte et être le plus possible au service de l’utilisateur.

Profitons‐en pour rappeler que si Vim est un logiciel libre publié sous une licence compatible avec la GPL, ses utilisateurs sont encouragés à faire un don à ICCF Holland, une association créée par Bram Moolenaar pour aider les enfants en Ouganda.

Et pour célébrer les 20 ans de Vim, vous êtes encouragés à poster en commentaire toutes les astuces et anecdotes que vous avez sur Vim.

Ligne de commande ack 1.96 — mieux que grep

Posté par (page perso) . Modéré par Xavier Teyssier. Licence CC by-sa
48
20
sept.
2011
Ligne de commande

Ack est un outil qui permet de rechercher du texte à l’intérieur de fichiers. C’est donc un clone de grep avec quelques améliorations notables. Voici donc dix raisons de passer à ack si vous utilisez grep :

  1. ack est très rapide, car il ne recherche que ce que vous voulez chercher ;
  2. il recherche récursivement par défaut ;
  3. il ignore les trucs inutiles, comme les répertoires utilisés par les VCS (.svn et CVS par exemple), les fichiers de sauvegarde (« foo~ » et « #foo# »), les binaires, etc. ;
  4. vous pouvez spécifier simplement le type de fichiers à rechercher, comme « --perl » ou « --nohtml » ;
  5. la coloration syntaxique des résultats est là par défaut ;
  6. vous pouvez utiliser les expressions régulières de Perl, pas juste le sous‐ensemble de GNU ;
  7. l’apprentissage d’ack est très simple, car il reprend les mêmes options en ligne de commande que grep (« -c », « -l », « -w », etc.) ;
  8. il est possible d’avoir des options par défaut dans un fichier « ~/.ackrc » ;
  9. la commande fait 25 % de caractères en moins à taper ;
  10. en fait, c’est même 50 % de gagné par rapport à « grep -r ».

La version 1.96 d’ack est sortie dimanche et apporte quelques améliorations notables :

  • les fichiers JavaScript « minifiés » sont ignorés par défaut ;
  • le langage Groovy est supporté (extensions : « .groovy », « .gtmpl », « .gpp », « .grunit ») ;
  • les fichiers Perl et Lua sont mieux détectés.

Note : pour installer ack sur Debian et Ubuntu, il faut faire un « apt-get install ack-grep » (et pas juste « ack »). En revanche sous Archlinux, un « pacman -S ack » sera suffisant. Les autres distributions (Fedora, Gentoo) utilisent également le simple nom « ack »).

Ligne de commande Petit éventail des outils de construction (« builder ») libres

Posté par . Modéré par patrick_g. Licence CC by-sa
44
5
sept.
2011
Ligne de commande

Je vous propose dans cette dépêche de revenir sur la panoplie d'outils de construction qui s'offre à nous (c'est à dire les outils permettant d'automatiser les étapes de préprocessing, compilation, éditions des liens, etc).
Je ne cherche pas à faire un comparatif, mais juste à les décrire pour en faire ressortir les avantages et inconvénients ainsi que les cas d'utilisation. Cette dépêche peut être vue comme un état de l'art allégé des outils de construction libres.

Je tiens à remercier les contributeurs de cette dépêche :

  • GeneralZod
  • tiennou
  • NedFlanders
  • claudex

Ce sont eux qui ont écrit la majeure partie de cette dépêche et qui l'ont améliorée et complétée grâce à leurs connaissances et au temps qu'ils y ont consacré.

Cette dépêche a pour objectif de faire découvrir ou redécouvrir des outils de constructions. Si vous en connaissez d'autres n'hésitez pas à en parler en commentaire.

Ligne de commande Sortie de Ansilove 1.08, convertisseur multiformats de fichiers texte en PNG

Posté par (page perso) . Modéré par patrick_g.
28
13
juil.
2011
Ligne de commande

Ansilove est un ensemble d'outils écrits en PHP permettant de convertir des fichiers texte au format ASCII, ANSI ainsi que divers formats dérivés vers des images au format PNG. Il se compose d'un convertisseur en ligne de commande ainsi que d'une bibliothèque utilisable sur des pages web afin de générer des conversions à la volée. Ansilove gère l'ensemble des pages de codes IBM PC ainsi que les fontes Amiga les plus répandues, et permet d'obtenir un résultat identique au pixel près aux rendus en mode texte.

Créé au départ afin de pouvoir intégrer et afficher fidèlement de l'ASCII et de l'ANSI art sur des sites WEB, Ansilove peut également être utilisé pour créer des images à partir de n'importe quel texte, par exemple pour de l'obfuscation d'adresse e-mail, pour créer des screenshots d'opérations en ligne de commandes pour des documentations ou manuels, ou bien encore pour créer des logos et boutons pour des interfaces, etc. La liste des formats, jeux de caractères et fontes pris en charge est donnée en deuxième partie.

Je profite également de cette dépêche pour annoncer la réouverture du site Sixteen Colors, une archive regroupant vingt ans de packs d'ASCII et d'ANSI que l'on peut visionner en ligne directement dans son navigateur sans avoir besoin de logiciel particulier : une mine d'or pour tous les amateurs du genre !