# HG changeset patch # User Stefan Monnier # Date 1160716953 0 # Node ID 29547db9ad61dfb10440837fc6610bc3fd4d4807 # Parent 1a3368a808797225d93865f4cfaaa8dc80a715cf (vc-ignore-dir-regexp): Make it into a defcustom. (vc-find-root): Don't walk higher up than ~. diff -r 1a3368a80879 -r 29547db9ad61 lisp/ChangeLog --- a/lisp/ChangeLog Fri Oct 13 01:45:37 2006 +0000 +++ b/lisp/ChangeLog Fri Oct 13 05:22:33 2006 +0000 @@ -1,7 +1,12 @@ +2006-10-13 Stefan Monnier + + * vc-hooks.el (vc-ignore-dir-regexp): Make it into a defcustom. + (vc-find-root): Don't walk higher up than ~. + 2006-10-12 Chong Yidong - * international/utf-8.el (utf-translate-cjk-load-tables): Avoid - clobbering last-coding-system-used during load. + * international/utf-8.el (utf-translate-cjk-load-tables): + Avoid clobbering last-coding-system-used during load. 2006-10-12 Carsten Dominik @@ -13,364 +18,358 @@ * files.el (auto-mode-alist): Match change log file name also with a dash before a numeric extension. -2006-10-11 Stefan Monnier +2006-10-11 Ilya Zakharevich * progmodes/cperl-mode.el: Merge from upstream, upto version 5.22. After 5.0: - `cperl-add-tags-recurse-noxs-fullpath': new function (for -batch mode) - - After 5.1: - ;; Major edit. Summary of most visible changes: - - ;; a) Multiple < + (cperl-facemenu-add-face-function): Add docs, fix U<>. Copyright message updated. - `cperl-init-faces': Work around a bug in `font-lock'. May slow - facification down a bit. - Misprint for my|our|local for old `font-lock' - "our" was not fontified same as "my|local" - Highlight variables after "my" etc even in - a middle of an expression - Do not facify multiple variables after my etc - unless parentheses are present + (cperl-init-faces): Work around a bug in `font-lock'. May slow + facification down a bit. + Misprint for my|our|local for old `font-lock' + "our" was not fontified same as "my|local". + Highlight variables after "my" etc even in + a middle of an expression. + Do not facify multiple variables after my etc + unless parentheses are present. After 5.5, 5.6 - `cperl-fontify-syntaxically': after-change hook could reset - `cperl-syntax-done-to' to a middle of line; unwind to BOL. + (cperl-fontify-syntaxically): after-change hook could reset. + (cperl-syntax-done-to) to a middle of line; unwind to BOL. After 5.7: - `cperl-init-faces': Allow highlighting of local ($/) - `cperl-problems-old-emaxen': New variable (for the purpose of DOCSTRING). - `cperl-problems': Remove fixed problems. - `cperl-find-pods-heres': Recognize #-comments in m##x too - Recognize charclasses (unless delimiter is \). - `cperl-fontify-syntaxically': Unwinding to safe was done in wrong order - `cperl-regexp-scan': Update docs - `cperl-beautify-regexp-piece': use information got from regexp scan + (cperl-init-faces): Allow highlighting of local ($/). + (cperl-problems-old-emaxen): New variable (for the use of DOCSTRING). + (cperl-problems): Remove fixed problems. + (cperl-find-pods-heres): Recognize #-comments in m##x too. + Recognize charclasses (unless delimiter is \). + (cperl-fontify-syntaxically): Unwinding to safe was done in wrong order. + (cperl-regexp-scan): Update docs. + (cperl-beautify-regexp-piece): Use information got from regexp scan. After 5.8: Major user visible changes: Recognition and fontification of character classes in RExen. - Variable indentation of RExen according to groups - - `cperl-find-pods-heres': Recognize POSIX classes in REx charclasses - Fontify REx charclasses in variable-name face - Fontify POSIX charclasses in "type" face - Fontify unmatched "]" in function-name face - Mark first-char of HERE-doc as `front-sticky' - Reset `front-sticky' property when needed - `cperl-calculate-indent': Indents //x -RExen accordning to parens level - `cperl-to-comment-or-eol': Recognize ends of `syntax-type' constructs - `cperl-backward-to-noncomment': Recognize stringy `syntax-type' constructs - Support `narrow'ed buffers. - `cperl-praise': Remove a reservation - `cperl-make-indent': New function - `cperl-indent-for-comment': Use `cperl-make-indent' - `cperl-indent-line': Likewise - `cperl-lineup': Likewise - `cperl-beautify-regexp-piece': Likewise - `cperl-contract-level': Likewise - `cperl-toggle-set-debug-unwind': New function - New menu entry for this - `fill-paragraph-function': Use when `boundp' - `cperl-calculate-indent': Take into account groups when indenting RExen - `cperl-to-comment-or-eol': Recognize # which end a string - `cperl-modify-syntax-type': Make only syntax-table property non-sticky - `cperl-fill-paragraph': Return t: needed for `fill-paragraph-function' - `cperl-fontify-syntaxically': More clear debugging message - `cperl-pod2man-build-command': XEmacs portability: check `Man-filter-list' - `cperl-init-faces': More complicated highlight even on XEmacs (new) - Merge cosmetic changes from XEmacs + Variable indentation of RExen according to groups. + + (cperl-find-pods-heres): Recognize POSIX classes in REx charclasses. + Fontify REx charclasses in variable-name face. + Fontify POSIX charclasses in "type" face. + Fontify unmatched "]" in function-name face. + Mark first-char of HERE-doc as `front-sticky'. + Reset `front-sticky' property when needed. + (cperl-calculate-indent): Indents //x -RExen accordning to parens level. + (cperl-to-comment-or-eol): Recognize ends of `syntax-type' constructs. + (cperl-backward-to-noncomment): Recognize stringy `syntax-type' + constructs. Support `narrow'ed buffers. + (cperl-praise): Remove a reservation. + (cperl-make-indent): New function. + (cperl-indent-for-comment): Use `cperl-make-indent'. + (cperl-indent-line): Likewise. + (cperl-lineup): Likewise. + (cperl-beautify-regexp-piece): Likewise. + (cperl-contract-level): Likewise. + (cperl-toggle-set-debug-unwind): New function. + New menu entry for this. + (fill-paragraph-function): Use when `boundp'. + (cperl-calculate-indent): Take into account groups when indenting RExen. + (cperl-to-comment-or-eol): Recognize # which end a string. + (cperl-modify-syntax-type): Make only syntax-table property non-sticky. + (cperl-fill-paragraph): Return t: needed for `fill-paragraph-function'. + (cperl-fontify-syntaxically): More clear debugging message. + (cperl-pod2man-build-command): Check (XEmacs) `Man-filter-list'. + (cperl-init-faces): More complicated highlight even on XEmacs (new). + Merge cosmetic changes from XEmacs. After 5.9: - `cperl-1+': Moved to before the first use - `cperl-1-': Likewise + (cperl-1+): Move to before the first use. + (cperl-1-): Likewise. After 5.10: This code may lock Emacs hard!!! Use on your own risk! - `cperl-font-locking': New internal variable - `cperl-beginning-of-property': New function - `cperl-calculate-indent': Use `cperl-beginning-of-property' - instead of `previous-single-property-change' - `cperl-unwind-to-safe': Likewise - `cperl-after-expr-p': Likewise - `cperl-get-here-doc-region': Likewise - `cperl-font-lock-fontify-region-function': Likewise - `cperl-to-comment-or-eol': Do not call `cperl-update-syntaxification' - recursively - Bound `next-single-property-change' - via `point-max' - `cperl-unwind-to-safe': Bound likewise - `cperl-font-lock-fontify-region-function': Likewise - `cperl-find-pods-heres': Mark as recursive for `cperl-to-comment-or-eol' - Initialization of - `cperl-font-lock-multiline-start' could be missed if the "main" - fontification did not run due to the keyword being already fontified. - `cperl-pod-spell': Return t from do-one-chunk function - `cperl-map-pods-heres': Stop when the worker returns nil - Call `cperl-update-syntaxification' - `cperl-get-here-doc-region': Call `cperl-update-syntaxification' - `cperl-get-here-doc-delim': Remove unused function + (cperl-font-locking): New internal variable. + (cperl-beginning-of-property): New function. + (cperl-calculate-indent): Use `cperl-beginning-of-property' + instead of `previous-single-property-change'. + (cperl-unwind-to-safe): Likewise. + (cperl-after-expr-p): Likewise. + (cperl-get-here-doc-region): Likewise. + (cperl-font-lock-fontify-region-function): Likewise. + (cperl-to-comment-or-eol): Do not call `cperl-update-syntaxification' + recursively. + Bound `next-single-property-change' via `point-max'. + (cperl-unwind-to-safe): Bound likewise + (cperl-font-lock-fontify-region-function): Likewise + (cperl-find-pods-heres): Mark as recursive for `cperl-to-comment-or-eol' + Initialization of `cperl-font-lock-multiline-start' could be + missed if the "main" fontification did not run due to the + keyword being already fontified. + (cperl-pod-spell): Return t from do-one-chunk function. + (cperl-map-pods-heres): Stop when the worker returns nil. + Call `cperl-update-syntaxification'. + (cperl-get-here-doc-region): Call `cperl-update-syntaxification'. + (cperl-get-here-doc-delim): Remove unused function. After 5.11: - The possible lockup of Emacs (introduced in 5.10) fixed - - `cperl-unwind-to-safe': `cperl-beginning-of-property' won't return nil - `cperl-syntaxify-for-menu': New customization variable - `cperl-select-this-pod-or-here-doc': New function - `cperl-get-here-doc-region': Extra argument - Do not adjust pos by 1 - - New menu entries (Perl/Tools): selection of current POD or HERE-DOC section - (Debugging CPerl:) backtrace on fontification + The possible lockup of Emacs (introduced in 5.10) fixed. + + (cperl-unwind-to-safe): `cperl-beginning-of-property' won't return nil. + (cperl-syntaxify-for-menu): New customization variable. + (cperl-select-this-pod-or-here-doc): New function. + (cperl-get-here-doc-region): Extra argument. + Do not adjust pos by 1. + + New menu entries + (Perl/Tools): Selection of current POD or HERE-DOC section. + (Debugging CPerl:) backtrace on fontification. After 5.12: - `cperl-cached-syntax-table': use `car-safe' - `cperl-forward-re': Remove spurious argument SET-ST - Add documentation - `cperl-forward-group-in-re': New function - `cperl-find-pods-heres': Find and highlight (?{}) blocks in RExen - (XXXX Temporary (?) hack is to syntax-mark them as comment) + (cperl-cached-syntax-table): Use `car-safe'. + (cperl-forward-re): Remove spurious argument SET-ST. + Add documentation. + (cperl-forward-group-in-re): New function. + (cperl-find-pods-heres): Find and highlight (?{}) blocks in RExen + (XXXX Temporary (?) hack is to syntax-mark them as comment). After 5.13: - `cperl-string-syntax-table': Make { and } not-grouping + (cperl-string-syntax-table): Make { and } not-grouping (Sometimes they ARE grouping in RExen, but matching them would only confuse in many situations when they are not) - `beginning-of-buffer': Replaced two occurences with goto-char... - `cperl-calculate-indent': `char-after' could be nil... - `cperl-find-pods-heres': REx can start after "[" too - Hightlight (??{}) in RExen too - `cperl-maybe-white-and-comment-rex': New constant - `cperl-white-and-comment-rex': Likewise - XXXX Not very efficient, but hard to make - better while keeping 1 group + (beginning-of-buffer): Replace two occurences with goto-char... + (cperl-calculate-indent): `char-after' could be nil... + (cperl-find-pods-heres): REx can start after "[" too. + Hightlight (??{}) in RExen too. + (cperl-maybe-white-and-comment-rex): New constant + (cperl-white-and-comment-rex): Likewise. + XXXX Not very efficient, but hard to make + better while keeping 1 group. After 5.13: - `cperl-find-pods-heres': $foo << identifier() is not a HERE-DOC - Likewise for 1 << identifier + (cperl-find-pods-heres): $foo << identifier() is not a HERE-DOC. + Likewise for 1 << identifier. After 5.14: - `cperl-find-pods-heres': Different logic for $foo .= < @@ -379,7 +378,7 @@ * longlines.el (longlines-window-change-function): Likewise. * simple.el (undo-ask-before-discard): Likewise. * wid-edit.el (widget-field-prompt-internal) - (widget-documentation-link-p): Likewise + (widget-documentation-link-p): Likewise. 2006-10-10 Stefan Monnier @@ -4693,7 +4692,7 @@ compatibility function (Emacs 18/19). (idlwave-is-continuation-line): Always return point at start of previous non-blank continuation line. - `keyword-parameters': Fix continued comment font-lock matcher. + (keyword-parameters): Fix continued comment font-lock matcher. (idlwave-font-lock-fontify-region): Written, use as font-lock-fontify-region-function, to fix continued keyword fontification issues. @@ -4946,7 +4945,7 @@ (mac-TIFF-to-string): New functions. (x-get-selection, x-selection-value) (mac-select-convert-to-string): Use them. - (mac-text-encoding-mac-japanese-basic-variant): New constant. + (mac-text-encoding-mac-japanese-basic-variant): New constant. (mac-dnd-types-alist): New customization variable. (mac-dnd-handle-furl, mac-dnd-handle-hfs, mac-dnd-insert-utxt) (mac-dnd-insert-TEXT, mac-dnd-insert-TIFF, mac-dnd-drop-data) diff -r 1a3368a80879 -r 29547db9ad61 lisp/vc-hooks.el --- a/lisp/vc-hooks.el Fri Oct 13 01:45:37 2006 +0000 +++ b/lisp/vc-hooks.el Fri Oct 13 05:22:33 2006 +0000 @@ -52,11 +52,13 @@ (defvar vc-header-alist ()) (make-obsolete-variable 'vc-header-alist 'vc-BACKEND-header) -(defvar vc-ignore-dir-regexp "\\`\\([\\/][\\/]\\|/net/\\|/afs/\\)\\'" - "Regexp matching directory names that are not under VC's control. +(defcustom vc-ignore-dir-regexp "\\`\\([\\/][\\/]\\|/net/\\|/afs/\\)\\'" + "Regexp matching directory names that are not under VC's control. The default regexp prevents fruitless and time-consuming attempts to determine the VC status in directories in which filenames are -interpreted as hostnames.") +interpreted as hostnames." + :type 'regexp + :group 'vc) (defcustom vc-handled-backends '(RCS CVS SVN SCCS Arch MCVS) ;; Arch and MCVS come last because they are per-tree rather than per-dir. @@ -308,6 +310,9 @@ "Find the root of a checked out project. The function walks up the directory tree from FILE looking for WITNESS. If WITNESS if not found, return nil, otherwise return the root." + ;; Represent /home/luser/foo as ~/foo so that we don't try to look for + ;; witnesses in /home or in /. + (setq file (abbreviate-file-name file)) (let ((root nil)) (while (not (or root (equal file (setq file (file-name-directory file)))