cover for n.py

n.py

n.py, c'est le nom que j'ai trouvé pour ce petit projet.

"n" c'est pour "notes". Pas de majuscule, parce que ça fait prétentieux. Juste une seule lettre parce que c'est minimaliste, comme le programme.

Kessessé ?

C'est un petit programme qui permet de créer des notes textuelles dans un dossier.

Si on n'indique pas de nom à la note, le programme crée une note au format "YYYY-MM-DD.txt".

Ainsi, les notes sont incrémentales, on édite chaque jour une nouvelle note, et on peut facilement retrouver une note écrite un jour particulier (si on se souvient du jour, mais il y a d'autres moyens de retrouver du contenu).

J'ai repris le concept de "notes incrémentales" utilisé par inc, un petit programme dans la même veine que n.py, mais ayant quand même beaucoup plus de features. J'ai entendu parler de inc via cet article ("Incremental note-taking" en anglais), que je vous conseille chaudement.

Comment ça marche ?

C'est vraiment très simple. Il n'y a pas d'objets, c'est juste des fonctions. Et il n'y en a pas beaucoup (7 actuellement) ;

Des fonctions pour afficher et exécuter les commandes ?

Tout-à-fait. La logique est implémentée dans n.py, mais les commandes à proprement parler sont lancées avec subprocess.call(), donc avec sh (dash sur mon ordi). Ainsi, ce programme est en fait réalisé en Python et en langage Shell :P

C'est quoi les commandes ?

Et la config ?

Il y a pour l'instant 3 variables d'environnement qui existent, et qui permettent de configurer le comportement par défaut de n.py :

Je vous ai fait une petite démo sur asciinema afin de montrer les fonctionnalités du script (bon ça a pas record l'entièreté du terminal mais on n'a qu'à dire que c'est pas grave) :

Il est pensé pour tourner sous Linux uniquement (mais peut éventuellement fonctionner sous macos, et je l'ai testé sous Android avec termux et ça fonctionne bien), et est compatible python2.4 jusqu'à 3.9+, et au moins bash & zsh.

Je l'ai créé parce que j'avais envie d'un outil configurable, léger et minimaliste. L'absence de features évoluées est normale et voulue. N'hésitez pas à consulter le readme et l'aide du programme (rédigée après être tombé sur ce tweet) pour plus d'informations :)

Et voilà, c'est la fin de la présentation de ce petit programme !

N'hésitez pas à le tester s'il vous intéresse, et à me rapporter les éventuels bugs que vous trouverez par email (corentin at ce domaine) :)

logo n.py