Commit ff06de4f authored by Kenichi Handa's avatar Kenichi Handa
Browse files

merge emacs-23

parents 5886ec9c 397ae226
......@@ -2325,6 +2325,12 @@
* display.texi (Images): Delete redundant @findex.
2007-08-16 Stefan Monnier <monnier@iro.umontreal.ca>
* text.texi (Change Hooks): (after|before)-change-functions are no
longer bound to nil while running; rather inhibit-modification-hooks
is t.
2007-08-16 Richard Stallman <rms@gnu.org>
* processes.texi (Asynchronous Processes): Clarify
......
2010-10-03 Chong Yidong <cyd@stupidchicken.com>
* minibuffer.el (completion--some, completion--do-completion)
(minibuffer-complete-and-exit, minibuffer-completion-help)
(completion-basic-try-completion)
(completion-basic-all-completions)
(completion-pcm--find-all-completions): Use lexical-let to
avoid some false matches in variable completion (Bug#7056)
2010-10-03 Olof Ohlsson Sax <olof.ohlsson.sax@gmail.com> (tiny change)
* vc-svn.el (vc-svn-merge-news): Use --non-interactive. (Bug#7152)
2010-10-03 Leo <sdl.web@gmail.com>
* dnd.el (dnd-get-local-file-name): If MUST-EXIST is non-nil, only
return non-nil if the file exists (Bug#7090).
2010-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
* minibuffer.el (completion--replace):
......
......@@ -154,10 +154,11 @@ Return nil if URI is not a local file."
(let* ((decoded-f (decode-coding-string
f
(or file-name-coding-system
default-file-name-coding-system)))
(try-f (if (file-readable-p decoded-f) decoded-f f)))
(when (file-readable-p try-f) try-f)))))
default-file-name-coding-system))))
(setq f (cond ((file-readable-p decoded-f) decoded-f)
((file-readable-p f) f)
(t nil)))))
f))
(defun dnd-open-local-file (uri action)
"Open a local file.
......
......@@ -129,8 +129,8 @@ the closest directory separators."
"Apply FUN to each element of XS in turn.
Return the first non-nil returned value.
Like CL's `some'."
(let ((firsterror nil)
res)
(lexical-let ((firsterror nil)
res)
(while (and (not res) xs)
(condition-case err
(setq res (funcall fun (pop xs)))
......@@ -518,15 +518,16 @@ E = after completion we now have an Exact match.
101 5 ??? impossible
110 6 some completion happened
111 7 completed to an exact completion"
(let* ((beg (field-beginning))
(end (field-end))
(string (buffer-substring beg end))
(comp (funcall (or try-completion-function
'completion-try-completion)
string
minibuffer-completion-table
minibuffer-completion-predicate
(- (point) beg))))
(lexical-let*
((beg (field-beginning))
(end (field-end))
(string (buffer-substring beg end))
(comp (funcall (or try-completion-function
'completion-try-completion)
string
minibuffer-completion-table
minibuffer-completion-predicate
(- (point) beg))))
(cond
((null comp)
(minibuffer-hide-completions)
......@@ -539,14 +540,15 @@ E = after completion we now have an Exact match.
;; `completed' should be t if some completion was done, which doesn't
;; include simply changing the case of the entered string. However,
;; for appearance, the string is rewritten if the case changes.
(let* ((comp-pos (cdr comp))
(completion (car comp))
(completed (not (eq t (compare-strings completion nil nil
string nil nil t))))
(unchanged (eq t (compare-strings completion nil nil
string nil nil nil))))
(lexical-let*
((comp-pos (cdr comp))
(completion (car comp))
(completed (not (eq t (compare-strings completion nil nil
string nil nil t))))
(unchanged (eq t (compare-strings completion nil nil
string nil nil nil))))
(if unchanged
(goto-char end)
(goto-char end)
;; Insert in minibuffer the chars we got.
(completion--replace beg end completion))
;; Move point to its completion-mandated destination.
......@@ -693,8 +695,8 @@ If `minibuffer-completion-confirm' is `confirm-after-completion',
`minibuffer-confirm-exit-commands', and accept the input
otherwise."
(interactive)
(let ((beg (field-beginning))
(end (field-end)))
(lexical-let ((beg (field-beginning))
(end (field-end)))
(cond
;; Allow user to specify null string
((= beg end) (exit-minibuffer))
......@@ -1071,13 +1073,13 @@ variables.")
"Display a list of possible completions of the current minibuffer contents."
(interactive)
(message "Making completion list...")
(let* ((start (field-beginning))
(string (field-string))
(completions (completion-all-completions
string
minibuffer-completion-table
minibuffer-completion-predicate
(- (point) (field-beginning)))))
(lexical-let* ((start (field-beginning))
(string (field-string))
(completions (completion-all-completions
string
minibuffer-completion-table
minibuffer-completion-predicate
(- (point) (field-beginning)))))
(message nil)
(if (and completions
(or (consp (cdr completions))
......@@ -1707,9 +1709,10 @@ Return the new suffix."
suffix))
(defun completion-basic-try-completion (string table pred point)
(let* ((beforepoint (substring string 0 point))
(afterpoint (substring string point))
(bounds (completion-boundaries beforepoint table pred afterpoint)))
(lexical-let*
((beforepoint (substring string 0 point))
(afterpoint (substring string point))
(bounds (completion-boundaries beforepoint table pred afterpoint)))
(if (zerop (cdr bounds))
;; `try-completion' may return a subtly different result
;; than `all+merge', so try to use it whenever possible.
......@@ -1720,28 +1723,30 @@ Return the new suffix."
(concat completion
(completion--merge-suffix completion point afterpoint))
(length completion))))
(let* ((suffix (substring afterpoint (cdr bounds)))
(prefix (substring beforepoint 0 (car bounds)))
(pattern (delete
"" (list (substring beforepoint (car bounds))
'point
(substring afterpoint 0 (cdr bounds)))))
(all (completion-pcm--all-completions prefix pattern table pred)))
(lexical-let*
((suffix (substring afterpoint (cdr bounds)))
(prefix (substring beforepoint 0 (car bounds)))
(pattern (delete
"" (list (substring beforepoint (car bounds))
'point
(substring afterpoint 0 (cdr bounds)))))
(all (completion-pcm--all-completions prefix pattern table pred)))
(if minibuffer-completing-file-name
(setq all (completion-pcm--filename-try-filter all)))
(completion-pcm--merge-try pattern all prefix suffix)))))
(defun completion-basic-all-completions (string table pred point)
(let* ((beforepoint (substring string 0 point))
(afterpoint (substring string point))
(bounds (completion-boundaries beforepoint table pred afterpoint))
(suffix (substring afterpoint (cdr bounds)))
(prefix (substring beforepoint 0 (car bounds)))
(pattern (delete
"" (list (substring beforepoint (car bounds))
'point
(substring afterpoint 0 (cdr bounds)))))
(all (completion-pcm--all-completions prefix pattern table pred)))
(lexical-let*
((beforepoint (substring string 0 point))
(afterpoint (substring string point))
(bounds (completion-boundaries beforepoint table pred afterpoint))
(suffix (substring afterpoint (cdr bounds)))
(prefix (substring beforepoint 0 (car bounds)))
(pattern (delete
"" (list (substring beforepoint (car bounds))
'point
(substring afterpoint 0 (cdr bounds)))))
(all (completion-pcm--all-completions prefix pattern table pred)))
(completion-hilit-commonality all point (car bounds))))
;;; Partial-completion-mode style completion.
......@@ -1896,12 +1901,13 @@ POINT is a position inside STRING.
FILTER is a function applied to the return value, that can be used, e.g. to
filter out additional entries (because TABLE migth not obey PRED)."
(unless filter (setq filter 'identity))
(let* ((beforepoint (substring string 0 point))
(afterpoint (substring string point))
(bounds (completion-boundaries beforepoint table pred afterpoint))
(prefix (substring beforepoint 0 (car bounds)))
(suffix (substring afterpoint (cdr bounds)))
firsterror)
(lexical-let*
((beforepoint (substring string 0 point))
(afterpoint (substring string point))
(bounds (completion-boundaries beforepoint table pred afterpoint))
(prefix (substring beforepoint 0 (car bounds)))
(suffix (substring afterpoint (cdr bounds)))
firsterror)
(setq string (substring string (car bounds) (+ point (cdr bounds))))
(let* ((relpoint (- point (car bounds)))
(pattern (completion-pcm--string->pattern string relpoint))
......
......@@ -373,7 +373,7 @@ The changes are between FIRST-VERSION and SECOND-VERSION."
(message "Merging changes into %s..." file)
;; (vc-file-setprop file 'vc-working-revision nil)
(vc-file-setprop file 'vc-checkout-time 0)
(vc-svn-command nil 0 file "update")
(vc-svn-command nil 0 file "--non-interactive" "update") ; see bug#7152
;; Analyze the merge result reported by SVN, and set
;; file properties accordingly.
(with-current-buffer (get-buffer "*vc*")
......
......@@ -3,6 +3,16 @@
* coding.c (complement_process_encoding_system): Fix previous
change.
 
2010-10-03 Michael Albinus <michael.albinus@gmx.de>
* dbusbind.c (syms_of_dbusbind): Move putenv call ...
(Fdbus_init_bus): ... here. (Bug#7113)
2010-10-03 Glenn Morris <rgm@gnu.org>
* buffer.c (before-change-functions, after-change-functions):
Three-year overdue doc fix following 2007-08-13 change.
2010-10-02 Kenichi Handa <handa@m17n.org>
 
* coding.c (coding_inherit_eol_type): If parent doesn't specify
......
......@@ -6096,10 +6096,7 @@ No information is given about the length of the text after the change.
Buffer changes made while executing the `before-change-functions'
don't call any before-change or after-change functions.
That's because these variables are temporarily set to nil.
As a result, a hook function cannot straightforwardly alter the
value of these variables. See the Emacs Lisp manual for a way of
accomplishing an equivalent result by using other variables.
That's because `inhibit-modification-hooks' is temporarily set non-nil.
If an unhandled error happens in running these functions,
the variable's value remains nil. That prevents the error
......@@ -6117,10 +6114,7 @@ and the post-change beginning and end are at the same place.)
Buffer changes made while executing the `after-change-functions'
don't call any before-change or after-change functions.
That's because these variables are temporarily set to nil.
As a result, a hook function cannot straightforwardly alter the
value of these variables. See the Emacs Lisp manual for a way of
accomplishing an equivalent result by using other variables.
That's because `inhibit-modification-hooks' is temporarily set non-nil.
If an unhandled error happens in running these functions,
the variable's value remains nil. That prevents the error
......
......@@ -854,6 +854,9 @@ This is an internal function, it shall not be used outside dbus.el. */)
NULL, (void*) XHASH (bus), NULL))
XD_SIGNAL1 (build_string ("Cannot add watch functions"));
/* We do not want to abort. */
putenv ("DBUS_FATAL_WARNINGS=0");
/* Return. */
return Qnil;
}
......@@ -2130,12 +2133,11 @@ message arrives. */);
doc: /* If non-nil, debug messages of D-Bus bindings are raised. */);
#ifdef DBUS_DEBUG
Vdbus_debug = Qt;
/* We can also set environment DBUS_VERBOSE=1 in order to see more
traces. */
/* We can also set environment variable DBUS_VERBOSE=1 in order to
see more traces. This requires libdbus-1 to be configured with
--enable-verbose-mode. */
#else
Vdbus_debug = Qnil;
/* We do not want to abort. */
putenv ("DBUS_FATAL_WARNINGS=0");
#endif
Fprovide (intern_c_string ("dbusbind"), Qnil);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment