Exile on Keyboard St. - Blog sur Linux et Debian

Aller au contenu | Aller au menu | Aller à la recherche

dimanche 18 novembre 2018

Installer et configurer cheat

Il y a quelques temps déjà, j'avais présenté le projet Cheat de Chris Allen Lane, qui permet de retrouver rapidement des exemples d'utilisation pour les commandes Unix.

On va voir aujourd'hui comment l'installer, le configurer et créer nos propres "cheat sheets".

Installer cheat

cheat est écrit en Python et s'installe donc par un:

sudo pip install cheat

On vérifie la version:

cheat -v
cheat 2.3.1

Configurer cheat

On va ajouter dans notre .bashrc:

export CHEATCOLORS=true

comme cela nos antisèches seront plus jolies !

Puis on va installer le script d'autocomplétion pour Bash:

sudo curl -L https://raw.githubusercontent.com/chrisallenlane/cheat/master/cheat/autocompletion/cheat.bash -o /etc/bash_completion.d/cheat

Maintenant, cheat propose les commandes disponibles quand on appuie sur TAB. Ne pas hésiter à entrer une lettre avant TAB, sinon il nous propose 191 commandes ...

L'autocomplétion n'est pas implémentée sur les options de la commande, c'est dommage.

Ajouter une nouvelle cheatsheet

Pour ajouter une nouvelle sheet sur la commande mycmd:

cheat -e mycmd

Et vous aller alors éditer le fichier ~/.cheat/mycmd.

Si vous souhaitez changer le répertoire des "user cheat", il faut procéder comme ceci:

export CHEATPATH='/path/to/my/cheats'

Les antisèches installées par défaut sont placées dans /usr/local/lib/python3.4/dist-packages/cheat/cheatsheets.

Mettre à jour cheat

Pour mettre à jour cheat:

sudo pip install --upgrade cheat

Voilà. Happy cheating :-)

samedi 24 décembre 2016

Vérifier la syntaxe des fichiers Markdown avec markdownlint

Les fichiers README des projets open source (ou non) sont maintenant (presque) toujours écrits avec le langage de balisage Markdown qu'on ne présente plus.

Après avoir trouvé un éditeur pour les fichiers Markdown et cherché comment convertir un document Markdown en HTML je me suis demandé comment vérifier les erreurs de syntaxe dans les fichiers README.

Il y a énormément d'éditeurs de Markdown en ligne, par contre les outils de vérification de syntaxe ne sont pas très nombreux. J'en ai quand même trouvé un sur GitHub.

Il s'agit de markdownlint disponible à l'adresse suivante: markdownlint.

markdownlint étant écrit en Ruby, il faut procéder comme suit pour l'installer:

sudo apt-get install rubygems
sudo gem install mdl

La vérification d'un fichier README se fait alors avec la commande mdl:

mdl README.md

Et on obtient les erreurs suivantes, par exemple:

README.md:291: MD013 Line length
README.md:19: MD012 Multiple consecutive blank lines
README.md:187: MD009 Trailing spaces
README.md:223: MD014 Dollar signs used before commands without showing output
README.md:15: MD034 Bare URL used

La première erreur MD013 vérifiant que les lignes n'excèdent pas 80 caractères est à mon avis discutable pour un fichier README.

Pour exclure cette règle, on peut procéder comme suit:

mdl -r ~MD013 README.md 

Ceci étant dit, il est facile d'inclure un appel à la commande mdl dans un processus de build logiciel ou d'intégration continue afin de vérifier la non transgression d'un certain nombre de règles.

Afin d'approfondir le sujet, ci-joint l'aide de la commande mdl:

mdl --help
Usage: mdl [options] [FILE.md|DIR ...]
    -c, --config FILE                The configuration file to use
    -g, --git-recurse                Only process files known to git when given a directory
    -i, --[no-]ignore-front-matter   Ignore YAML front matter
    -l, --list-rules                 Don't process any files, just list enabled rules
    -r, --rules RULE1,RULE2          Only process these rules
    -u, --rulesets RULESET1,RULESET2 Specify additional ruleset files to load
    -a, --[no-]show-aliases          Show rule alias instead of rule ID when viewing rules
    -w, --[no-]warnings              Show kramdown warnings
    -d, --skip-default-ruleset       Don't load the default markdownlint ruleset
    -s, --style STYLE                Load the given style
    -t, --tags TAG1,TAG2             Only process rules with these tags
    -v, --[no-]verbose               Increase verbosity
    -h, --help                       Show this message
    -V, --version                    Show version

samedi 2 novembre 2013

Cheat: Retrouvez facilement la syntaxe de vos commandes Unix

Les commandes Unix et Linux sont parfois assez obscures et les syntaxes souvent difficiles à retenir.

On essaie alors un:

man tar

quand on a oublié la syntaxe de tar par exemple. Mais les man pages des commandes Linux/Unix ne proposent pas toujours d'exemples. Et s'ils sont présents ils ne sont pas nécessairement les exemples les plus utiles dans la vie quotidienne de l'utilisateur ou de l'administrateur Unix.

Il en va de même de l'aide ou:

tar --help

Aussi un projet a vu le jour sur GitHub et il s’appelle Cheat, qui en Anglais veut dire tricher.

Cette commande cheat permet le plus simplement du monde d'afficher les exemples d'utilisation les plus courants de chaque commande Unix, du moins celles pour lesquelles une "cheatsheet" (une anti-sèche) a été définie.

Par exemple:

cheat tar

affichera:

# To extract an uncompressed archive:
tar -xvf /path/to/foo.tar
# To extract a .gz archive:
tar -xzvf /path/to/foo.tgz
# To create a .gz archive:
tar -czvf /path/to/foo.tgz /path/to/foo/
# To extract a .bz2 archive:
tar -xjvf /path/to/foo.tgz
# To create a .bz2 archive:
tar -cjvf /path/to/foo.tgz /path/to/foo/

Une fois la commande cheat installée, vous pouvez modifier les exemples de chaque commande afin qu'ils soient plus adaptés à vos habitudes et aussi ajouter des exemples pour les commandes qui n'en ont pas encore.

Mais le projet étant sur GitHub, chacun peut contribuer, et il ne faut pas se gêner pour corriger ou enrichir des exemples des commandes que vous connaissez bien.

Dernière chose, pour savoir utiliser cheat:

cheat cheat