mode bash bath

Le
Denis Bitouzé
Bonjour,

connaissez-vous un mode plus pratique que celui par défaut sous
emacs pour éditer des scripts bash ? Par exemple, un qui permette
de commenter d'un seul coup plusieurs lignes consécutives ?

Merci d'avance.
--
Denis
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Remi Vanicat
Le #21795661
Denis Bitouzé
Bonjour,

connaissez-vous un mode plus pratique que celui par défaut sous
emacs pour éditer des scripts bash ? Par exemple, un qui permette
de commenter d'un seul coup plusieurs lignes consécutives ?



M-x comment-region marche dans tous les modes que je connaisse. Quel
est le problème exactement ?

--
Rémi Vanicat
Benoit Izac
Le #21795651
Bonjour,

le 31/08/2006 à 18:33, Denis Bitouzé a écrit dans le message

connaissez-vous un mode plus pratique que celui par défaut sous
emacs pour éditer des scripts bash ? Par exemple, un qui permette
de commenter d'un seul coup plusieurs lignes consécutives ?



Presque tous les modes le permettent ; regarde la commande
« comment-region ».

- On marque le début : C-SPC
- On va à la fin
- M-x comment-region

Mais il est vrai que ça fait trois coups...

--
Benoit Izac
Denis Bitouzé
Le #21795631
Le 31 aoû 2006 à 19h31
Remi Vanicat a écrit :

M-x comment-region marche dans tous les modes que je connaisse.



Ah, je ne connaissais pas, merci.

Quel
est le problème exactement ?



Avoir un raccourci simple, efficace... et répertorié quelque
part dans un menu, histoire qu'on en ait connaissance. Par exemple,
avec AUCTeX, pour éditer des fichiers sources (La)TeX donc, le
raccourci est C-c ; (ou C-c : d'ailleurs et j'ai vu passer un fil au
sujet de cette nouvelle possibilité qui est énervante car ça
ne fait pas toujours ce qu'on veut scrogneuneu, bon 'faudra que le
relise mais maintenant il faut que je termine cette phrase
interminable ouf ça y est c'est fait).

Merci.
--
Denis
Denis Bitouzé
Le #21795621
Le 31 aoû 2006 à 20h08
Benoit Izac a écrit :

Presque tous les modes le permettent ; regarde la commande
« comment-region ».

- On marque le début : C-SPC
- On va à la fin
- M-x comment-region

Mais il est vrai que ça fait trois coups...



OK, merci mais en fait ça fait beaucoup plus de 3 coups car pour
obtenir « comment-region », même avec la complétion à
coup de TAB, c'est quand même long (certes, seulement
à la première utilisation de la session, après on peut le
rappeler avec la flèche).
--
Denis
Ph. Ivaldi
Le #21795611
Le 31 août 2006 à 18h33:07,
Denis Bitouzé
Bonjour,

connaissez-vous un mode plus pratique que celui par défaut sous
emacs pour éditer des scripts bash ? Par exemple, un qui permette
de commenter d'un seul coup plusieurs lignes consécutives ?



Cela fait longtemps que sélectionner une ligne pour la commenter me
fatigue ; ta question m'a fait prendre le taureau par les cornes.
En m'inspirant de:
Message-ID: je propose:

(defun my-?comment-region ()
(save-excursion
(let ((r-b (region-beginning))
(r-e (region-end)))
(funcall
(if (progn
(goto-char r-b)
(beginning-of-line)
(looking-at (format "\s-*%s" (regexp-quote comment-start))))
(function uncomment-region)
(function comment-region))
r-b r-e))))

(defun my-?comment ()
(interactive)
(save-excursion
(if mark-active
(my-?comment-region)
(funcall
(if (progn
(beginning-of-line)
(looking-at (format "\s-*%s" (regexp-quote comment-start))))
(function uncomment-region)
(function comment-region))
(progn (beginning-of-line) (point))
(progn (end-of-line) (point))))))

(global-set-key [(control %)] 'my-?comment)
;; Gardons l'originale sous la main:
(global-set-key (kbd "C-ù") 'comment-region)

Le curseur sur une ligne non commentée, C-% la commente et si elle est
déjà proprement commentée C-% la décommente.
Le fonctionnement est identique pour une région.
Voilà, c'est marrant.
Il ne reste plus qu'à lui faire subir l'épreuve de l'usage.


Merci d'avance.



Merci à Pascal Bourguignon.
--
Philippe Ivaldi.
Denis Bitouzé
Le #21795601
Le 01 sep 2006 à 01h39
Ph. Ivaldi a écrit :

(global-set-key (kbd "C-ù") 'comment-region)



Bouhouhou :

An error has occurred while loading `/home/bitouze/.emacs':

error: "C- must prefix a single character, not 216371"

Le curseur sur une ligne non commentée, C-% la commente et si elle
est déjà proprement commentée C-% la décommente.



Bouhouhou (bis repetita) : C-% ne fait rien chez moi...

Merci !
--
Denis
Ph. Ivaldi
Le #21795591
Le 01 septembre 2006 à 07h32:14,
Denis Bitouzé
Le 01 sep 2006 à 01h39
Ph. Ivaldi a écrit :

(global-set-key (kbd "C-ù") 'comment-region)



Bouhouhou :

An error has occurred while loading `/home/bitouze/.emacs':



Chez moi (M-x emacs-version <RET>
GNU Emacs 22.0.50.1 (i386-pc-linux-gnu, X toolkit, Xaw3d scroll bars) of
2006-08-11 on pacem, modified by Debian) il n'y a aucun problème.
mais je veux bien croire qu'avec une version ancienne cela pose
problème.


error: "C- must prefix a single character, not 216371"

Le curseur sur une ligne non commentée, C-% la commente et si elle
est déjà proprement commentée C-% la décommente.



Bouhouhou (bis repetita) : C-% ne fait rien chez moi...



Là, même avec un vieux Emacs, je ne comprends pas pourquoi cela ne
marche pas.
Même pas un petit message d'erreur ?


Merci !



Désolé de ne pas vous être d'un plus grand secours mais personnellement
je suis ravi de ce bout de code.
--
Philippe Ivaldi.
Jack.R
Le #21795581
On Thu, 31 Aug 2006 23:32:02 +0200, Denis Bitouzé wrote:

Le 31 aoû 2006 à 20h08
Benoit Izac a écrit :

Presque tous les modes le permettent ; regarde la commande
« comment-region ».

- On marque le début : C-SPC
- On va à la fin
- M-x comment-region

Mais il est vrai que ça fait trois coups...



OK, merci mais en fait ça fait beaucoup plus de 3 coups car pour
obtenir « comment-region », même avec la complétion à
coup de TAB, c'est quand même long (certes, seulement
à la première utilisation de la session, après on peut le
rappeler avec la flèche).



Chez moi M-; fait un comment-region, donc :
- On marque le début : C-SPC
- On va à la fin
- M-;

Je viens de jeter un oeil à mon .emacs et je ne vois rien qui s'y
rapport, ce devrait donc être un raccourci standard.

Aussi bien sur GNU Emacs 22.0.50.1 que sur GNU Emacs 21.4.1 (Debian
testing)

Jack.R
Romain Francoise
Le #21795571
"Jack.R"
Chez moi M-; fait un comment-region, donc :
- On marque le début : C-SPC
- On va à la fin
- M-;

Je viens de jeter un oeil à mon .emacs et je ne vois rien qui s'y
rapport, ce devrait donc être un raccourci standard.



Il faut que transient-mark-mode soit activé (ce qu'on peut faire
temporairement en faisant C-SPC deux fois, le cas échéant).

--
Romain Francoise it's a miracle -- http://orebokech.com/ | sea! The blue, the fresh, the
| ever free! --Bryan W. Procter
Ph. Ivaldi
Le #21759071
Le 07 septembre 2006 à 17h32:35,
"Florent Georges"
Ph. Ivaldi wrote:

(global-set-key [(control %)] 'my-?comment)



Pourquoi pas plutot :

(global-set-key (kbd "C-%") 'my-?comment)



Oui, il parait que c'est mieux; j'avais gardé un vieux code qui traînait.


Je deconseille egalement fortement l'utilisation du prefixe "my-".



Ha, pourquoi ?
Que préconisez vous ?

Je suppose qu'il s'agit juste d'un exemple.



Heu... non, c'est dans ma configuration :-(


;; Gardons l'originale sous la main:
(global-set-key (kbd "C-ù") 'comment-region)



Personnellement, je la renderais accessible par C-u C-% plutot que
d'utiliser un binding supplementaire.



Entre temps j'ai remarquer que M-; est déjà bindé sur comment-region.

Le code que j'ai fourni semble ne pas fonctionner chez tout le monde.
Afin de progresser en Elisp, et si vous avez un moment, j'aimerai savoir
ce que vous en pensez.
En tout cas, merci d'avoir pris le temps de répondre.
--
Philippe Ivaldi.
http://home.tele2.fr/phivaldi/index.html
Publicité
Poster une réponse
Anonyme