Mercurial > emacs
changeset 59362:07f5b835edb6
(Man-fontify-manpage): Turn off undo generation.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Tue, 04 Jan 2005 20:36:28 +0000 |
parents | b535efc2507d |
children | 9120644ff426 |
files | lisp/man.el |
diffstat | 1 files changed, 42 insertions(+), 40 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/man.el Tue Jan 04 20:34:21 2005 +0000 +++ b/lisp/man.el Tue Jan 04 20:36:28 2005 +0000 @@ -822,6 +822,7 @@ (goto-char (point-min)) ;; Fontify ANSI escapes. (let ((faces nil) + (buffer-undo-list t) (start (point))) ;; http://www.isthe.com/chongo/tech/comp/ansi_escapes.html ;; suggests many codes, but we only handle: @@ -853,46 +854,47 @@ (delete-region (match-beginning 0) (match-end 0)) (setq start (point)))) ;; Other highlighting. - (if (< (buffer-size) (position-bytes (point-max))) - ;; Multibyte characters exist. - (progn - (goto-char (point-min)) - (while (search-forward "__\b\b" nil t) - (backward-delete-char 4) - (put-text-property (point) (1+ (point)) 'face Man-underline-face)) - (goto-char (point-min)) - (while (search-forward "\b\b__" nil t) - (backward-delete-char 4) - (put-text-property (1- (point)) (point) 'face Man-underline-face)))) - (goto-char (point-min)) - (while (search-forward "_\b" nil t) - (backward-delete-char 2) - (put-text-property (point) (1+ (point)) 'face Man-underline-face)) - (goto-char (point-min)) - (while (search-forward "\b_" nil t) - (backward-delete-char 2) - (put-text-property (1- (point)) (point) 'face Man-underline-face)) - (goto-char (point-min)) - (while (re-search-forward "\\(.\\)\\(\b+\\1\\)+" nil t) - (replace-match "\\1") - (put-text-property (1- (point)) (point) 'face Man-overstrike-face)) - (goto-char (point-min)) - (while (re-search-forward "o\b\\+\\|\\+\bo" nil t) - (replace-match "o") - (put-text-property (1- (point)) (point) 'face 'bold)) - (goto-char (point-min)) - (while (re-search-forward "[-|]\\(\b[-|]\\)+" nil t) - (replace-match "+") - (put-text-property (1- (point)) (point) 'face 'bold)) - (goto-char (point-min)) - ;; Try to recognize common forms of cross references. - (Man-highlight-references) - (Man-softhyphen-to-minus) - (goto-char (point-min)) - (while (re-search-forward Man-heading-regexp nil t) - (put-text-property (match-beginning 0) - (match-end 0) - 'face Man-overstrike-face)) + (let ((buffer-undo-list t)) + (if (< (buffer-size) (position-bytes (point-max))) + ;; Multibyte characters exist. + (progn + (goto-char (point-min)) + (while (search-forward "__\b\b" nil t) + (backward-delete-char 4) + (put-text-property (point) (1+ (point)) 'face Man-underline-face)) + (goto-char (point-min)) + (while (search-forward "\b\b__" nil t) + (backward-delete-char 4) + (put-text-property (1- (point)) (point) 'face Man-underline-face)))) + (goto-char (point-min)) + (while (search-forward "_\b" nil t) + (backward-delete-char 2) + (put-text-property (point) (1+ (point)) 'face Man-underline-face)) + (goto-char (point-min)) + (while (search-forward "\b_" nil t) + (backward-delete-char 2) + (put-text-property (1- (point)) (point) 'face Man-underline-face)) + (goto-char (point-min)) + (while (re-search-forward "\\(.\\)\\(\b+\\1\\)+" nil t) + (replace-match "\\1") + (put-text-property (1- (point)) (point) 'face Man-overstrike-face)) + (goto-char (point-min)) + (while (re-search-forward "o\b\\+\\|\\+\bo" nil t) + (replace-match "o") + (put-text-property (1- (point)) (point) 'face 'bold)) + (goto-char (point-min)) + (while (re-search-forward "[-|]\\(\b[-|]\\)+" nil t) + (replace-match "+") + (put-text-property (1- (point)) (point) 'face 'bold)) + (goto-char (point-min)) + ;; Try to recognize common forms of cross references. + (Man-highlight-references) + (Man-softhyphen-to-minus) + (goto-char (point-min)) + (while (re-search-forward Man-heading-regexp nil t) + (put-text-property (match-beginning 0) + (match-end 0) + 'face Man-overstrike-face))) (message "%s man page formatted" Man-arguments)) (defun Man-highlight-references ()