Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème auctex

3 réponses
Avatar
Olivier Reboux
Bonsoir, je viens de refaire mon installation (kubuntu 14.04) et mon
emacs me cause de l'urticaire.

J'ai ceci dans mon .emacs qui fonctionnait parfaitement avant :
(defun insert-parentheses () "insert parentheses and go between them"
(interactive)
(insert "()")
(backward-char 1))
(defun insert-brackets () "insert brackets and go between them"
(interactive)
(insert "[]")
(backward-char 1))
(defun insert-braces () "insert curly braces and go between them"
(interactive)
(insert "{}")
(backward-char 1))
(global-set-key "(" 'insert-parentheses) ;;inserts "()"
(global-set-key "[" 'insert-brackets)
(global-set-key "{" 'insert-braces)

et qui fonctionne parfaitement dans des documents autres que les .tex.
Mais plus dans les .tex. J'ai essayé avec un .emacs ne contenant que
cela, et j'ai toujours le même comportement.

Or c'est bien pratique d'avoir ces petits bouts de code. Je pourrais
faire avec yasnippet mais c'est un chouia moins pratique (en particulier
il faut avoir un espace après le moindre texte).

Comment faire pour taper mes parenthèses et autres crochets en ne tapant
qu'une seule touche ? C'est peut-être dans AUCTeX mais je ne sais pas où.

Mes remerciements anticipés
Olivier Reboux

3 réponses

Avatar
Jean-Jacques Rétorré
mer. 25 mars 2015, Olivier Reboux nous disait que :

Bonsoir, je viens de refaire mon installation (kubuntu 14.04) et mon
emacs me cause de l'urticaire.

J'ai ceci dans mon .emacs qui fonctionnait parfaitement avant :
(defun insert-parentheses () "insert parentheses and go between them"
(interactive)
(insert "()")
(backward-char 1))
(defun insert-brackets () "insert brackets and go between them"
(interactive)
(insert "[]")
(backward-char 1))
(defun insert-braces () "insert curly braces and go between them"
(interactive)
(insert "{}")
(backward-char 1))
(global-set-key "(" 'insert-parentheses) ;;inserts "()"
(global-set-key "[" 'insert-brackets)
(global-set-key "{" 'insert-braces)

et qui fonctionne parfaitement dans des documents autres que les
.tex. Mais plus dans les .tex. J'ai essayé avec un .emacs ne contena nt
que cela, et j'ai toujours le même comportement.

Or c'est bien pratique d'avoir ces petits bouts de code. Je pourrais
faire avec yasnippet mais c'est un chouia moins pratique (en
particulier il faut avoir un espace après le moindre texte).

Comment faire pour taper mes parenthèses et autres crochets en ne
tapant qu'une seule touche ? C'est peut-être dans AUCTeX mais je ne
sais pas où.




M-x electric-pair-mode

--
JJ R.
Avatar
Jean-Jacques Rétorré
mer. 25 mars 2015, Olivier Reboux nous disait que :

Bonsoir, je viens de refaire mon installation (kubuntu 14.04) et mon
emacs me cause de l'urticaire.

J'ai ceci dans mon .emacs qui fonctionnait parfaitement avant :
(defun insert-parentheses () "insert parentheses and go between them"
(interactive)
(insert "()")
(backward-char 1))
(defun insert-brackets () "insert brackets and go between them"
(interactive)
(insert "[]")
(backward-char 1))
(defun insert-braces () "insert curly braces and go between them"
(interactive)
(insert "{}")
(backward-char 1))
(global-set-key "(" 'insert-parentheses) ;;inserts "()"
(global-set-key "[" 'insert-brackets)
(global-set-key "{" 'insert-braces)

et qui fonctionne parfaitement dans des documents autres que les
.tex. Mais plus dans les .tex. J'ai essayé avec un .emacs ne contena nt
que cela, et j'ai toujours le même comportement.

Or c'est bien pratique d'avoir ces petits bouts de code. Je pourrais
faire avec yasnippet mais c'est un chouia moins pratique (en
particulier il faut avoir un espace après le moindre texte).

Comment faire pour taper mes parenthèses et autres crochets en ne
tapant qu'une seule touche ? C'est peut-être dans AUCTeX mais je ne
sais pas où.




M-x electric-pair-mode
le fait. C'est une bascule.

Comme ça peut être gênant, il me paraît pertinent si on en fait un usage
abondant de la lier à une combinaison de touches.

autopair est paraît-il plus sophistiqué, je n'ai pas testé
https://github.com/uk-ar/flex-autopair.el
Ça peut s'installer à partir du dépôt Melpa.

("melpa" . "http://melpa.milkbox.net/packages/")




Mes remerciements anticipés
Olivier Reboux



Pas de quoi.

--
JJ R.
Avatar
Jean-Jacques Rétorré
jeu. 26 mars 2015, Jean-Jacques Rétorré <jj.r&torr&@gmail.com> disait que :

mer. 25 mars 2015, Olivier Reboux nous disait que :

Bonsoir, je viens de refaire mon installation (kubuntu 14.04) et mon
emacs me cause de l'urticaire.

J'ai ceci dans mon .emacs qui fonctionnait parfaitement avant :
(defun insert-parentheses () "insert parentheses and go between them"
(interactive)
(insert "()")
(backward-char 1))
(defun insert-brackets () "insert brackets and go between them"
(interactive)
(insert "[]")
(backward-char 1))
(defun insert-braces () "insert curly braces and go between them"
(interactive)
(insert "{}")
(backward-char 1))
(global-set-key "(" 'insert-parentheses) ;;inserts "()"
(global-set-key "[" 'insert-brackets)
(global-set-key "{" 'insert-braces)

et qui fonctionne parfaitement dans des documents autres que les
.tex. Mais plus dans les .tex. J'ai essayé avec un .emacs ne conten ant
que cela, et j'ai toujours le même comportement.

Or c'est bien pratique d'avoir ces petits bouts de code. Je pourrais
faire avec yasnippet mais c'est un chouia moins pratique (en
particulier il faut avoir un espace après le moindre texte).

Comment faire pour taper mes parenthèses et autres crochets en ne
tapant qu'une seule touche ? C'est peut-être dans AUCTeX mais je ne
sais pas où.




M-x electric-pair-mode
le fait. C'est une bascule.

Comme ça peut être gênant, il me paraît pertinent si on en fait un usage
abondant de la lier à une combinaison de touches.

autopair est paraît-il plus sophistiqué, je n'ai pas testé
https://github.com/uk-ar/flex-autopair.el
Ça peut s'installer à partir du dépôt Melpa.

("melpa" . "http://melpa.milkbox.net/packages/")




Ça, c'est une solution pour Emacs « générale ». J e me suis posé la
question de savoir pourquoi ta solution ne marchait pas.
En fait quand on tape un délimiteur ouvrant, ça ne provoque pas
l'insertion du caractère, mais l'activation d'une fonction
TeX-insert-quelquechose qui est paramétrable pour insérer ou non le
délimiteur correspondant.
Dans AUCTeX il suffit de modifier la variable

LaTeX-electric-left-right-brace

pour lui donner la valeur t , par exemple dans le .emacs, ou dans
customize-variable.

Dans la foulée, on peut aussi paramétrer la fonction TeX-insert-d ollar
pour qu'elle insère $ .. $ ou ( .. ) selon ses préférences.
Par exemple

(setq TeX-electric-math '("(" . ")"))

pour insérer ( .. ) à la frappe d'un $.

--
JJ R.