GNU Emacs, Fleuron du logiciel libre
GNU Emacs, Editing macros
Présentation
Tout le monde connait Emacs, mais j’ai de nombreuses fois entendu qu’il était dépassé trop austÚre ou encore “compliqué” prendre en main, personnellement, la premiere fois que j’ai démarré emac, je n’ai pas réussi le fermer … ( ; néanmoins aujourd’hui je ne jure et ne développe que par lui. Pour présenter emacs, je vais utiliser un extrait du magnifique livre “Programmer avec les outils GNU” qui je pense définit dans ce petit paragraphe au mieux l’impact d’emacs dans le Logiciel Libre.
“Fleuron du logiciel GNU, Emacs est aujourd’hui l’éditeur libre le plus répandu et, surtout, le plus apprécié du programme exigeant. Il consitue souvent un premier contact avec le monde du Logiciel Libre et, apres avoir taté de ses nombreuses fonctionnalités, beaucoup ne jurent plus que par lui. Pour notre part, nous pensons simplement que s’il fallait ne conserver qu’un seul outil gratuit, nous pencherions sans hésiter pour Emacs…” … et je suis de cet avis !
Pourquoi emacs est si compliqué
Tout d’abord emacs n’est pas compliqué, il utilise une certaine philosophie qui de nos jours disparait avec l’arrivée de la souris et du clic …Pourtant il me semble qu’en tant que développeur, la souris n’est pas trés utie, disons qu’elle gene meme, qui n’a jamais senti cette espece d’angoisse qu’on ressent en plein développement devoir déplacer notre poignet confortablement installé au chevet du clavier, pour attraper la souris et tripatouiller dans les menus pour trouver une option particuliere, ou encore se déplacer une certaine ligne ou je ne sais trop quoi.
Dompter Emacs
Il faut entrer dans le emacs, s’impregner de celui-ci, se coucher en pensant lui …et quelques semaines apres on se dit tous … “mais comment je faisais avant?” (:
Configurer Emacs
Emacs est véritablement modulable et c’est ce qui rend ce logiciel legerement deroutant au premier abord,
m’enfin les choses importantes a savoir :
- Emacs lit a chaque démarrage son fichier de configuration “~/.emacs”, partir de lui on peut transformer emacs pour qu’il colle completement au doigt (;
- la combinaison M-x “commande” permet d’executer une des milliers de commandes disponibles, ce qui est interessant c’est que la completion via la touche tab est fonctionnelle
- C-x C-c permet de quitter emacs ( ;
Je ne vais pas lister ici toutes les commandes vraiment utiles pour dompter emacs, il existe deja pas mal de documents la dessus, je conseille meme d’utiliser l’excellent tutorial présent dans le logiciel (en francais).
Mon fichier de configuration
Pour ma part, mon fichier de configuration est plutot simple, disons que j’ajoute emacs certains modes qui ne sont pour l’instant toujours pas disponibles en natif, de plus j’ai ajouté quelques raccourcis que j’utilise largement.
Perso. j’utilise emacs et non xemacs …oui bah j’suis un fan de Barry White et autres Seventies (;
Vous pouvez telecharger le paquetage avec les modes sur le depot
http://.labs.funraill.org/pub
-
;; == Repertoire des bibliotheques
-
(add-to-list ‘load-path “~/.emacs.libs”)
-
-
;; == Numerotation des lignes
-
;(load "setnu")
-
(load “wb-line-number”)
-
(wb-line-number-enable)
-
-
;; == Completion du code
-
(load “completion”)
-
(initialize-completions)
-
-
;; == Possibilite de supprimer la selection
-
(delete-selection-mode t)
-
-
;; == Affiche l’heure
-
(display-time-mode t)
-
-
;; == Affiche le numero du caractere de la ligne
-
(column-number-mode t)
-
-
;; == Coloration syntaxique
-
(global-font-lock-mode t)
-
-
;; == Couleur zone selectionnee
-
(transient-mark-mode t)
-
-
;; == Force l’indentation a 2 espaces
-
(custom-set-variables ‘(tab-width 2))
-
-
;; == Force l’espacement de tabulation
-
(setq-default indent-tabs-mode nil)
-
-
;; == Configurations du clavier
-
(global-set-key [(control j)] ‘complete) ;; [Ctrl+Ret] Completion
-
(global-set-key [(control g)] ‘goto-line) ;; [Ctrl+G] Aller a la ligne indiqué
-
(global-set-key [f9] ‘compile) ;; [F9] Commande compile
-
(global-set-key [(control f)] ‘isearch-forward) ;; [Ctrl+F] Recherche
-
-
;; == Edition de code PHP
-
(autoload ‘php-mode “php-mode” t)
-
(setq auto-mode-alist (append ‘((“\\.php$” . php-mode)) auto-mode-alist))
-
-
;; == Edition de code Javascript
-
(autoload ‘javascript-mode “javascript-mode” t)
-
(setq auto-mode-alist (append ‘((“\\.js$” . javascript-mode)) auto-mode-alist))
-
-
;; == Edition de code C/C++ style GNU
-
(lambda ()
-
(c-set-style “gnu”)
-
(c-toggle-auto-state t)
-
(c-toggle-hungry-state t)
-
)
Tableau de bord





18 avril 2007 at 8:00
C’est un peux comme pour VI … vive les raccourcis claviers, vive le logiciel libre !
14 mai 2008 at 8:23
Salut excuse moi, pour te citer, tu dis “j’ai de nombreuses fois entendu qu’il était dépassé trop austère ou encore “compliqué” à prendre en main”. En fait si il rebute énormément de monde justement c’est parce que en standard dans toutes les distrib c’est vi qui est installé par défaut, et justement tu dis que tu développes que par cet éditeur. Hors cet éditeur est énormément utiliser par les développeurs pour formater du code source ce qui n’est pas forcément utile pour un novice qui entreprend de migrer sur le système linux. Il est plus difficile à prendre en main par rapport a Vi mais possède de riches options surtout pour les développeurs ce qui fais sa force justement.
Tout dépends l’utilisation que l’on en fait.
Sur ceux bonne continuation et vive Linux
Petite question personnel qu’as tu fais comme étude pour arriver à ce stade ?