Travailler avec des expressions rationnelles

84
8
fév.
2016
Technologie

Les expressions rationnelles sont un outil d’analyse de texte par un ordinateur. Elles permettent de décrire des enchaînements de caractères d’une complexité suffisamment grande pour être réellement utiles, mais suffisamment faible pour être implémentées efficacement. Elles sont d’une importance capitale pour le théoricien des langages comme pour l’UNIX power user.

Dans cette dépêche, nous :

  • décrivons brièvement la notion abstraite d’expression rationnelle et recensons les implémentations les plus courantes sur un système Unix ;
  • présentons quelques commandes permettant de rechercher des motifs décrits par une expression rationnelle dans un texte, réécrire des fichiers automatiquement ou transformer et analyser des fichiers structurés automatiquement en utilisant des expressions rationnelles ;
  • montrons comment améliorer votre productivité avec Emacs grâce aux expressions rationnelles.

Dans cette dépêche, nous allons nous pencher sur les expressions rationnelles (souvent nommées abusivement expressions régulières suite à une traduction littérale de regular expression). Elles permettent de représenter formellement un motif de recherche, par exemple : un caractère alphabétique majuscule suivi de quatre caractères minuscules, puis deux chiffres et un point à la fin. Les expressions rationnelles représentent un outil puissant pour qui sait les utiliser à bon escient mais nécessitent une phase d’apprentissage non négligeable. La diversité des moteurs et des syntaxes n’aide pas non plus à leur simplicité, et les confusions entre les différents outils peuvent parfois donner des résultats surprenants.

Journal De l'autarcie du projet GNU, ou comment Emacs ne veut pas devenir EmacOs

Posté par  . Licence CC By‑SA.
Étiquettes :
77
22
nov.
2016

Quand Emacs supprime des fonctionnalités

Alors que je vagabondais à mon habitude dans ce vaste espace à la fois fascinant et désespérant qu'est le web, je suis tombé sur cet article. Vu le titre (Emacs Hates MacOS), je me suis dit qu'il serait un bon candidat pour un débat animé du vendredi sur LinuxFr. Toutefois, au-delà du troll, l'auteur dudit billet pose (consciemment ou non) une question fort pertinente, donc je me permets de publier un journal (…)

Next v1.3.0, le navigateur web entièrement programmable

67
6
août
2019
Internet

Je suis heureux de vous présenter le navigateur Next, projet que j’ai rejoint il y a deux mois, et dont la version 1.3.0 livre son lot de fonctionnalités attendues pour un usage quotidien :

  • blocage de publicités (par domaine) ;
  • sélection approchée / fuzzy améliorée ;
  • raccourcis claviers à la Vim ;
  • un gestionnaire de téléchargements ;
  • un mode NoScript ;
  • un « back‐end » basé sur Blink, le moteur de rendu de Chrome (qui s’ajoute au back‐end WebKit) ;
  • prise en charge des serveurs mandataires (proxies), donc de Tor ;
  • et plus encore.

Oui, le tester donne envie de ne plus s’en séparer. :)

Next est unique car il n’expose pas d’API, il est totalement ouvert et programmable, et qui plus est programmable à chaud, il n’y a pas besoin de le redémarrer pour tester ses changements. Et au contraire des projets similaires (Konqueror ou Vimperator qui sont morts, Qutebrowser…), il n’est pas lié à un moteur de rendu particulier.

Je vous propose de le découvrir, et de nous soutenir pour voir une version 1.4 !

Nouvelles versions logicielles du projet GNU avril et mai 2017

Posté par  (site web personnel) . Édité par Davy Defaud, ZeroHeure et Nils Ratusznik. Modéré par ZeroHeure. Licence CC By‑SA.
Étiquettes :
66
5
juin
2017
GNU

Le projet GNU publie tous les mois une liste de versions logicielles publiées. Jetons‐y un coup d’œil pour découvrir de nouveaux logiciels inconnus (de moi), des infâmes bogues disparus ou les promesses de solutions à tous nos besoins : soit 33 nouvelles versions annoncées allant de la corrective mineure à la version attendue depuis des années ; et l’on va donc parler de acct, artanis, bc, diffutils, emacs, emms, freedink-data, gcc, global, gnubik, gnupg, gnutls, grub, guile, guile-cv, guile-ncurses, icecat, kawa, less, libcdio-paranoia, libidn2, libmicrohttpd, linux-libre, nano, ocrad, orgadoc et parallel.

Journal Emacs, le dinosaure fait de la résistance

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
55
15
jan.
2024

Aujourd'hui, un journal qui encense grave (une fois n'est pas coutume).

Je suis épaté qu'après toutes ces années, Emacs reste pertinent et apparemment tout aussi productif que moults IDE. Et encore, je m'y suis mis sérieusement sur le tard, durant mon 3ème boulot (j'étais un Visual Studio boy depuis mes 15 ans…). Voici donc les raisons qui à mon sens font d'Emacs un outil remarquable encore aujourd'hui.

  • Légèreté : même si considéré comme une usine à gaz à ses débuts (…)

GNU Emacs 26.1

Posté par  . Édité par ZeroHeure, Davy Defaud et Nils Ratusznik. Modéré par ZeroHeure. Licence CC By‑SA.
53
7
juin
2018
GNU

Et voici une nouvelle version majeure pour notre éditeur de texte préféré. La fonctionnalité la plus attendue est certainement le prise en charge d’une forme native de concurrence pour le langage Emacs Lisp, qui devrait permettre la disparition d’actions bloquantes pour l’utilisateur.

Pour celles et ceux ne vivant pas dans Emacs, on rappellera que ce n’est pas un simple éditeur de texte. D’abord, cette version d’Emacs est le bébé de Richard Stallman, ensuite, c’est surtout une machine virtuelle qui tourne en Emacs Lisp. On peut écrire des extensions avec un vrai langage de programmation, pour à peu près tout faire, y compris un éditeur de texte ou le café.

Emacs comptant une longue histoire, ses raccourcis clavier peuvent dérouter le débutant, qui devra passer par une phase d’apprentissage (alt-x help-with-tutorial) et appréciera certainement des Kits de démarrage comportant une configuration complète par défaut (les populaires étant Prelude et Spacemacs, orienté édition modale, avec une excellente émulation de vim, evil-mode, et une bonne aide interactive avec which-key-mode).

Emacs et son écosystème (voir les extensions sur elpa (officiel) ou melpa) comporte quelques « killer‐apps », telles que Org-mode ou Magit, dont on profite pour parler un petit peu plus bas.

Nouvelles versions logicielles du projet GNU en avril 2019

Posté par  (site web personnel) . Édité par ZeroHeure, Davy Defaud et Pierre Jarillon. Modéré par Davy Defaud. Licence CC By‑SA.
Étiquettes :
53
28
avr.
2019
GNU

Le projet GNU diffuse tous les mois la liste des nouvelles versions de ses logiciels. Jetons‐y un coup d’œil pour découvrir de nouveaux logiciels inconnus (de moi), des infâmes bogues disparus ou les promesses de solutions à tous nos besoins ; bref, de nouvelles versions annoncées allant de la corrective mineure à la version attendue depuis des années ; et l’on va donc parler de dico, emacs, gama, gawk, gnuastro, gnuhealth-client, gnunet, gnupg, gnutls, libcdio, nano, parallel, rush, taler, shepherd et wget.

Journal GNU Emacs : quelques extensions (première partie)

Posté par  . Licence CC By‑SA.
51
14
oct.
2014
Ce journal a été promu en dépêche : GNU Emacs : quelques extensions (première partie).

Cher journal,

C'est la première fois que je t'écris et j'espère que tout va bien se passer.
GNU Emacs 24.4 devrait sortir lundi prochain mais j'ai l'impression qu'on en parle trop peu sur ces pages (on peut tout de même trouver quelques journaux récents, notamment ici, ici ou par ici). J'ai donc décidé d'apporter ma pierre à l'édifice. (Certains éléments reprennent d'ailleurs des astuces ou des commentaires des journaux précédemment cités).

Conventions

On utilisera dans ce journal la (…)

Journal Y'en a marre de ce gros troll !

Posté par  .
49
14
nov.
2014

Cher Nal,

Je t'écris aujourd'hui pour m'expliquer. En effet je pense devoir avouer que je suis un troll.
Mais loin du terme galvaudé utilisé par le commun des mortels pour qui un geek est un client d'Apple shooté à la pub, je suis ce que je considère un troll dans le sens positif qu'on peut lui donner.

Je vais expliquer ça avec mon dernier troll : emacs/vim vs sublime text/zed/atome vs intellij/eclipse (qui s'est passé ici)

Le troll (…)

GNU Emacs 24.4

Posté par  . Édité par ptitjano, BAud, ounim, Nÿco, Jiehong, ZeroHeure, RyDroid, palm123, Anonyme, Dareg, M5oul et saltimbanque. Modéré par Benoît Sibaud. Licence CC By‑SA.
Étiquettes :
48
13
nov.
2014
Bureautique

D'après Wikipédia : « Emacs est une famille d'éditeurs de texte disposant d'un ensemble extensible de fonctionnalités et qui est très populaire parmi les programmeurs et plus généralement les personnes ayant des compétences techniques sur les ordinateurs. ».

La version 24.4 de cet éditeur est sortie le 20 octobre 2014.

Emacs

GNU Emacs v25.1 : regarder YouTube dans Emacs

Posté par  . Édité par Davy Defaud, Jiehong, ptitjano, Benoît Sibaud, ZeroHeure, M5oul et palm123. Modéré par bubar🦥. Licence CC By‑SA.
42
22
sept.
2016
GNU

La nouvelle version de l'éditeur multi-fonctions Emacs est sortie le 17 septembre 2016. La nouveauté la plus voyante est l'intégration de Xwidget, qui permet d'intégrer des widgets X directement, et ainsi ouvrir un navigateur web basé sur webkit dans Emacs et, pourquoi pas, de regarder des vidéos YouTube.

GNU Emacs : quelques extensions (première partie)

Posté par  . Édité par Benoît Sibaud, Nils Ratusznik et palm123. Modéré par ZeroHeure. Licence CC By‑SA.
Étiquettes :
40
14
oct.
2014
Doc

Pour son premier journal, ptitjano a décidé de nous parler de GNU Emacs, et nous on a décidé d'en faire une dépêche : au menu de cette première liste d'extensions, un gestionnaire de paquets, une meilleure navigation parmi les buffers, un M-x amélioré, la liste des derniers fichiers ouverts, l'insertion simple de templates, la complétion visuelle, le classement des buffers en catégories et la recherche dans les buffers ouverts.

Org-mode 1/5 : gérer ses notes avec GNU Emacs

Posté par  (site web personnel) . Édité par Davy Defaud, Nÿco et Benoît Sibaud. Modéré par claudex. Licence CC By‑SA.
40
11
avr.
2017
Doc

Org-mode est un mode de l’éditeur de texte GNU Emacs utilisé pour la prise de notes, la gestion de tâches, la publication de documents, de blogs, les bibliographies, etc., et même la synchronisation avec un smartphone ! Oui, oui, oui, les possibilités d’utilisation d’org-mode sont nombreuses et diverses. Tout ça en texte brut.

Peut‐on tout faire ? N’essayez pas, sous peine d’échec ! Carsten Dominik, le créateur conscient d’avoir lancé un monstre tentaculaire, résume parfaitement la situation :

« N’essayez pas de configurer l’ultime système de gestion de tâches dès le début. Car vous n’avez aucune idée de ce que ce système devrait être. Ne configurez pas pleins d’états et d’enregistrements dès le début, avant que vous n’ayez vraiment le sentiment que cela correspond à vos besoins. Ne définissez pas un tag « @ordinateur » seulement parce que David Allen en a un, même si vous êtes assis devant un ordinateur toute la journée ! Commencez par créer et gérer une petite liste de tâches et développez ensuite votre propre système au fur et à mesure que le besoin s’en fait sentir. J’ai créé Org-mode pour permettre ce processus de développement. »

Parti d’un constat similaire, Ben Maughan de Pragmatic Emacs a rédigé cinq tutoriels d’introduction à Org-mode sur la prise de notes et leur publication. La suite présente son premier article (traduit en français avec l’accord de l’auteur).

NdM : j’ai profondément revu la traduction initiale de ptitjano pour conserver le style rapide, concis et rythmé de l’auteur.

Journal Le markdown, sous Emacs, et plus largement sous Linux

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
37
20
mai
2018

La plupart d'entre vous connaissent le markdown, utilisé bien sûr ici même sur linuxfr, sur tant de forums, sur github 1, un peu partout dans le monde. Il peut servir à créer une page web, écrire des méls, aux forums, aux pages de documentations, à prendre des notes, ou des bouquins. Même si vous ignoriez le nom vous connaissez donc un peu la syntaxe, comme cela :

> ce chevron sur un forum

> indique une ligne de commentaire (…)

Journal Journal Bookmark #2

32
15
déc.
2014