Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tous cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de notes , et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Philip pe, si vous
passez par là ...
Merci à tous,
Stéphane
Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tous cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de notes , et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Philip pe, si vous
passez par là ...
Merci à tous,
Stéphane
Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tous cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de notes , et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Philip pe, si vous
passez par là ...
Merci à tous,
Stéphane
Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tous cas à
l'époque c'était du chinois pour moi (je n'ai pas pris de notes, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Philippe, si vous
passez par là...
Merci à tous,
Stéphane
Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tous cas à
l'époque c'était du chinois pour moi (je n'ai pas pris de notes, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Philippe, si vous
passez par là...
Merci à tous,
Stéphane
Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tous cas à
l'époque c'était du chinois pour moi (je n'ai pas pris de notes, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Philippe, si vous
passez par là...
Merci à tous,
Stéphane
http://stackoverflow.com/questions/8538688/how-can-you-modify-two-matching-delimiters-at-once-with-emacs
Ça à l'air de correspondre a ce que tu veux faire.
Cependant même si ça marche, je ne trouve pas que cela soit vraiment
satisfaisant,
les délimiteurs, simple caractère, chaine, regexp, ... Donc si jamais
quelqu'un possède un bout de code comme ça, il me sauverait (ou pas) un
week end. :)
http://stackoverflow.com/questions/8538688/how-can-you-modify-two-matching-delimiters-at-once-with-emacs
Ça à l'air de correspondre a ce que tu veux faire.
Cependant même si ça marche, je ne trouve pas que cela soit vraiment
satisfaisant,
les délimiteurs, simple caractère, chaine, regexp, ... Donc si jamais
quelqu'un possède un bout de code comme ça, il me sauverait (ou pas) un
week end. :)
http://stackoverflow.com/questions/8538688/how-can-you-modify-two-matching-delimiters-at-once-with-emacs
Ça à l'air de correspondre a ce que tu veux faire.
Cependant même si ça marche, je ne trouve pas que cela soit vraiment
satisfaisant,
les délimiteurs, simple caractère, chaine, regexp, ... Donc si jamais
quelqu'un possède un bout de code comme ça, il me sauverait (ou pas) un
week end. :)
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$<RET> $left(1right)$<RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$<RET> $\left(1\right)$<RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$<RET> $left(1right)$<RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Cependant même si ça marche, je ne trouve pas que cela soit vr aiment
satisfaisant,
pourquoi?
Cependant même si ça marche, je ne trouve pas que cela soit vr aiment
satisfaisant,
pourquoi?
Cependant même si ça marche, je ne trouve pas que cela soit vr aiment
satisfaisant,
pourquoi?
Stéphane Dutailly disait le 01/03/12 que :Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tou s cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de note s, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Phili ppe, si vous
passez par là ...
Merci à tous,
Stéphane
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$ <RET> $left(1right)$ <RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Stéphane Dutailly <dutaillys@yahoo.fr> disait le 01/03/12 que :
Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tou s cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de note s, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Phili ppe, si vous
passez par là ...
Merci à tous,
Stéphane
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$ <RET> $\left(1\right)$ <RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Stéphane Dutailly disait le 01/03/12 que :Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tou s cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de note s, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Phili ppe, si vous
passez par là ...
Merci à tous,
Stéphane
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$ <RET> $left(1right)$ <RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
JJ. Rétorré <jj.r&torr&@gmail.com> writes:Stéphane Dutailly disait le 01/03/12 que :Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en to us cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de not es, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Phil ippe, si vous
passez par là ...
Merci à tous,
Stéphane
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$ <RET> $left(1right)$ <RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Le problème des expressions régulières c'est justement que lles sont
régulières, donc pas moyen de gérer l'imbriquations. Mais pour les cas
simples, je pense que c'est la meilleure méthode.
JJ. Rétorré <jj.r&torr&@gmail.com> writes:
Stéphane Dutailly <dutaillys@yahoo.fr> disait le 01/03/12 que :
Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en to us cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de not es, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Phil ippe, si vous
passez par là ...
Merci à tous,
Stéphane
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$ <RET> $\left(1\right)$ <RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Le problème des expressions régulières c'est justement que lles sont
régulières, donc pas moyen de gérer l'imbriquations. Mais pour les cas
simples, je pense que c'est la meilleure méthode.
JJ. Rétorré <jj.r&torr&@gmail.com> writes:Stéphane Dutailly disait le 01/03/12 que :Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en to us cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de not es, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Phil ippe, si vous
passez par là ...
Merci à tous,
Stéphane
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$ <RET> $left(1right)$ <RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Le problème des expressions régulières c'est justement que lles sont
régulières, donc pas moyen de gérer l'imbriquations. Mais pour les cas
simples, je pense que c'est la meilleure méthode.
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tous cas à
l'époque c'était du chinois pour moi (je n'ai pas pris de notes, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence?
Philippe, si vous passez par là...
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tous cas à
l'époque c'était du chinois pour moi (je n'ai pas pris de notes, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence?
Philippe, si vous passez par là...
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tous cas à
l'époque c'était du chinois pour moi (je n'ai pas pris de notes, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence?
Philippe, si vous passez par là...
Bonjour Daimrod,
Daimrod wrote:JJ. Rétorré <jj.r&torr&@gmail.com> writes:Stéphane Dutailly disait le 01/03/12 que :Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en t ous cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de no tes, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Phi lippe, si vous
passez par là ...
Merci à tous,
Stéphane
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$ <RET> $left(1right)$ <RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Le problème des expressions régulières c'est justement qu elles sont
régulières, donc pas moyen de gérer l'imbriquations. Mais pour les cas
simples, je pense que c'est la meilleure méthode.
Pas sûr de comprendre la signification exacte de "régulièr e". Mais l'on peut
très bien mettre des groupes dans des groupes, via les parenthè ses. Je n'ai
pas de "use case" précis sous la main, mais des choses du style
(abc|deb(.*)fin)
sont envisageables (je n'ai pas mis les escapes). Et l'on peut accéd er Ã
l'expression mère ou à l'expression fille (ici, ce qui serait a u milieu, entre
"deb" et "fin").
Sincèrment,
Seb
Bonjour Daimrod,
Daimrod wrote:
JJ. Rétorré <jj.r&torr&@gmail.com> writes:
Stéphane Dutailly <dutaillys@yahoo.fr> disait le 01/03/12 que :
Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en t ous cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de no tes, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Phi lippe, si vous
passez par là ...
Merci à tous,
Stéphane
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$ <RET> $\left(1\right)$ <RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Le problème des expressions régulières c'est justement qu elles sont
régulières, donc pas moyen de gérer l'imbriquations. Mais pour les cas
simples, je pense que c'est la meilleure méthode.
Pas sûr de comprendre la signification exacte de "régulièr e". Mais l'on peut
très bien mettre des groupes dans des groupes, via les parenthè ses. Je n'ai
pas de "use case" précis sous la main, mais des choses du style
(abc|deb(.*)fin)
sont envisageables (je n'ai pas mis les escapes). Et l'on peut accéd er Ã
l'expression mère ou à l'expression fille (ici, ce qui serait a u milieu, entre
"deb" et "fin").
Sincèrment,
Seb
Bonjour Daimrod,
Daimrod wrote:JJ. Rétorré <jj.r&torr&@gmail.com> writes:Stéphane Dutailly disait le 01/03/12 que :Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en t ous cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de no tes, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Phi lippe, si vous
passez par là ...
Merci à tous,
Stéphane
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$ <RET> $left(1right)$ <RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Le problème des expressions régulières c'est justement qu elles sont
régulières, donc pas moyen de gérer l'imbriquations. Mais pour les cas
simples, je pense que c'est la meilleure méthode.
Pas sûr de comprendre la signification exacte de "régulièr e". Mais l'on peut
très bien mettre des groupes dans des groupes, via les parenthè ses. Je n'ai
pas de "use case" précis sous la main, mais des choses du style
(abc|deb(.*)fin)
sont envisageables (je n'ai pas mis les escapes). Et l'on peut accéd er Ã
l'expression mère ou à l'expression fille (ici, ce qui serait a u milieu, entre
"deb" et "fin").
Sincèrment,
Seb
"Sebastien Vauban" writes:Daimrod wrote:JJ. Rétorré <jj.r&torr&@gmail.com> writes:Stéphane Dutailly disait le 01/03/12 que :Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tous cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de n otes, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Ph ilippe, si vous
passez par là ...
Merci à tous,
Stéphane
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$ <RET> $left(1right)$ <RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Le problème des expressions régulières c'est justement q uelles sont
régulières, donc pas moyen de gérer l'imbriquations. Mai s pour les cas
simples, je pense que c'est la meilleure méthode.
Pas sûr de comprendre la signification exacte de "réguliè re". Mais l'on peut
très bien mettre des groupes dans des groupes, via les parenthà ¨ses. Je n'ai
pas de "use case" précis sous la main, mais des choses du style
(abc|deb(.*)fin)
sont envisageables (je n'ai pas mis les escapes). Et l'on peut accé der Ã
l'expression mère ou à l'expression fille (ici, ce qui serait au milieu, entre
"deb" et "fin").
Je fais référence à la notion de grammaire et d'expression régulière
définie par la hiérarchie de Chomsky[1].
Les délimiteurs, comme les parenthèses, vont par pair, donc il faut les
manipuler ensemble. Mais une expression régulière ne permet pas de gérer
des délimiteurs lorsqu'ils sont imbriqués.
(1 (2 3 4 (5 6) 7 8) 9 10)
----------------------^ Si mon curseur se trouve ici je veux manipuler
^------------------------^ ces parenthèses, pas les autres.
On « sent » bien que pour atteindre le bon délimiteur gauc he il faut
mémoriser le nombre de délimiteur droit, et avoir le même nombre de
délimiteur gauche, plus un, qui serra le délimiteur cherchà ©. Bien
entendu, dans le cas où l'on rechercherait le délimiteur droit, on
inverserait les termes.
C'est cette notion de mémoire que ne permette pas les expressions ou
grammaire régulière. Pour cela, il faut utiliser un automate à pile.
[1]: https://secure.wikimedia.org/wikipedia/fr/wiki/Hiérarchie_de_C homsky
"Sebastien Vauban" <wxhgmqzgwmuf@spammotel.com> writes:
Daimrod wrote:
JJ. Rétorré <jj.r&torr&@gmail.com> writes:
Stéphane Dutailly <dutaillys@yahoo.fr> disait le 01/03/12 que :
Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tous cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de n otes, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Ph ilippe, si vous
passez par là ...
Merci à tous,
Stéphane
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$ <RET> $\left(1\right)$ <RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Le problème des expressions régulières c'est justement q uelles sont
régulières, donc pas moyen de gérer l'imbriquations. Mai s pour les cas
simples, je pense que c'est la meilleure méthode.
Pas sûr de comprendre la signification exacte de "réguliè re". Mais l'on peut
très bien mettre des groupes dans des groupes, via les parenthà ¨ses. Je n'ai
pas de "use case" précis sous la main, mais des choses du style
(abc|deb(.*)fin)
sont envisageables (je n'ai pas mis les escapes). Et l'on peut accé der Ã
l'expression mère ou à l'expression fille (ici, ce qui serait au milieu, entre
"deb" et "fin").
Je fais référence à la notion de grammaire et d'expression régulière
définie par la hiérarchie de Chomsky[1].
Les délimiteurs, comme les parenthèses, vont par pair, donc il faut les
manipuler ensemble. Mais une expression régulière ne permet pas de gérer
des délimiteurs lorsqu'ils sont imbriqués.
(1 (2 3 4 (5 6) 7 8) 9 10)
----------------------^ Si mon curseur se trouve ici je veux manipuler
^------------------------^ ces parenthèses, pas les autres.
On « sent » bien que pour atteindre le bon délimiteur gauc he il faut
mémoriser le nombre de délimiteur droit, et avoir le même nombre de
délimiteur gauche, plus un, qui serra le délimiteur cherchà ©. Bien
entendu, dans le cas où l'on rechercherait le délimiteur droit, on
inverserait les termes.
C'est cette notion de mémoire que ne permette pas les expressions ou
grammaire régulière. Pour cela, il faut utiliser un automate à pile.
[1]: https://secure.wikimedia.org/wikipedia/fr/wiki/Hiérarchie_de_C homsky
"Sebastien Vauban" writes:Daimrod wrote:JJ. Rétorré <jj.r&torr&@gmail.com> writes:Stéphane Dutailly disait le 01/03/12 que :Bonjour à tous,
J'explique un peu mon titre. Il me semble avoir vu un jour en
parcourant des fichiers de Philippe, une commande permettant de
changer $(blabla)$ en $left(blablaright)$ dans un fichier .tex.
Je ne sais pas si j'ai rêvé cela (je ne crois pas) mais en tous cas Ã
l'époque c'était du chinois pour moi (je n'ai pas pris de n otes, et
pas moyen de retrouver le fichier...) mais maintenant j'essaierais
bien.
Est-ce que quelqu'un voit à quoi je fais référence? Ph ilippe, si vous
passez par là ...
Merci à tous,
Stéphane
Un simple(?) query-replace-regexp peut le faire.
C-M-% $(([^$]*))$ <RET> $left(1right)$ <RET>
On peut toujours en faire une fonction interactive, ou plus simplement
une macro de clavier.
Le problème des expressions régulières c'est justement q uelles sont
régulières, donc pas moyen de gérer l'imbriquations. Mai s pour les cas
simples, je pense que c'est la meilleure méthode.
Pas sûr de comprendre la signification exacte de "réguliè re". Mais l'on peut
très bien mettre des groupes dans des groupes, via les parenthà ¨ses. Je n'ai
pas de "use case" précis sous la main, mais des choses du style
(abc|deb(.*)fin)
sont envisageables (je n'ai pas mis les escapes). Et l'on peut accé der Ã
l'expression mère ou à l'expression fille (ici, ce qui serait au milieu, entre
"deb" et "fin").
Je fais référence à la notion de grammaire et d'expression régulière
définie par la hiérarchie de Chomsky[1].
Les délimiteurs, comme les parenthèses, vont par pair, donc il faut les
manipuler ensemble. Mais une expression régulière ne permet pas de gérer
des délimiteurs lorsqu'ils sont imbriqués.
(1 (2 3 4 (5 6) 7 8) 9 10)
----------------------^ Si mon curseur se trouve ici je veux manipuler
^------------------------^ ces parenthèses, pas les autres.
On « sent » bien que pour atteindre le bon délimiteur gauc he il faut
mémoriser le nombre de délimiteur droit, et avoir le même nombre de
délimiteur gauche, plus un, qui serra le délimiteur cherchà ©. Bien
entendu, dans le cas où l'on rechercherait le délimiteur droit, on
inverserait les termes.
C'est cette notion de mémoire que ne permette pas les expressions ou
grammaire régulière. Pour cela, il faut utiliser un automate à pile.
[1]: https://secure.wikimedia.org/wikipedia/fr/wiki/Hiérarchie_de_C homsky