diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2005-04-08 14:40:57 +0000 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2005-04-08 14:40:57 +0000 |
commit | c22c3db00e9345869817da8ebf441647c1ae35f3 (patch) | |
tree | e3545d646c88678761007bbf435759aaff26c352 /lisp | |
parent | ea81d57ec51f81205135e3ce340345a159f9269f (diff) | |
download | emacs-c22c3db00e9345869817da8ebf441647c1ae35f3.tar.gz |
(whitespace-highlight-the-space): Put the same overlay
in the buffer and in whitespace-highlighted-space.
(whitespace-unhighlight-the-space): Simplify.
(whitespace-buffer): Simplify.
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/ChangeLog | 49 | ||||
-rw-r--r-- | lisp/whitespace.el | 32 |
2 files changed, 39 insertions, 42 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 656c03c7d32..4d94a867bbb 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2005-04-08 Stefan Monnier <monnier@iro.umontreal.ca> + + * whitespace.el (whitespace-highlight-the-space): Put the same overlay + in the buffer and in whitespace-highlighted-space. + (whitespace-unhighlight-the-space): Simplify. + (whitespace-buffer): Simplify. + 2005-04-08 Dan Nicolaescu <dann@ics.uci.edu> * textmodes/table.el (table-cell-face): Add special case for @@ -7,35 +14,35 @@ (vhdl-speedbar-architecture-face) (vhdl-speedbar-instantiation-face) (vhdl-speedbar-architecture-selected-face) - (vhdl-speedbar-instantiation-selected-face): Likewise. - * progmodes/sh-script.el (sh-heredoc-face): Likewise. - * progmodes/idlw-help.el (idlwave-help-link-face): Likewise. + (vhdl-speedbar-instantiation-selected-face): Likewise. + * progmodes/sh-script.el (sh-heredoc-face): Likewise. + * progmodes/idlw-help.el (idlwave-help-link-face): Likewise. * progmodes/ebrowse.el (ebrowse-tree-mark-face) (ebrowse-root-class-face, ebrowse-member-attribute-face) - (ebrowse-progress-face): Likewise. - * progmodes/compile.el (compilation-info-face): Likewise. - * progmodes/cc-fonts.el (c-invalid-face): Likewise. - * emacs-lisp/re-builder.el (reb-match-3): Likewise. - * calendar/calendar.el (diary-face): Likewise. + (ebrowse-progress-face): Likewise. + * progmodes/compile.el (compilation-info-face): Likewise. + * progmodes/cc-fonts.el (c-invalid-face): Likewise. + * emacs-lisp/re-builder.el (reb-match-3): Likewise. + * calendar/calendar.el (diary-face): Likewise. * woman.el (woman-italic-face, woman-bold-face) - (woman-unknown-face): Likewise. - * wid-edit.el (widget-button-pressed-face): Likewise. - * whitespace.el (whitespace-highlight-face): Likewise. - * smerge-mode.el (smerge-mine-face, smerge-base-face): Likewise. - * pcvs-info.el (cvs-marked-face): Likewise. - * info.el (info-xref): Likewise. - * ido.el (ido-subdir-face, ido-indicator-face): Likewise. + (woman-unknown-face): Likewise. + * wid-edit.el (widget-button-pressed-face): Likewise. + * whitespace.el (whitespace-highlight-face): Likewise. + * smerge-mode.el (smerge-mine-face, smerge-base-face): Likewise. + * pcvs-info.el (cvs-marked-face): Likewise. + * info.el (info-xref): Likewise. + * ido.el (ido-subdir-face, ido-indicator-face): Likewise. * hilit-chg.el (highlight-changes-face) - (highlight-changes-delete-face): Likewise. + (highlight-changes-delete-face): Likewise. * hi-lock.el (hi-yellow, hi-green, hi-blue-b, hi-green-b) - (hi-red-b): Likewise. - * generic-x.el (show-tabs-tab-face, show-tabs-space-face): Likewise. + (hi-red-b): Likewise. + * generic-x.el (show-tabs-tab-face, show-tabs-space-face): Likewise. * font-lock.el (font-lock-keyword-face) - (font-lock-function-name-face, font-lock-warning-face): Likewise. + (font-lock-function-name-face, font-lock-warning-face): Likewise. * cus-edit.el (custom-invalid-face, custom-modified-face) (custom-set-face, custom-changed-face, custom-variable-tag-face) - (custom-group-tag-face-1, custom-group-tag-face): Likewise. - * comint.el (comint-highlight-prompt): Likewise. + (custom-group-tag-face-1, custom-group-tag-face): Likewise. + * comint.el (comint-highlight-prompt): Likewise. 2005-04-08 Lute Kamstra <lute@gnu.org> diff --git a/lisp/whitespace.el b/lisp/whitespace.el index 81a0aec9100..4406a0615ee 100644 --- a/lisp/whitespace.el +++ b/lisp/whitespace.el @@ -489,16 +489,14 @@ and: (if whitespace-spacetab "s") (if whitespace-trailing "t"))))) (whitespace-update-modeline whitespace-this-modeline) - (save-excursion - (get-buffer-create whitespace-errbuf) - (kill-buffer whitespace-errbuf) - (get-buffer-create whitespace-errbuf) - (set-buffer whitespace-errbuf) + (if (get-buffer whitespace-errbuf) + (kill-buffer whitespace-errbuf)) + (with-current-buffer (get-buffer-create whitespace-errbuf) (if whitespace-errmsg (progn (insert whitespace-errmsg) (if (not (or quiet whitespace-silent)) - (display-buffer whitespace-errbuf t)) + (display-buffer (current-buffer) t)) (if (not quiet) (message "Whitespaces: [%s%s] in %s" whitespace-this-modeline @@ -511,9 +509,7 @@ and: (if (and (not quiet) (not (equal whitespace-clean-msg ""))) (message "%s %s" whitespace-filename whitespace-clean-msg)))))))) - (if whitespace-error - t - nil))) + whitespace-error)) ;;;###autoload (defun whitespace-region (s e) @@ -736,23 +732,17 @@ Also with whitespaces whose testing has been turned off." (defun whitespace-highlight-the-space (b e) "Highlight the current line, unhighlighting a previously jumped to line." (if whitespace-display-spaces-in-color - (progn + (let ((ol (whitespace-make-overlay b e))) (whitespace-unhighlight-the-space) - (add-to-list 'whitespace-highlighted-space - (whitespace-make-overlay b e)) - (whitespace-overlay-put (whitespace-make-overlay b e) 'face - 'whitespace-highlight-face)))) + (push ol whitespace-highlighted-space) + (whitespace-overlay-put ol 'face 'whitespace-highlight-face)))) ;; (add-hook 'pre-command-hook 'whitespace-unhighlight-the-space)) (defun whitespace-unhighlight-the-space () "Unhighlight the currently highlight line." (if (and whitespace-display-spaces-in-color whitespace-highlighted-space) - (let ((whitespace-this-space nil)) - (while whitespace-highlighted-space - (setq whitespace-this-space (car whitespace-highlighted-space)) - (setq whitespace-highlighted-space - (cdr whitespace-highlighted-space)) - (whitespace-delete-overlay whitespace-this-space)) + (progn + (mapc 'whitespace-delete-overlay whitespace-highlighted-space) (setq whitespace-highlighted-space nil)) (remove-hook 'pre-command-hook 'whitespace-unhighlight-the-space))) @@ -863,5 +853,5 @@ This is meant to be added buffer-locally to `write-file-functions'." (provide 'whitespace) -;;; arch-tag: 4ff44e87-b63c-402d-95a6-15e51e58bd0c +;; arch-tag: 4ff44e87-b63c-402d-95a6-15e51e58bd0c ;;; whitespace.el ends here |