La version 22, qui est en réalité une version 1.22, est sortie le 2 juin 2007. Cette version était très attendue et à connue depuis deux nouvelles révisions (le 28 mars et le 5 septembre 2008) dont des détails sont donnés en seconde partie de la dépêche.
Chong Yidong, mainteneur avec Stefan Monnier depuis le 22 février 2008, a également annoncé le troisième pretest 23.0.92. Cette prochaine version majeure contient des modifications importantes avec notamment une nouvelle gestion des polices de caractères et le mode multi-tty décrit en seconde partie. Principaux changement dans Emacs 22.2 et 22.3
- Des nouveaux modes pour l'édition css, les styles bibtex (bst), vera, verilog, et socks.
- Évolution du module de gestion de version de fichier (VC) avec la complétion des noms de révisions et le support de Mercurial, Monotone, bazaar et Git en plus de Subversion, RCS, CVS, SCCS. Il y a également la possibilité d'ajouter un sous-menu spécifique au backend utilisé.
- Passage à la GPL version 3 ou ultérieure.
- Support de GNU/FreeBSD.
- Abandon du support de nombreuses architectures matérielles et systèmes d'exploitation disparus ou devenus marginaux.
- Mise à jour et corrections variées (semantic, dired, ...).
Évolution dans Emacs 23
Emacs 23 est depuis quelque temps en gel des fonctionnalités ("features freeze") ce qui veux dire qu'il n'y aura pas de nouvelles fonctionnalités introduites jusqu'à la sortie officielle. Cette version comprend de nombreux changements. Sans doute, les deux plus attendus étaient le support des polices avec anti-aliasing ainsi que le mode multi-tty.
- Police non-aliasées
Pour la gestion des polices anti-aliasées, leurs dispositions et leurs formes, Emacs utilise dorénavant les bibliothèques Freetype, xft, otf et m17n. Fontconfig permet à Emacs d'accepter les spécifications de polices comme "monospace-12:bold" ou encore "Monospace Bold 12". Le clic gauche avec shift (S-down-mouse-1 pour les connaisseurs) ouvre un menu permettant de spécifier les attributs des polices. Avec le nouveau mode mineur global « Text Scale », de nouvelles commandes, dans l'esprit des navigateurs internet, permettent de changer la taille de la police (C-x C-+ ou C-x C-= pour augmenter. C-x C-- pour diminuer. C-x C-0 pour la taille par défaut). Il faut remarquer qu'Emacs gérait l'anti-aliasing sur les platformes win32 et carbon avant la version 23.
- Le mode Multi-tty et daemon
Voilà un gros chantier qui peut se résumer ainsi (tiré du NEWS): « Emacs now supports using both X displays and ttys in one session » soit en français « Emacs supporte dorénavant à la fois des affichage sur terminal virtuel et serveur X dans la même session ». Pour comprendre cela il faut connaître emacsclient.
Jusqu'à maintenant, pour éviter de lancer une nouvelle session emacs à chaque édition de fichier, il était possible de donner la directive (server-start) lors d'un premier lancement. Une fois cette première session lancée il suffisait d'appeler emacsclient (généralement mis en variable EDITOR) a la place d'emacs lui-même. Emacsclient se chargeait alors de contacter la session serveur et le fichier était ouvert dans un nouveau cadre de la première instance.
Cette approche possède deux limitations qui n'existent plus. Il fallait tout d'abord lancer une première instance complète en avant plan. Ensuite si la première session emacs en serveur était lancée en mode console, les nouveaux cadres ne pouvaient pas être des fenêtres X et inversement. La solution à la deuxième limitation a d'ailleurs fournit la solution à la première.
Voilà avec Emacs 23 comment les choses se passent dorénavant :
emacsclient -c
ouvre une fenêtre X si vous êtes sous X ou un cadre emacs dans la console. Si vous voulez récupérer la main sur le terminal vous pouvez ajouter l'option -n.
emacsclient -t
ouvre un cadre emacs dans la console. On peut également préciser un éditeur alternatif si une première session emacs n'est pas lancée
emacsclient -c -a (emacs|nano|vim|ed...)
Et enfin il est possible de lancer emacs en tâche de fond dans .bashrc ou encore .xinitrc avec
emacs --daemon
qui vous rend la main directement. Des scripts qui enrobent ces directives peuvent déjà être trouvés sur le net. Le plus répandu consiste à lancer plusieurs démons nommés (exemple : edit, mail ou proj1) dans des écrans et de s'y connecter en fonction du besoin. On peut trouver ces scripts dans le README de l'auteur original Károly Lörentey
Changements mineurs
Cette version contient bien sûr tout un lot de mise à jours des modules et de corrections. De nombreuses nouveautés sont en fait l'intégration de modules tiers dans la version officielle. On peut citer, par exemple, la prise en compte des spécifications Xembed pour embarquer Emacs dans une application graphique tierce, une amélioration du support unicode, le support de d-bus ou encore du standard d'image SVG.
En conclusion, tout ceci, en plus de discussions sur les futures fonctionnalités d'Emacs, confirment la bonne santé de ce projet vieux de plus de vingt ans. Les développeurs montrent également que malgré un héritage de code énorme, ils sont près à des évolutions majeures pour une meilleure expérience utilisateur moderne.
Aller plus loin
- Annonce du pretest (0 clic)
- Site officiel (18 clics)
- Le NEWS de la version 22 (3 clics)
- Le NEWS du CVS (2 clics)
- La page wikipedia (40 clics)
# Trop gros
Posté par 2PetitsVerres . Évalué à 10.
Tous les nombres premiers sont impairs, sauf un. Tous les nombres premiers sont impairs, sauf deux.
[^] # Re: Trop gros
Posté par Maclag . Évalué à 8.
[^] # Re: Trop gros
Posté par jardiland . Évalué à 10.
[^] # Re: Trop gros
Posté par claudex . Évalué à 4.
« Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche
[^] # Re: Trop gros
Posté par vladislav askiparek . Évalué à 4.
Hurd n'est pas mort, il est simplement marginal.
[^] # Re: Trop gros
Posté par B16F4RV4RD1N . Évalué à 10.
précision : on dit GNU/Emacs.
Emacs c'est le noyau, GNU les composants qu'il y a autour.
Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it
[^] # Re: Trop gros
Posté par CdeMills . Évalué à 7.
CdM
# La missing-feature d'Emacs
Posté par Pablo Rauzy (site web personnel) . Évalué à 3.
Les mmm-mode mumamo et compère sont vraiment pas terrible je trouve, et ce qui serait vraiment bien c'est quelque chose dans le même esprit que TextMate ou Gedit : pouvoir dire directement dans une description de syntaxe "entre ça et ça c'est tel mode".
Bon mais c'est qu'un détail, Emacs est déjà parfait comme il est :-p. En plus j'ai découvert aujourd'hui twitter.el... Et puis c'est le seul éditeur à avoir la commande M-x butterfly :-D
[^] # Re: La missing-feature d'Emacs
Posté par Émilien Tlapale . Évalué à 1.
# C'est parceque c'est le premier avril, c'est ça ?
Posté par psychoslave__ (site web personnel) . Évalué à 0.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par Matthieu Moy (site web personnel) . Évalué à 3.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par psychoslave__ (site web personnel) . Évalué à 3.
Au démarrage de ma session j'ai même mis ceci :
# Recupere un caractere unique
getc ()
{
stty raw -echo
tmp=`dd bs=1 count=1 2>/dev/null`
eval $1='$tmp'
stty cooked
}
# On demande si screen doit être lancé
# mais uniquement si on est pas déjà dans une session de screen
if [ -z "`echo "$TERM" |grep "screen"`" ];then
echo "Faut-il lancer screen [O|n]?"
getc start_screen
if [ `echo "$start_screen" | grep "n"` ];then
echo "Screen ne sera pas lancé."
# Si oui, on vérifie la présence d'une éventuelle
# session à récupérer ou on en crée une
else
screen -xRR
fi
fi
Donc quand je démarre un shell, si je ne presse pas «n», je retrouve ma session de screen (ou j'en crée une).
Après pour avoir la même chose sous X11, il suffit de lancer un émulateur de terminal.
Peut être que j'ai pas compris la problématique, mais je vois vraiment pas ce que ça permet de plus par rapport à l'utilisation de screen.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par François (site web personnel) . Évalué à 3.
Ensuite cela permet également de pouvoir donner emacsclient comme éditeur à tout un tas de soft (sylpheed, firefox, EDITOR...), et on ouvrira toujours la même instance, quelque soit le type et le nombre de login.
Ensuite la solution avec des screens ne permet pas d'ouvrir un cadre totalement graphique (avec primitives X), ce que sait faire emacs. Donc pas d'images dans les buffers, pas de polices différentes dans un même buffer, support limiter de la souris, pas de gtk (cocoa, winforms, ...).
Pour finir, c'est une solutions qui fonctionne même si il n'y a pas screen d'installé (par exemple sur les autres systèmes).
Depuis plusieurs année maintenant il existe des solutions d'enrobage à ce problèmes (entre autre avec des screens). Aucune ne proposait une solution aussi souple que dorénavant.
En espérant avoir été clair...
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par psychoslave__ (site web personnel) . Évalué à 2.
Pour les cadres graphiques, les images et les polices différentes ce n'est pas une fonctionnalité que j'attends d'un éditeur de texte. Pour un traitement de texte, pourquoi pas, mais emacs se présente comme un éditeur de texte il me semble.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par François (site web personnel) . Évalué à 1.
Oui c'est l'extension "it's all text". Pour thunderbird y'a "external editor".
Pour le reste c'est comme tu veux.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par psychoslave__ (site web personnel) . Évalué à 2.
m'en passer. :)
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par gasche . Évalué à 2.
Quand tu crées un document LaTeX sous emacs (avec AucTeX-mode roxx), et que tu utilises le mode "preview" qui remplace dynamiquement les formules mathématiques que tu insères par leur "vrai rendu" (des images donc), c'est tellement plus agréable à relire pour repérer les erreurs que tu es bien content d'avoir un éditeur de texte qui sait afficher des images.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par psychoslave__ (site web personnel) . Évalué à 3.
Ce n'est donc plus un éditeur de texte.
Je ne dis pas que ce n'est pas bien, si cela fait ce que l'utilisateur attends, c'est au contraire très bien. Il faudrait juste arrêter de présenter ce logiciel pour ce qu'il n'est pas. C'est un environnement de développement intégré, pas un éditeur de texte, et même plus encore.
Nano, gedit, notepad ou vim sont des éditeurs de textes. Bien sûr la limite n'est pas net sur ce qui relève de l'édition de texte. Par exemple, quid de la correction orthographique ? Moi j'aurais tendance à dire qu'elle ne devrait pas plus être intégré qu'un débbogueur : on devrait pouvoir automatiser le saut et la correction vers l'erreur, voir la marquer visuellement, en utilisant le résultat passé par le logiciel externe, mais pas l'incorporer à l'éditeur.
Chacun aura sa préférence entre l'approche «plein de logiciels qui ne font qu'une chose» et «un logiciel qui fait tout». Chaque approche à ses avantages et inconvénient.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par Matthieu Moy (site web personnel) . Évalué à 2.
> Ce n'est donc plus un éditeur de texte.
Tu as probablement une définition d'éditeur de texte différente de la mienne, mais pour moi, un éditeur de texte, c'est un truc qui sert à éditer des fichiers textes. Ça n'a rien de contradictoire avec le fait d'afficher des images (typiquement, latex-preview).
Ça s'appelle comment, dans ton monde, Emacs + latex-preview ?
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par psychoslave__ (site web personnel) . Évalué à 2.
Pour moi un éditeur de texte te permet de manipuler seulement du texte plat. Si il peu afficher des textes formatés, des images ou lire des sons, ce n'est plus un simple éditeur de texte.
Emacs me fait plutôt penser à un traitement de texte.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par Matthieu Moy (site web personnel) . Évalué à 2.
Tiens, ça tombe bien, c'est pile ce que fait latex-preview.
Bon, documentes-toi sur ce dont tu parles, ou arrête le thread, ça ne mène nulle part.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par psychoslave__ (site web personnel) . Évalué à 2.
L'important n'est pas la destination mais le chemin parcouru. :)
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par Matthieu Moy (site web personnel) . Évalué à 6.
Et surtout, oui, si ta notion de « sous X11 », c'est « dans un xterm qui tourne sous X11 », effectivement, tu peux tout faire sous X11. M'enfin, en général, quand on te parle d'application X11, c'est pas limité aux emulateurs de terminaux ...
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par psychoslave__ (site web personnel) . Évalué à 3.
Et dans screen tu n'as pas nécessairement le même affichage sur les différents terminaux, c'est le cas seulement si tu affiches la même fenêtre de la même session.
Maintenant je dis pas que ça a aucun intérêt, ça permet certainement une meilleur intégration avec les environnements de bureau comme expliqué ci-dessus. Moi je trouve cette approche de tout intégrer dans l'éditeur de texte trop usine à gaz, mais c'est que mon avis.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par sov36 . Évalué à 8.
on parle d'emacs en même temps .... /o\
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par TeXitoi (site web personnel) . Évalué à 1.
Ensuite, les images et les polices de taille variables peuvent avoir un certain avantage dans un éditeur de texte, et n'est pas permis par un émulateur de terminal. Un exemple est preview-latex, qui permet d'afficher le rendu d'une formule mathématique, d'un tableau ou d'une figure dans ton éditeur : http://www.gnu.org/software/auctex/img/preview-screenshot.pn(...)
Après, c'est vrai qu'emacs fait peut-être beaucoup de chose. Je n'irai pas jusqu'a dire que c'est un OS (il ne fait pas interface entre le matériel et le logiciel), mais je pense qu'on peut dire que c'est un environnement de bureau, comme Gnome, KDE et XFCE ;-)
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par Matthieu Moy (site web personnel) . Évalué à 2.
> terminaux, c'est le cas seulement si tu affiches la même fenêtre de la même session.
Je connais mal screen, mais il y a _vraiment_ un moyen de faire afficher des trucs différents dans des terminaux différents par _la même appli_ sans support de l'application en question ?
Si c'est le cas, je veux bien voir les commandes qui le font.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par psychoslave__ (site web personnel) . Évalué à 2.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par Matthieu Moy (site web personnel) . Évalué à 3.
Un Emacs graphique et un autre en mode texte, j'utilise ça tous les jours : je préfère un Emacs graphique (plus de couleurs différentes disponibles que dans un xterm, donc plus joli à mon goût, des fois copier-coller à la souris, et les menus pour les modes que je ne connais pas bien pour chercher les commandes), mais quand je suis chez moi et que je me connecte au labo, je préfère le mode texte (plus réactif via la liaison ADSL), mais j'apprécie de me connecter au même Emacs quand même.
[^] # Re: C'est parceque c'est le premier avril, c'est ça ?
Posté par psychoslave__ (site web personnel) . Évalué à 3.
Comme tu le dis, vi(m) démarre instantanément (mon vimrc fait un peu plus de 150 lignes, ce qui est pas énorme mais pas minuscule non plus).
Pour le copier(/sélectionner) coller, pas de problème, je dirais même que je le trouve mieux que la plupart des applis, car selon comment tu configures la variable mouse, tu peux cliquer n'importe où dans ton vim pour faire ton coller au lieu d'avoir à viser.
Pour la connexion distante, je fait du ssh sur tuxfamily de temps en temps de manière fluide, j'ai jamais eu de problème.
# arf
Posté par tuXico . Évalué à 10.
Tous les ans, je me fais avoir au même type de sottise...
[^] # Re: arf
Posté par totof2000 . Évalué à 10.
... qui nécessite des doigts souples et extensibles eux aussi pour pouvoir être pleinement utilisé ... (4 mains de 10 doigts minimum)
[^] # Re: arf
Posté par RomainT . Évalué à 4.
(bon, ben, je vais y aller moi...)
# GNU/FreeBSD ???
Posté par dinomasque . Évalué à 3.
BeOS le faisait il y a 20 ans !
[^] # Re: GNU/FreeBSD ???
Posté par pmoret (site web personnel) . Évalué à 3.
# Un petit easter egg sympa
Posté par Diagonale de Cantor (site web personnel) . Évalué à 2.
Ajout d'une commande «M-x butterfly».
Pour les incultes : http://xkcd.com/378/
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.