Couper des portions de texte dans Emacs : snip-it!

Quelques lignes de code pour avoir une fonction de "coupe" dans Emacs. C'est surtout utile pour enlever des portions de texte dans les emails en précisant le nombre de lignes supprimées et d'y assigner un titre ou un commentaire. Après ajout dans ~/.emacs et évaluation, il suffit pour l'utiliser de sélectionner la partie de texte souhaitée et d'entrer la commande M-x snip-it ; on ajoute ensuite un commentaire ou un titre dans le mini-buffer suivi d'un RET pour valider.

;; a little thing for "sniping" (cuting out) some text and replacing it
;; by [snip: irrelevant chatter (15 lines)] (usefull for newsgroup)
(defun snip-it (b e summ)
  "remove selected lines, and replace it with [snip:summary (n lines)]"
  (interactive "r\\nsSummary:")
  (let ((n (count-lines b e)))
    (delete-region b e)
    (insert (format "[snip%s (%d line%s)]"
              (if (= 0 (length summ)) "" (concat ": " summ))
              n
              (if (= 1 n) "" "s")))))
Vus : 697
Publié par Porneia delights : 16