Édition (passage en bas de casse) d'une région rectangulaire

14 réponses
Avatar
Denis Bitouzé
Bonjour,

une =E2me charitable pourrait-elle m'expliquer comment mettre en bas de
casse (C-x C-l) tout une r=E9gion /rectangulaire/=A0: je ne sais que copier,
couper et coller de telles r=E9gions.

Merci d'avance.
--=20
Denis

10 réponses

1 2
Avatar
Nicolas Richard
Bonjour Denis,

Denis Bitouzé writes:
une âme charitable pourrait-elle m'expliquer comment mettre en bas de
casse (C-x C-l) tout une région /rectangulaire/ : je ne sais que copier,
couper et coller de telles régions.



Une première tentative :

(defun yf/run-command-on-rectangular-region (command)
"Run command on rectangular region. Cross your fingers."
(save-excursion
(let ((lines (delete-extract-rectangle (region-beginning) (region-end))))
(goto-char (region-beginning))
(insert-rectangle
(with-temp-buffer
(insert (mapconcat #'identity lines "n"))
(set-mark (point-min))
(call-interactively command)
(split-string (buffer-string) "n"))))))

(defun yf/downcase-rectangle ()
"Downcase selected rectangle."
(interactive)
(yf/run-command-on-rectangular-region #'downcase-region))

puis M-x yf/downcase-rectangle...

Cela dit j'ai cru remarquer un comportement bizarre de la position de la
"marque" après un undo. Aussi, il serait sans doute mieux de faire une
fonction ou macro retournant une commande. Et puis plein de choses...
(le travail est réalisé dans un buffer sans mode, sans variables
locales, etc. bref c'est du n'importe quoi. Mais bon dans un premier
temps...)

--
Nico.
Avatar
Damien Wyart
* Denis Bitouzé in fr.comp.applications.emacs:
une âme charitable pourrait-elle m'expliquer comment mettre en bas de
casse (C-x C-l) tout une région /rectangulaire/ : je ne sais que
copier, couper et coller de telles régions.



Il y a deux pistes données ici
(http://stackoverflow.com/questions/6154545/emacs-change-case-of-a-rectangle) :

- avec CUA mode
- avec une fonction (sans doute plus simple que celle de Nicolas).

--
DW
Avatar
pablodechant
Le vendredi 29 Novembre 2013 à 16:34 par Denis Bitouzé :
Bonjour,

une âme charitable pourrait-elle m'expliquer comment mettre en bas de
casse (C-x C-l) tout une région /rectangulaire/ : je ne sais que copier,
couper et coller de telles régions.

Merci d'avance.
--
Denis


Bonjour
Vous avez besoin d'un financement pour votre maison, pour vos affaires, pour
achat de voiture, pour l'achat de moto, pour la création de vos propres
entreprise, pour vos besoins personnels plus de doute.Nous octroyons des
crédits personnels allant de 2000 jusqu'à 800.000€ avec un taux d'intérêt
nominal de 2% quel que soit le montant. Veuillez nous préciser dans vos
demandes de prêt le montant exact que vous souhaiteriez et la date.
Veuillez nous écrire pour vos prêts personnels :
Sigma Crédit à vos services 24/24 Heures
P.S: je ne prête qu'aux personnes successibles de me rembourser.
Avatar
pablodechant
Le vendredi 29 Novembre 2013 à 16:34 par Denis Bitouzé :
Bonjour,

une âme charitable pourrait-elle m'expliquer comment mettre en bas de
casse (C-x C-l) tout une région /rectangulaire/ : je ne sais que copier,
couper et coller de telles régions.

Merci d'avance.
--
Denis


Bonjour
Vous avez besoin d'un financement pour votre maison, pour vos affaires, pour
achat de voiture, pour l'achat de moto, pour la création de vos propres
entreprise, pour vos besoins personnels plus de doute.Nous octroyons des
crédits personnels allant de 2000 jusqu'à 800.000€ avec un taux d'intérêt
nominal de 2% quel que soit le montant. Veuillez nous préciser dans vos
demandes de prêt le montant exact que vous souhaiteriez et la date.
Veuillez nous écrire pour vos prêts personnels :
Sigma Crédit à vos services 24/24 Heures
P.S: je ne prête qu'aux personnes successibles de me rembourser.
Avatar
pablodechant
Le vendredi 29 Novembre 2013 à 16:34 par Denis Bitouzé :
Bonjour,

une âme charitable pourrait-elle m'expliquer comment mettre en bas de
casse (C-x C-l) tout une région /rectangulaire/ : je ne sais que copier,
couper et coller de telles régions.

Merci d'avance.
--
Denis


Bonjour
Vous avez besoin d'un financement pour votre maison, pour vos affaires, pour
achat de voiture, pour l'achat de moto, pour la création de vos propres
entreprise, pour vos besoins personnels plus de doute.Nous octroyons des
crédits personnels allant de 2000 jusqu'à 800.000€ avec un taux d'intérêt
nominal de 2% quel que soit le montant. Veuillez nous préciser dans vos
demandes de prêt le montant exact que vous souhaiteriez et la date.
Veuillez nous écrire pour vos prêts personnels :
Sigma Crédit à vos services 24/24 Heures
P.S: je ne prête qu'aux personnes successibles de me rembourser.
Avatar
pablodechant
Le vendredi 29 Novembre 2013 à 16:34 par Denis Bitouzé :
Bonjour,

une âme charitable pourrait-elle m'expliquer comment mettre en bas de
casse (C-x C-l) tout une région /rectangulaire/ : je ne sais que copier,
couper et coller de telles régions.

Merci d'avance.
--
Denis


Bonjour
Vous avez besoin d'un financement pour votre maison, pour vos affaires, pour
achat de voiture, pour l'achat de moto, pour la création de vos propres
entreprise, pour vos besoins personnels plus de doute.Nous octroyons des
crédits personnels allant de 2000 jusqu'à 800.000€ avec un taux d'intérêt
nominal de 2% quel que soit le montant. Veuillez nous préciser dans vos
demandes de prêt le montant exact que vous souhaiteriez et la date.
Veuillez nous écrire pour vos prêts personnels :
Sigma Crédit à vos services 24/24 Heures
P.S: je ne prête qu'aux personnes successibles de me rembourser.
Avatar
pablodechant
Le vendredi 29 Novembre 2013 à 16:34 par Denis Bitouzé :
Bonjour,

une âme charitable pourrait-elle m'expliquer comment mettre en bas de
casse (C-x C-l) tout une région /rectangulaire/ : je ne sais que copier,
couper et coller de telles régions.

Merci d'avance.
--
Denis


Bonjour
Vous avez besoin d'un financement pour votre maison, pour vos affaires, pour
achat de voiture, pour l'achat de moto, pour la création de vos propres
entreprise, pour vos besoins personnels plus de doute.Nous octroyons des
crédits personnels allant de 2000 jusqu'à 800.000€ avec un taux d'intérêt
nominal de 2% quel que soit le montant. Veuillez nous préciser dans vos
demandes de prêt le montant exact que vous souhaiteriez et la date.
Veuillez nous écrire pour vos prêts personnels :
Sigma Crédit à vos services 24/24 Heures
P.S: je ne prête qu'aux personnes successibles de me rembourser.
Avatar
jack-mac
Le vendredi 29 novembre 2013 16:34:30 UTC+1, Denis Bitouzé a écrit :
Bonjour,

une âme charitable pourrait-elle m'expliquer comment mettre en bas de
casse (C-x C-l) tout une région /rectangulaire/ : je ne sais que copi er,
couper et coller de telles régions.



Bonjour.

Tu peux t'en tirer avec ça!
Par exemple en faisant une simple macro.
Tu sélectionnes le rectangle.
Si le point est supérieur à la marque, tu échanges: C-x C-x
Tu killes le rectangle: C-x r k
Tu ouvres un buffer vierge: C-x b tmp RET
Tu copies le rectangle: C-x r y
Tu sélectionnes tout: C-x h
Tu mets tout en minuscules: C-x C-l
Si besoin, tu sélectionnes tout: C-x h
Tu killes le rectangle: C-x r k
Tu killes le buffer temporaire: C-x k RET
(ce qui te ramnène au buffer de départ (sinon tu reviens au buffer pr écédent: C-x b RET))
Tu colles le rectangle (minusculisé): C-x r y

Et voilà! Le tour est joué!

Après, tu fais: M-x edit-last-kbd-macro RET
pour avoir la trame de ta fonctionÂ…

(notamment pour régler la comparaison entre (point) et 'from')
Avatar
Denis Bitouzé
Le vendredi 29/11/13 à 16h34,
Denis Bitouzé a écrit :

une âme charitable pourrait-elle m'expliquer comment mettre en bas de
casse (C-x C-l) tout une région /rectangulaire/ : je ne sais que
copier, couper et coller de telles régions.



Merci pour vos suggestions.

À dire vrai, je ne m'attendais pas à ce que ce soit si compliqué et je
regrette qu'Emacs ne fournisse pas nativement de possibilités d'édition
sur des régions, notamment rectangulaires : on pourrait imaginer
vouloir, comme dans ce post, changer la casse, mais aussi par exemple
« rechercher-remplacer ».

En ce qui concerne plus particulièrement les régions rectangulaires, il
pourrait aussi être pratique qu'elles puissent être matérialisées...
--
Denis
Avatar
Damien Wyart
* Denis Bitouzé in fr.comp.applications.emacs:
À dire vrai, je ne m'attendais pas à ce que ce soit si compliqué et je
regrette qu'Emacs ne fournisse pas nativement de possibilités
d'édition sur des régions, notamment rectangulaires : on pourrait
imaginer vouloir, comme dans ce post, changer la casse, mais aussi par
exemple « rechercher-remplacer ».



Pour replacer, c'est également possible en mode CUA (et si on ne veut
pas des combinaisons de base de CUA, on peut très bien mettre
cua-enable-cua-keys à nil).

En ce qui concerne plus particulièrement les régions rectangulaires,
il pourrait aussi être pratique qu'elles puissent être
matérialisées...



Là aussi, le mode CUA le permet.

--
DW
1 2