X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/143c797dc861f522b220ebb59466bb482f9107c5..510ef922707de6ef64235cf5cd7fdc546bd0b50a:/lisp/whitespace.el diff --git a/lisp/whitespace.el b/lisp/whitespace.el index 56d4e58f13..293416c8d1 100644 --- a/lisp/whitespace.el +++ b/lisp/whitespace.el @@ -6,7 +6,7 @@ ;; Author: Vinicius Jose Latorre ;; Maintainer: Vinicius Jose Latorre ;; Keywords: data, wp -;; Version: 11.2.1 +;; Version: 11.2.2 ;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre ;; This file is part of GNU Emacs. @@ -302,7 +302,7 @@ ;; turned on. ;; ;; `whitespace-action' Specify which action is taken when a -;; buffer is visited, killed or written. +;; buffer is visited or written. ;; ;; ;; Acknowledgements @@ -316,8 +316,8 @@ ;; `indent-tabs-mode' usage suggestion. ;; ;; Thanks to Eric Cooper for the suggestion to have hook -;; actions when buffer is written or killed as the original whitespace -;; package had. +;; actions when buffer is written as the original whitespace package +;; had. ;; ;; Thanks to nschum (EmacsWiki) for the idea about highlight "long" ;; lines tail. See EightyColumnRule (EmacsWiki). @@ -381,7 +381,7 @@ '(tabs spaces trailing lines space-before-tab newline indentation empty space-after-tab space-mark tab-mark newline-mark) - "*Specify which kind of blank is visualized. + "Specify which kind of blank is visualized. It's a list containing some or all of the following values: @@ -508,7 +508,7 @@ See also `whitespace-display-mappings' for documentation." (defcustom whitespace-space 'whitespace-space - "*Symbol face used to visualize SPACE. + "Symbol face used to visualize SPACE. Used when `whitespace-style' includes the value `spaces'." :type 'face @@ -526,7 +526,7 @@ Used when `whitespace-style' includes the value `spaces'." (defcustom whitespace-hspace 'whitespace-hspace - "*Symbol face used to visualize HARD SPACE. + "Symbol face used to visualize HARD SPACE. Used when `whitespace-style' includes the value `spaces'." :type 'face @@ -544,7 +544,7 @@ Used when `whitespace-style' includes the value `spaces'." (defcustom whitespace-tab 'whitespace-tab - "*Symbol face used to visualize TAB. + "Symbol face used to visualize TAB. Used when `whitespace-style' includes the value `tabs'." :type 'face @@ -562,7 +562,7 @@ Used when `whitespace-style' includes the value `tabs'." (defcustom whitespace-newline 'whitespace-newline - "*Symbol face used to visualize NEWLINE char mapping. + "Symbol face used to visualize NEWLINE char mapping. See `whitespace-display-mappings'. @@ -585,7 +585,7 @@ See `whitespace-display-mappings'." (defcustom whitespace-trailing 'whitespace-trailing - "*Symbol face used to visualize trailing blanks. + "Symbol face used to visualize trailing blanks. Used when `whitespace-style' includes the value `trailing'." :type 'face @@ -600,7 +600,7 @@ Used when `whitespace-style' includes the value `trailing'." (defcustom whitespace-line 'whitespace-line - "*Symbol face used to visualize \"long\" lines. + "Symbol face used to visualize \"long\" lines. See `whitespace-line-column'. @@ -619,7 +619,7 @@ See `whitespace-line-column'." (defcustom whitespace-space-before-tab 'whitespace-space-before-tab - "*Symbol face used to visualize SPACEs before TAB. + "Symbol face used to visualize SPACEs before TAB. Used when `whitespace-style' includes the value `space-before-tab'." :type 'face @@ -634,7 +634,7 @@ Used when `whitespace-style' includes the value `space-before-tab'." (defcustom whitespace-indentation 'whitespace-indentation - "*Symbol face used to visualize 8 or more SPACEs at beginning of line. + "Symbol face used to visualize 8 or more SPACEs at beginning of line. Used when `whitespace-style' includes the value `indentation'." :type 'face @@ -649,7 +649,7 @@ Used when `whitespace-style' includes the value `indentation'." (defcustom whitespace-empty 'whitespace-empty - "*Symbol face used to visualize empty lines at beginning and/or end of buffer. + "Symbol face used to visualize empty lines at beginning and/or end of buffer. Used when `whitespace-style' includes the value `empty'." :type 'face @@ -664,7 +664,7 @@ Used when `whitespace-style' includes the value `empty'." (defcustom whitespace-space-after-tab 'whitespace-space-after-tab - "*Symbol face used to visualize 8 or more SPACEs after TAB. + "Symbol face used to visualize 8 or more SPACEs after TAB. Used when `whitespace-style' includes the value `space-after-tab'." :type 'face @@ -680,7 +680,7 @@ Used when `whitespace-style' includes the value `space-after-tab'." (defcustom whitespace-hspace-regexp "\\(\\(\xA0\\|\x8A0\\|\x920\\|\xE20\\|\xF20\\)+\\)" - "*Specify HARD SPACE characters regexp. + "Specify HARD SPACE characters regexp. If you're using `mule' package, there may be other characters besides: @@ -708,7 +708,7 @@ Used when `whitespace-style' includes `spaces'." (defcustom whitespace-space-regexp "\\( +\\)" - "*Specify SPACE characters regexp. + "Specify SPACE characters regexp. If you're using `mule' package, there may be other characters besides \" \" that should be considered SPACE. @@ -730,7 +730,7 @@ Used when `whitespace-style' includes `spaces'." (defcustom whitespace-tab-regexp "\\(\t+\\)" - "*Specify TAB characters regexp. + "Specify TAB characters regexp. If you're using `mule' package, there may be other characters besides \"\\t\" that should be considered TAB. @@ -753,7 +753,7 @@ Used when `whitespace-style' includes `tabs'." (defcustom whitespace-trailing-regexp "\\(\\(\t\\| \\|\xA0\\|\x8A0\\|\x920\\|\xE20\\|\xF20\\)+\\)$" - "*Specify trailing characters regexp. + "Specify trailing characters regexp. If you're using `mule' package, there may be other characters besides: @@ -771,7 +771,7 @@ Used when `whitespace-style' includes `trailing'." (defcustom whitespace-space-before-tab-regexp "\\( +\\)\\(\t+\\)" - "*Specify SPACEs before TAB regexp. + "Specify SPACEs before TAB regexp. If you're using `mule' package, there may be other characters besides: @@ -789,7 +789,7 @@ Used when `whitespace-style' includes `space-before-tab', (defcustom whitespace-indentation-regexp '("^\t*\\(\\( \\{%d\\}\\)+\\)[^\n\t]" . "^ *\\(\t+\\)[^\n]") - "*Specify regexp for 8 or more SPACEs at beginning of line. + "Specify regexp for 8 or more SPACEs at beginning of line. It is a cons where the cons car is used for SPACEs visualization and the cons cdr is used for TABs visualization. @@ -809,7 +809,7 @@ Used when `whitespace-style' includes `indentation', (defcustom whitespace-empty-at-bob-regexp "\\`\\(\\([ \t]*\n\\)+\\)" - "*Specify regexp for empty lines at beginning of buffer. + "Specify regexp for empty lines at beginning of buffer. If you're using `mule' package, there may be other characters besides: @@ -824,7 +824,7 @@ Used when `whitespace-style' includes `empty'." (defcustom whitespace-empty-at-eob-regexp "^\\([ \t\n]+\\)\\'" - "*Specify regexp for empty lines at end of buffer. + "Specify regexp for empty lines at end of buffer. If you're using `mule' package, there may be other characters besides: @@ -841,7 +841,7 @@ Used when `whitespace-style' includes `empty'." (defcustom whitespace-space-after-tab-regexp '("\t+\\(\\( \\{%d\\}\\)+\\)" . "\\(\t+\\) +") - "*Specify regexp for 8 or more SPACEs after TAB. + "Specify regexp for 8 or more SPACEs after TAB. It is a cons where the cons car is used for SPACEs visualization and the cons cdr is used for TABs visualization. @@ -860,7 +860,7 @@ Used when `whitespace-style' includes `space-after-tab', (defcustom whitespace-line-column 80 - "*Specify column beyond which the line is highlighted. + "Specify column beyond which the line is highlighted. Used when `whitespace-style' includes `lines' or `lines-tail'." :type '(integer :tag "Line Length") @@ -891,7 +891,7 @@ Used when `whitespace-style' includes `lines' or `lines-tail'." ;; If this is a problem for you, please, comment the line below. (tab-mark ?\t [?\xBB ?\t] [?\\ ?\t]) ; tab - left quote mark ) - "*Specify an alist of mappings for displaying characters. + "Specify an alist of mappings for displaying characters. Each element has the following form: @@ -936,7 +936,7 @@ Used when `whitespace-style' includes `tab-mark', `space-mark' or (defcustom whitespace-global-modes t - "*Modes for which global `whitespace-mode' is automagically turned on. + "Modes for which global `whitespace-mode' is automagically turned on. Global `whitespace-mode' is controlled by the command `global-whitespace-mode'. @@ -967,7 +967,7 @@ C++ modes only." (defcustom whitespace-action nil - "*Specify which action is taken when a buffer is visited, killed or written. + "Specify which action is taken when a buffer is visited or written. It's a list containing some or all of the following values: @@ -982,14 +982,14 @@ It's a list containing some or all of the following values: when local whitespace is turned on. auto-cleanup cleanup any bogus whitespace when buffer is - written or killed. + written. See `whitespace-cleanup' and `whitespace-cleanup-region'. abort-on-bogus abort if there is any bogus whitespace and the - buffer is written or killed. + buffer is written. - warn-read-only give a warning if `cleanup' or `auto-cleanup' + warn-if-read-only give a warning if `cleanup' or `auto-cleanup' is included in `whitespace-action' and the buffer is read-only. @@ -1002,7 +1002,7 @@ Any other value is treated as nil." (const :tag "Report On Bogus" report-on-bogus) (const :tag "Auto Cleanup" auto-cleanup) (const :tag "Abort On Bogus" abort-on-bogus) - (const :tag "Warn Read-Only" warn-read-only)))) + (const :tag "Warn If Read-Only" warn-if-read-only)))) :group 'whitespace) @@ -1386,7 +1386,7 @@ See `whitespace-style' and `indent-tabs-mode' for documentation." It usually applies to the whole buffer, but in transient mark mode when the mark is active, it applies to the region. It also -applies to the region when it is not in transiente mark mode, the +applies to the region when it is not in transient mark mode, the mark is active and \\[universal-argument] was pressed just before calling `whitespace-cleanup' interactively. @@ -2083,7 +2083,7 @@ resultant list will be returned." (defun whitespace-turn-on () "Turn on whitespace visualization." ;; prepare local hooks - (whitespace-add-local-hook) + (add-hook 'write-file-functions 'whitespace-write-file-hook nil t) ;; create whitespace local buffer environment (set (make-local-variable 'whitespace-font-lock-mode) nil) (set (make-local-variable 'whitespace-font-lock) nil) @@ -2106,7 +2106,7 @@ resultant list will be returned." (defun whitespace-turn-off () "Turn off whitespace visualization." - (whitespace-remove-local-hook) + (remove-hook 'write-file-functions 'whitespace-write-file-hook t) (when whitespace-active-style (whitespace-color-off) (whitespace-display-char-off))) @@ -2379,50 +2379,21 @@ resultant list will be returned." (whitespace-report nil t)))) -(defun whitespace-add-local-hook () - "Add some whitespace hooks locally." - (add-hook 'write-file-functions 'whitespace-write-file-hook nil t) - (add-hook 'kill-buffer-hook 'whitespace-kill-buffer-hook nil t)) - - -(defun whitespace-remove-local-hook () - "Remove some whitespace hooks locally." - (remove-hook 'write-file-functions 'whitespace-write-file-hook t) - (remove-hook 'kill-buffer-hook 'whitespace-kill-buffer-hook t)) - - (defun whitespace-write-file-hook () "Action to be taken when buffer is written. It should be added buffer-locally to `write-file-functions'." - (when (whitespace-action) - (error "Abort write due to whitespace problems in %s" - (buffer-name))) - nil) ; continue hook processing - - -(defun whitespace-kill-buffer-hook () - "Action to be taken when buffer is killed. -It should be added buffer-locally to `kill-buffer-hook'." - (whitespace-action t) - nil) ; continue hook processing - - -(defun whitespace-action (&optional is-killing-buffer) - "Action to be taken when buffer is killed or written. -Return t when the action should be aborted." (cond ((memq 'auto-cleanup whitespace-action) - (unless is-killing-buffer - (whitespace-cleanup)) - nil) + (whitespace-cleanup)) ((memq 'abort-on-bogus whitespace-action) - (whitespace-report nil t)) - (t - nil))) + (when (whitespace-report nil t) + (error "Abort write due to whitespace problems in %s" + (buffer-name))))) + nil) ; continue hook processing (defun whitespace-warn-read-only (msg) "Warn if buffer is read-only." - (when (memq 'warn-read-only whitespace-action) + (when (memq 'warn-if-read-only whitespace-action) (message "Can't %s: %s is read-only" msg (buffer-name))))