Un équivalent de Notational Velocity pour GNU/Linux ?

Une question de Camille, reçue pas plus tard que ce matin par e-mail :

J’ai commencé depuis peu à utiliser National Velocity et j’utilise la synchronisation avec SimpleNote pour avoir accès à mes notes sur les différents ordinateurs avec lesquels je travaille.
Sous Windows, j’ai trouvé Resoph Notes qui me convient à peu près, bien qu’étant très loin de la simplicité d’utilisation de NV.
Sous Ubuntu cependant, je n’ai trouvé aucun équivalent. Le site de SimpleNote propose des extensions pour Firefox et Chrome, ce qui ne me convient pas plus que ça. Il propose aussi un script Perl du créateur de Multimarkdown et une extension pour Emacs.
Par défaut, je pense que je vais utiliser Emacs et son extension.
Dans certain de vos articles, vous évoquez Ubuntu, que vous utilisez aussi. Ma question était donc: avez-vous trouvé un bon substitut de NV sous Linux ?

Réponse courte : non.

Réponse longue : non, non, non mais oui, mais.

 

  • Non, je n’utilise pas le mode Simplenote pour Emacs.
  • Non, je n’utilise pas (plus) Simplenote : j’utilise Dropbox.
  • Non, je ne connais pas d’équivalent à l’uniquissime Notational Velocity, sous GNU/Linux.
  • Oui, j’arrive à peu près à me débrouiller.
  • Mais il est probable qu’il existe de meilleures solutions.

Pour être exact, il y a bien le logiciel de prise de notes Tomboy, sous GNU/Linux, qui a beaucoup de qualités (simple, bon moteur de recherche, liens Wiki entre les notes) mais qui, malgré qu’il utilise des fichiers texte pour stocker les notes, n’est compatible à peu près qu’avec lui-mếme tant par la façon dont il nomme ses fichiers :

tomboy001-web
Gné ? Ne pas pouvoir utiliser le nom des fichiers pour mettre des informations utiles (et de mon choix) est, pour moi, rédhibitoire.

Et aussi par la façon dont il les structure (c’est plein d’affreeeeeeux XML, invisible quand la note est affichée dans Tomboy, qui vous saute à la gorge comme un lapin enragé si vous l’affichez dans un éditeur de texte normal) :

tomboy003-web
Comment voulez-vous relire ça, hors de Tomboy ?

C’est dommage, parce que Tomboy s’intègre très bien à Ubuntu et se révèle presque aussi simple et efficace que Notational Velocity (notez que je ne l’ai jamais testé sur de gros volumes de notes, à la différence de Notational Velocity) :

tomboy002-web

Bref, bien qu’il soit prometteur et sympa, il ne fait pas l’affaire.

Créer (facilement) des notes

Mes notes sont toutes stockées au format TXT, dans un sous-dossier de ma Dropbox, qui est synchronisé sur toutes mes machines, peu importe leur système d’exploitation. Le format TXT m’assure qu’elles sont lisibles partout, y compris sur iPhone ou iPad. Les astuces qui suivent visent juste à faciliter leur manipulation quand je suis sous GNU/Linux Ubuntu.

À défaut de mieux, je me suis résolu à créer quelques scripts shell qui sont loin d’être aussi efficaces que Notational Velocity, mais avec lesquels j’arrive à me débrouiller.

Le premier, j’en ai déjà parlé ici, permet de créer une nouvelle note préformatée et nommée comme je les aime. D’un simple raccourci clavier, cette fenêtre s’affiche pour me permettre de nommer la note :

notes-web

Elle est alors affichée dans Gedit (ou autre, selon mon choix du moment), préremplie selon mes besoins :

notes002-web

J’ai un autre script, une simple fonction enregistrée dans mon ~/.bashrc cette fois, qui fait à peu près la même chose depuis le Terminal, en utilisant nano comme éditeur (on n’a pas toujours envie de sortir du Terminal) :

nano001-web

Il me suffit de taper mknote suivi du nom du fichier (sans espaces) pour que la note soit créée, nommée et préremplie, puis affichée :

nano002-web

Rechercher

Sur le nom des fichiers

Selon la situation, j’utilise la recherche sur le nom des fichiers qui est intégrée à Nautilus, par un simple Ctrl+F.

Quand je suis dans le Terminal, je me suis aussi créé une fonction (définie dans mon ~/.bashrc) :

function sfn { find ~/Dropbox/perso/Archives -iname "*$1*" -type f -print | sort -r }

En tapant sfn suivi d’un espace et d’un mot, le script va le rechercher dans le nom des fichiers.

Dans les notes

function sinf { grep -wil -c $1 ~/Dropbox/perso/Archives/*.markdown | sort -r grep -wil -c $1 ~/Dropbox/perso/Archives/*.pdf | sort -r }

Même principe, sauf que sinf suivi d’un mot cherchera ce mot dans les notes.

Comme vous le voyez, je limite la recherche dans les notes à certains formats. Pourquoi ? Pour la même raison que j’utilise deux fonctions de recherche au lieu de une seule : la recherche dans les notes est beaucoup plus lente que ce à quoi nous a habitué Notational Velocity (ou même Spotlight), car grep va chaque fois aller lire le contenu de chaque fichier.

En fait, c’est tellement lent de passer par grep (j’ai des milliers de fichiers) que, la plupart du temps, je ne cherche dans le fichier qu’après l’avoir ouvert dans Gedit ou un autre éditeur. Je n’utilise grep que si je ne parviens vraiment pas à retrouver le bon fichier autrement.

J’ai bien testé des outils comme Tracker, mais ou bien je n’arrive pas à la faire fonctionner de façon fiable, ou bien je n’arrive pas à afficher les résultats d’une façon qui me soit utile.

Bref, la recherche dans les fichiers est pénible alors que la recherche sur leur nom marche bien. Ça tombe bien, car je stocke déjà pas mal d’informations à ce niveau : cela me suffit souvent.

Ils sont nuls tes scripts

Les spécialistes l’auront compris en voyant mes scripts et mes commentaires : je suis tout sauf un programmeur ou un gourou du shell. Il y a certainement de meilleures façons de faire, plus rapides et/ou plus simples.

Si vous avez de meilleurs outils à me proposer ou des suggestions à faire pour améliorer ces scripts, je suis preneur :)

Une conclusion ?

Voilà comment ça se passe pour le moment. Mais ça évolue en permanence, selon mes expérimentations.

Si je devais malgré tout conclure quelque chose, c’est que la différence d’approche entre NV (et la recherche en général sous Mac OS X) et les applications sous GNU/Linux est assez pénible à concilier :

  • Sous OSX (et encore plus sous NV), on est encouragé à créer un fichier pour chaque note : plus il y a de fichiers, plus la recherche sera efficace et rapide.
  • Sous GNU/Linux, probablement aussi parce que mon savoir-faire est limité, c’est tout le contraire : il est bien plus facile de chercher dans un seul gros fichier texte que dans une multitude. Emacs, par exemple dispose de superbes outils pour gérer nos notes dans un immense fichier interminable.

C’est étonnant qu’une approche qui soit à la fois aussi conviviale et efficace que celle de Notational Velocity (et que Spotlight dans Mac OS X), qui soit à la portée d’à peu près tous les utilisateurs quel que soit leur niveau d’expérience, ne semble pas/si peu rencontrer d’échos dans la communauté des devs libres (à l’exception de Tomboy).

Sur le même sujet :

flattr this!

15 commentaires » Ecrire un commentaire

  1. Merci beaucoup pour ces explications et pour avoir pris le temps de rédiger un billet. Je n’avais pas pensé à simplement utiliser Dropbox pour synchroniser mes notes. Je vais essayer ça, ça m’évitera de trouver un éditeur compatible avec Simplenote !

  2. Salut David !! t’est envoyer un mail l’autre jour ,par rapport à la possibilité de changer le DD du MBA contre un SSD ! aimerai savoir si l’opération est possible et si oui à combien cela va chercher (prix)et qui est en mesure de le faire (apple ,ou les PR ) merci pour une tite réponse !! lol ;-)

  3. Aucune idée. À mon avis, tu trouveras plus d’infos sur Google. Ou sur des sites comme OWC.

    Sinon, c’est quoi le lien avec le billet ?

    (et désolé d’avoir manqué ton email ;))

  4. Intéressant comme solution et à expérimenter.

    Petite faute qui s’est glissé dans le texte « malgré que » qui aurait préféré un « bien que ».

  5. J’adore ces billets « bricolages ». Ce n’est pas la première fois que je te le dis, mais si j’insiste c’est que je sens qu’il y a quelque chose à en dégager d’intéressant : un podcast, un site dédié …

    Si vous avez de meilleurs outils à me proposer ou des suggestions à faire pour améliorer ces scripts, je suis preneur :)

    Quelle modestie, c’est déjà très bien que tu arrives à tes fins en utilisant la ligne de commande ! Une petite question me vient à l’esprit : comment as-tu appris à utiliser la ligne de commande ? Je me souviens que ta moitié t’avais aidé pour une histoire de regex, est-ce là ta seule source d’apprentissage ? :p J’ai demandé des conseils au très sympa développeur d’Alfred et il m’a donné un lien vers la doc officielle de bash. Et elle fait peur.

    Rien à voir mais Ubuntu est réellement plus sexy et user-friendly qu’à l’époque où je l’utilisais. Surtout au niveau du terminal.

  6. Pour la recherche dans les notes sur Ubuntu, j’ai trouvé Google Desktop plutôt bon. Une fois le contenu des dossiers indexé, on peut lui demander de chercher dans un dossier particulier (par exemple le dossier « notes ») parmi des fichiers d’un certain type (par exemple de type « txt » ou « markdown ») et la recherche est quasi instantanée ! Seul bug: je n’ai pas trouvé comment lui faire chercher le arrobase @ ce qui rend l’utilisation des tags précédés de @ inutile pour la recherche :(

  7. Est-ce que tu connais Zim (http://zim-wiki.org/)? Il me semble qu’il fait tout ce que font tes scripts, en plus rapide. Avec la sauvegarde automatique pendant la frappe. Et il ne créée pas des fichiers xml illisibles avec des noms barbares.

    Probablement que tu peux même y importer facilement tes notes existantes.

    Je n’ai pas des milliers de fichiers, mais quelques centaines, et ça fonctionne bien.

  8. Thanks for this David!

    I would LOVE to see Notational Velocity coded or compiled for Linux.

    I’m not a coder, but as Notational Velocity is open source, do you think this would be quite simple? Do you know anyone who could do it?

    Thanks for your help!

  9. Hi David, it shouldn’t be that easy, I’m afraid: I’m no coder neither, but the code seems to rely on OS X libraries/snippets of codes or things like that.

    I tried to « sell » the idea of a Linux Notational Velocity to the few coders I know, but it wasn’t a huge success ;)

  10. @b46: oui, je connais Zim, il a des problèmes de performances et j’ai rencontré quelques bugs qui m’ont fait aller voir ailleurs. Je le retesterai à l’occasion :)

  11. David,

    I discovered the following:

    http://liw.iki.fi/liw/notetak/index.html

    It’s very similar to Notational Velocity, and it works well on Ubuntu 11.10. The .deb install doesn’t work, but the tar.gz file is easy enough to get working.

    It doesn’t have simplenote sync. I’ve emailed the coder, and he’s not interested in creating this.

    Do you know any coders who might be interested in this?

    Thanks!

    David

  12. Rétrolien : À propos de Ubuntu | davidbosman.fr

Laisser un commentaire

Les champs obligatoires sont marqués d'une *.


Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>