OVH Cloud OVH Cloud

le double dollar en édition de .tex

5 réponses
Avatar
Grin
Bonjour =E0 tous !


Il y a une fonction de emacs qui m'irrite particuli=E8rement, mais je ne
sais pas comment la d=E9sactiver :

c'est pendant l'=E9dition de formules en LaTeX, apr=E8s avoir ouvert avec
$$, au moment ou je tape un seul $, il m'en met 2 pour cr=E9er la balise
fermante.

Du coup il m'arrive fr=E9quement de me retrouver avec des $$$ et =E7a
m'=E9nerve prodigieusement !

Savez-vous comment je pourrais changer =E7a ?


Merci bien !

5 réponses

Avatar
Matthieu Moy
"Grin" writes:

c'est pendant l'édition de formules en LaTeX, après avoir ouvert avec
$$, au moment ou je tape un seul $, il m'en met 2 pour créer la balise
fermante.



Il paraît que les vrais du LaTeX n'utilisent pas $$...$$ parce que les
espaces sont mal mis. Mais j'ai apris avec et j'ai aussi gardé
l'habitude.

Du coup il m'arrive fréquement de me retrouver avec des $$$ et ça
m'énerve prodigieusement !

Savez-vous comment je pourrais changer ça ?



La fonction responsable de ça est la suivante :

(defun TeX-insert-dollar (&optional arg)
"Insert dollar sign.

If current math mode was not entered with a dollar, refuse to insert one.
Show matching dollar sign if this dollar sign ends the TeX math mode.
Ensure double dollar signs match up correctly by inserting extra
dollar signs when needed.

With raw [universal-argument] prefix, insert exactly one dollar sign.
With optional ARG, insert that many dollar signs."
(interactive "P")
(cond
((and arg (listp arg))
;; C-u always inserts one
(insert "$"))
(arg
;; Numerical arg inserts that many
(insert (make-string (prefix-numeric-value arg) ?$)))
((TeX-escaped-p)
;; This is escaped with `', so just insert one.
(insert "$"))
((texmathp)
;; We are inside math mode
(if (and (stringp (car texmathp-why))
(string-equal (substring (car texmathp-why) 0 1) "$"))
;; Math mode was turned on with $ or $$ - so finish it accordingly.
(progn
(insert (car texmathp-why)) ;; <------ C'est là --------------
(save-excursion
(goto-char (cdr texmathp-why))
(if (pos-visible-in-window-p)
(sit-for 1)
(message "Matches %s"
(buffer-substring (point)
(progn (end-of-line) (point)))))))
;; Math mode was not entered with dollar - we cannot finish it with one.
(error "Math mode because of `%s'. Use `C-q $' to force a dollar"
(car texmathp-why))))
(t
;; Just somewhere in the text.
(insert "$")))
(TeX-math-input-method-off))


Et si je ne m'abuse, ça n'est pas paramétrable.

Solution 1 : un rapport de bug aux gens d'AucTeX demandant une
variable pour paramêtrer ça.

Solution 2 : Implémenter toi-même une variante de cette fonction qui
fait ce que tu veux

Solution 3 (la plus simple) : remapper '$' sur 'self-insert-command.

--
Matthieu
Avatar
Denis Bitouzé
Le 28 jun 2006 à 15h01
Matthieu Moy a écrit :

Il paraît que les vrais du LaTeX n'utilisent pas $$...$$



Rhaaa, kss kss, péché mortel ! Cf. :

ftp://tug.ctan.org/pub/tex-archive/info/l2tabu/french/l2tabufr-heavy.pdf

parce que
les espaces sont mal mis. Mais j'ai apris avec et j'ai aussi gardé
l'habitude.



Un problème notable que pose cette commande est qu'elle ne permet
pas de bénéficier de l'option fleqn du package amsmath.
--
Denis
Avatar
Vincent Bernat
OoO En ce début d'après-midi ensoleillé du mercredi 28 juin 2006, vers
15:01, Matthieu Moy disait:

"Grin" writes:
c'est pendant l'édition de formules en LaTeX, après avoir ouvert avec
$$, au moment ou je tape un seul $, il m'en met 2 pour créer la balise
fermante.



Il paraît que les vrais du LaTeX n'utilisent pas $$...$$ parce que les
espaces sont mal mis. Mais j'ai apris avec et j'ai aussi gardé
l'habitude.



C'est différent de [ ] ?
--
IT DOES NOT SUCK TO BE YOU
IT DOES NOT SUCK TO BE YOU
IT DOES NOT SUCK TO BE YOU
-+- Bart Simpson on chalkboard in episode AABF13
Avatar
Thomas vO
bonjour,

À (at) Wed, 28 Jun 2006 17:15:35 +0200,
Vincent Bernat nous disait (told us):
OoO En ce début d'après-midi ensoleillé du mercredi 28 juin 2006, vers
15:01, Matthieu Moy disait:

"Grin" writes:
c'est pendant l'édition de formules en LaTeX, après avoir ouvert avec
$$, au moment ou je tape un seul $, il m'en met 2 pour créer la balise
fermante.





Il paraît que les vrais du LaTeX n'utilisent pas $$...$$ parce que les
espaces sont mal mis. Mais j'ai apris avec et j'ai aussi gardé
l'habitude.



C'est différent de [ ] ?



réponse courte : oui.

en un poil plus long : les espacements verticaux ne sont plus les
mêmes, et l'option de classe fleqn est sans effet. comme Denis l'a si
bien dit, c'est un pêché mortel, recensé dans
<ftp://tug.ctan.org/pub/tex-archive/info/l2tabu/french/l2tabufr-heavy.pdf>

--
Thomas vO - <http://perso.enstimac.fr/~vanouden/>
Avatar
Thomas vO
re...

À (at) Wed, 28 Jun 2006 17:27:40 +0200,
Thomas vO nous disait (told us):
À (at) Wed, 28 Jun 2006 17:15:35 +0200,
Vincent Bernat nous disait (told us):
OoO En ce début d'après-midi ensoleillé du mercredi 28 juin 2006, vers
15:01, Matthieu Moy disait:
Il paraît que les vrais du LaTeX n'utilisent pas $$...$$ parce que
les espaces sont mal mis. Mais j'ai apris avec et j'ai aussi gardé
l'habitude.



C'est différent de [ ] ?



réponse courte : oui.



j'ai retrouvé le lien que je cherchais :
<http://www.eleves.ens.fr/home/noirel/latex/faq.html#Equations>

--
Thomas vO - <http://perso.enstimac.fr/~vanouden/>