[HS] Typographie française et Emacs, le cadeau de fin d'année avec le mode po...
Salut,
J'ai enfin réussi - avec l'aide acharnée de fcae - à intégrer « mes »
macros sur la typographie française au mode po (qui est à peine
utilisé ici ;-)).
Voici une solution :
;; redéfinition des touches
(defun my-french-guill ()
"Insère une paire de guillemets"
(interactive)
(insert "« »");<-- deux espaces insécables
(backward-char 2))
(defun my-point-interrogation ()
"Insère un point d'interrogation précédé d'une espace insécable"
(interactive)
(if (eq (char-before) ?\ ) ; si espace classique
(progn
(backward-delete-char 1)
(insert " ?"));<-- 1 espace insécable
(insert " ?")));<-- itou
(defun my-point-exclamation ()
(interactive)
(if (eq (char-before) ?\ ) ; si espace classique
(progn
(backward-delete-char 1)
(insert " !"));<-- 1 espace insécable
(insert " !")));<-- itou
(defun my-double-point ()
(interactive)
(if (eq (char-before) ?\ ) ; si espace classique
(progn
(backward-delete-char 1)
(insert " :"));<-- 1 espace insécable
(insert " :")));<-- itou
(defun my-point-virgule ()
(interactive)
(if (eq (char-before) ?\ ) ; si espace classique
(progn
(backward-delete-char 1)
(insert " ;"));<-- 1 espace insécable
(insert " ;")));<-- itou
(defun my-double-parenthese ()
(interactive)
(insert "()")
(backward-char 1))
(defun my-double-crochet ()
(interactive)
(insert "[]")
(backward-char 1))
(defun my-double-accolade ()
(interactive)
(insert "{}")
(backward-char 1))
(defun my-double-keys ()
"Touches spécifiques"
(interactive)
;; [...]
(setq skeleton-pair t)
(local-set-key "$" 'skeleton-pair-insert-maybe)
(local-set-key "{" 'my-double-accolade)
(local-set-key "(" 'my-double-parenthese)
(local-set-key "[" 'my-double-crochet)
(local-set-key "?" 'my-point-interrogation)
(local-set-key "!" 'my-point-exclamation)
(local-set-key ":" 'my-double-point)
(local-set-key ";" 'my-point-virgule)
(local-set-key 'guillemotleft 'my-french-guill))
; pour Emacs
; (local-set-key "\253" 'my-french-guill))
(add-hook 'text-mode-hook 'my-double-keys)
(add-hook 'po-subedit-mode-hook 'my-double-keys)
La différence avec la dernière fois réside dans le fait que la
définition des touches ne dépend plus du tout d'un mode (avant,
define-key text-mode-map demandait comme prérequis le mode texte,
maintenant un local-set-key s'en affranchit).
Voilà, en conclusion, joyeuse fête avec ce nouveau joujou (et en
conclusion perso, la doc de Emacs est joyeusement le bordel).
Bonne année,
PK
--
|\ _,,,---,,_ Patrice KARATCHENTZEFF
ZZZzz /,`.-'`' -. ;-;;,_ mailto:p.karatchentzeff@free.fr
|,4- ) )-,_. ,\ ( `'-' http://p.karatchentzeff.free.fr
'---''(_/--' `-'\_)
Reply to: