>>>>> Sivaram Neelakantan wrote: > The key C-c C-e currently elides a region of text and produces the > following
> [...] > Can it have some customised options to show the number of lines of > text elided and also some text that the user can add? Something like > [snipped 5 lines] > [5 lines of irrelevant text snipped] Is the attached patch your taste? This produces [snipped 5 lines]: (setq message-elide-ellipsis "\n[snipped %l lines]\n\n") > Ideally, [...] or [snipped x lines] can be made default with the > option of the user being able to change the text. I sometimes use `C-c C-e' to delete not only cited text but also lines I wrote, so I think making it the default is not a good idea. --8<---------------cut here---------------start------------->8--- --- message.el~ 2008-12-23 22:17:54 +0000 +++ message.el 2008-12-25 06:06:12 +0000 @@ -428,7 +428,9 @@ :group 'message-various) (defcustom message-elide-ellipsis "\n[...]\n\n" - "*The string which is inserted for elided text." + "*The string which is inserted for elided text. +%c, %l and %w will be substituted with the elided number of characters, +lines and words respectively. Use %% for a single %." :type 'string :link '(custom-manual "(message)Various Commands") :group 'message-various) @@ -3419,8 +3421,24 @@ An ellipsis (from `message-elide-ellipsis') will be inserted where the text was killed." (interactive "r") - (kill-region b e) - (insert message-elide-ellipsis)) + (let ((c (abs (- e b))) + (l (count-lines b e)) + (w (length (split-string (buffer-substring b e))))) + (kill-region b e) + (save-restriction + (narrow-to-region b b) + (insert message-elide-ellipsis) + (goto-char (point-min)) + (while (re-search-forward "%[clw%]" nil t) + (replace-match (cond ((eq (char-before) ?c) + (number-to-string c)) + ((eq (char-before) ?l) + (number-to-string l)) + ((eq (char-before) ?w) + (number-to-string w)) + ((eq (char-before) ?%) + "%")))) + (goto-char (point-max))))) (defvar message-caesar-translation-table nil) --8<---------------cut here---------------end--------------->8--- _______________________________________________ info-gnus-english mailing list [email protected] http://lists.gnu.org/mailman/listinfo/info-gnus-english
