Le démarrage d’Emacs
Rédigé par Fred - - Aucun commentaireIntroduction
Il y a quelques temps de cela (je viens de me rendre compte que cela
fait plus de 10 ans déjà…), je commençais à utiliser Emacs. Et, comme
beaucoup je suppose, pour configurer, je copiais/collais des bouts de
code dans mon .emacs
sans chercher à comprendre ce que ça faisait
(comment ça c’est encore le cas ‽). Typiquement, j’avais plein de :
(autoload 'php-mode "php-mode" "Major mode for editing php code." t) (add-to-list 'auto-mode-alist '("\\.php$" . php-mode))
plutôt obscurs.
Et au fil du temps, les lignes s’accumulaient, et Emacs n’était plus aussi rapide à charger.
Je me suis alors intéressé à comment le rendre plus rapide au démarrage. Bien que je me sois rendu compte que la meilleure solution pour moi serait d’utiliser emacsclient1, j’ai d’abord fait du nettoyage, en utilisant le plus possible customize et en regroupant ça dans un seul fichier avec :
(setq custom-file "~/.emacs.d/config/custom.el") (load custom-file)
Puis j’ai supprimé tout ce dont je ne me servais en fait pas, et je me suis penché sur ce qu’il se passe au démarrage d’Emacs, pour savoir si je ne lui faisais pas faire des choses inutiles. Et, avec les différentes versions d’Emacs certainement, j’ai bien vu que la plupart de ces lignes étaient (devenues ?) inutiles.
tl;dr
Que fait autoload
? Qu’y a-t-il dans auto-mode-alist
? Le bout de
code précédent pour avoir le mode python est-il nécessaire ?
suffisant ? Peut-on faire autrement ? C’est à ça que je vais
m’intéresser par la suite. Pour cela, je me suis penché dans le code
et le manuel d’Emacs et je vous partage ce que j’en ai retenu et
laisse des informations pas forcément pertinentes, mais fortement en
relation et toujours instructives.
Lire la suite de Le démarrage d’Emacs
Edit dans dired/occured = awesome
Rédigé par Fred - - Aucun commentaireVoici des exemples qui font que je ne pourrais pas me passer d’Emacs tant il me facilite la vie. (Attention, certaines des fonctionnalités que je vais utiliser ne marchent qu’avec Emacs > 24.)
Un peu de typographie et marquer les raccourcis clavier dans org-mode
Rédigé par Fred - - Aucun commentaire
Utilisant la disposition de clavier bépo, et soucieux d’écrire le plus
correctement possible, j’ai pris l’habitude de mettre des espaces
insécables lorsque c’est nécessaire (même si, je l’avoue, je n’utilise
pas les espaces fines… désolé). Depuis plusieurs jours, j’utilise
également les apostrophes courbes (!wfr) et plus celles qui se trouve
sur la touche 4
des claviers azerty, des droites : l’apostrophe
courbe
vs l'apostrophe droite
.
Lire la suite de Un peu de typographie et marquer les raccourcis clavier dans org-mode
Une espace une tabulation
Rédigé par Fred - - Aucun commentaireAujourd'hui, je vais parler des espaces dans Emacs, mais pas que (oui, ces temps-ci, ce sera beaucoup, beaucoup d'Emacs dont il sera question). Et oui, les espaces dont je vais parler, ce sont les espaces aux féminins : le caractère typographique, représenté par un espace (au masculin celui-ci) entre les mots.
Pour voir les espaces que vous avez tapées, et savoir si un espace est constituée d'une ou plusieurs espaces, voire de tabulations, il existe un mode pour cela : M-x whitespace-mode permet de voir tout ce qui est d'habitude invisible (ou presque).
Les espaces seront alors représentées par des ·
(ou seront en couleur si la ligne ne dépasse pas du buffer), les fins de lignes par $
, les espaces (qui devraient être fines) insécables par ¤
, les tabulations seront en couleur, etc.
Bon, c'est pas le truc dont je vais me servir souvent. Par contre, dans la bibliothèque du mode (find-library whitespace
si vous avez installé le paquet emacs2x-el
), il y a tout un tas de fonctions liés aux espaces en général, comme whitespace-cleanup
qui se charge des :
- lignes vides en début de buffer ;
- lignes vides en fin de buffer ;
- 8 espaces ou plus en début de lignes ;
- espaces avant les tabulations ;
- espaces et tabulations en fin de ligne ;
- 8 espaces ou plus après une tabulations.
(extrait de l'aide de la fonction, C-h f whitespace-cleanup).
Bref, de quoi faire du ménage si vous n'avez pas fait C-x C-o à la fin de votre fichier par exemple (voir précédemment).
La bibliothèque propose tout un tas d'autres fonctions, qui sont grandement customizable, et je vous invite à y jeter un coup d'œil. Si le whitespace cleanup est trop radical pour vous, ce hook est plutôt sympa :
(add-hook 'before-save-hook 'delete-trailing-whitespace)
Raccourcis utilisés
Pour entrer un caractère utf-8 avec son code hexadécimal (ou son nom) C-x 8 Enter puis le code.
Des raccourcis en vrac
Rédigé par Fred - - Aucun commentaireBon, j’ai tout plein de choses à faire, mais pas de temps. Quelques choses à partager aussi, mais pas de temps non plus. Du coup, je vais essayer de partager moins mais plus fréquemment.
C’est pas gagné…
En attendant, voici des choses que j’ai trouvées récemment, sans rapport, et sans transition.
Agrandir la police dans emacs avec control plus roulette
Rédigé par Fred - - Aucun commentaireAgrandir la police avec Ctrl+Roulette
En fait, ce billet, c’est plutôt un vrac, mais à l’origine, c’était vraiment juste pour ça, agrandir le texte comme dans la plupart des applications. À mettre dans son .emacs
bien entendu :
(global-set-key (kbd "<C-wheel-up>") 'text-scale-increase)
et pour faire l’inverse :
(global-set-key (kbd "<C-wheel-down>") 'text-scale-decrease)
Lire la suite de Agrandir la police dans emacs avec control plus roulette
Modifier des fichiers en masse avec Emacs
Rédigé par Fred - - Aucun commentaire
La problèmatique du jour est la suivante : j'utilise actuellement selenium pour les besoins du boulot. Je vous passe les détails, mais j'ai moults fichiers html qui me permettent de tester le contenu d'un site. Sauf que ce site évolue parfois, et du coup, il me faut modifier relativement fréquemment ces fichiers.
Heureusement qu'il y a findus emacs.
Le nettoyage de mon .emacs
Rédigé par Fred - - Aucun commentairePourquoi
Parce que. Un peu plus de 900 lignes, ça commence à faire pas mal. Surtout quand plein de trucs sont plus utilisés (entre autre suite à divers changements de PC). J'ai essayé de faire ça pas trop mal : dans des dossiers tout bien rangé. De plus, tout ce qui peut être customised
sera fait dans Customize
.
Je vous conseille de regarder le manuel d'emacs sur le fichier d'initialisation et le petit résumé de ce qu'il se passe au démarrage, c'est toujours instructif.