]> code.delx.au - gnu-emacs/commitdiff
Merge from emacs-24
authorStefan Monnier <monnier@iro.umontreal.ca>
Thu, 10 Jan 2013 03:43:02 +0000 (22:43 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Thu, 10 Jan 2013 03:43:02 +0000 (22:43 -0500)
admin/ChangeLog
doc/lispref/ChangeLog
doc/lispref/commands.texi
etc/ChangeLog
lisp/ChangeLog
lisp/emacs-lisp/authors.el
lisp/faces.el
lisp/image-mode.el
lisp/progmodes/cc-engine.el
lisp/simple.el

index fa001ede6cb396cdbea424226a9858b0bd294b06..7d77becb5220d8883e37f76be9b1f4dda017ec6e 100644 (file)
 
        * grammars/bovine-grammar.el (bovine--grammar-newstyle-unquote):
        Remove.
-        (bovine-grammar-expand-form): Test for emacs-major-version.
+       (bovine-grammar-expand-form): Test for emacs-major-version.
 
        * grammars/c.by: Add EXPLICIT to keyword tokens.
+       Add %provide token.
 
-        * grammars/f90.by: Add %provide token.
-
-        * grammar/grammar.wy (semantic-grammar-lexer): Remove, since it
+       * grammars/grammar.wy (semantic-grammar-lexer): Remove, since it
        was copied to grammar.el.  New %provide token to generate prefix
-       which conforms with Emacs conventions.  Remove lexer definition,
+       which conforms with Emacs conventions.  Remove lexer definition,
        which is now in grammar.el.
 
 2012-09-27  Glenn Morris  <rgm@gnu.org>
 2012-09-13  Paul Eggert  <eggert@cs.ucla.edu>
 
        Simplify SIGIO usage (Bug#12408).
-       * CPP_DEFINES (BROKEN_SIGAIO, BROKEN_SIGIO, BROKEN_SIGPOLL)
+       * CPP-DEFINES (BROKEN_SIGAIO, BROKEN_SIGIO, BROKEN_SIGPOLL)
        (BROKEN_SIGPTY, NO_TERMIO): Remove.
 
 2012-09-11  Paul Eggert  <eggert@cs.ucla.edu>
index 64973ca38c5ac6fcfe52bcdc7cbf713a46478433..2631bdf708aac3646bbceec9e9f90ff8425912bd 100644 (file)
@@ -1,3 +1,8 @@
+2013-01-09  Glenn Morris  <rgm@gnu.org>
+
+       * commands.texi (Interactive Codes):
+       Whitespace does not terminate interactive "S".  (Bug#13393)
+
 2013-01-06  Chong Yidong  <cyd@gnu.org>
 
        * windows.texi (Vertical Scrolling): Fix typos (Bug#13267).
index f3589fc2edd2b967a0983da1eb2dc7ef6a3e9a9b..846d6f3a4a921b4cdff5a90825522c25930f52db 100644 (file)
@@ -471,10 +471,10 @@ Arbitrary text, read in the minibuffer and returned as a string
 these characters in the input.)  Prompt.
 
 @item S
-An interned symbol whose name is read in the minibuffer.  Any whitespace
-character terminates the input.  (Use @kbd{C-q} to include whitespace in
-the string.)  Other characters that normally terminate a symbol (e.g.,
-parentheses and brackets) do not do so here.  Prompt.
+An interned symbol whose name is read in the minibuffer.  Terminate
+the input with either @kbd{C-j} or @key{RET}.  Other characters that
+normally terminate a symbol (e.g., whitespace, parentheses and
+brackets) do not do so here.  Prompt.
 
 @item U
 A key sequence or @code{nil}.  Can be used after a @samp{k} or
index 1c057848eadb82a203b84c7cf55d30bd0e51ad9b..6c1a08cb67061e679801ad2d0759a83937c85c17 100644 (file)
@@ -85,7 +85,7 @@
 
 2012-10-01  Eric Ludlam  <zappo@gnu.org>
 
-       * srecode/cc.srt, srecode/ede-autoconf.srt: New files.
+       * srecode/c.srt, srecode/ede-autoconf.srt: New files.
 
        * srecode/cpp.srt: Move parts to c.srt.
 
index 7c3443a916c09df4e788a37ff5d30416f5a9ce7f..b9f35e6567c9d48df6c377ed179666018271c910 100644 (file)
@@ -1,3 +1,37 @@
+2013-01-10  Glenn Morris  <rgm@gnu.org>
+
+       * emacs-lisp/authors.el (authors-ignored-files)
+       (authors-valid-file-names, authors-renamed-files-alist):
+       Add some more entries.
+
+2013-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * image-mode.el (image-mode-winprops): Don't throw away the fallback
+       `t' pseudo-window entry.
+
+2013-01-10  Alan Mackenzie  <acm@muc.de>
+
+       Fix bugs in the c-parse-state mechanism.  Reuse some markers
+       instead of continually generating new ones.
+
+       * progmodes/cc-engine.el (c-state-old-cpp-beg-marker)
+       (c-state-old-cpp-end-marker): New variables.
+       (c-append-lower-brace-pair-to-state-cache): Start a backward
+       search for "}" definitively outside CPP constructs.
+       (c-remove-stale-state-cache): Inform the caller of a need to
+       search back for a brace pair in certain circumstances.
+       (c-state-maybe-marker): New macro.
+       (c-parse-state): Reuse markers when appropriate.
+
+2013-01-10  Glenn Morris  <rgm@gnu.org>
+
+       * simple.el (execute-extended-command): Doc fix.
+       Bind prefix-arg around read-extended-command, for prompt.  (Bug#13395)
+
+2013-01-10  Chong Yidong  <cyd@gnu.org>
+
+       * faces.el (read-face-name): Doc fix.
+
 2013-01-10  Roland Winkler  <winkler@gnu.org>
 
        * emacs-lisp/crm.el: Allow any regexp for separators.
 
 2012-08-08  Fabián Ezequiel Gallina  <fgallina@cuca>
 
-       * progmodes/python.el Fixed defsubst warning.
+       * progmodes/python.el: Fix defsubst warning.
        (python-syntax-context) Rename from python-info-ppss-context.
        (python-syntax-context-type): Rename from
        python-info-ppss-context-type.
index 6741094aa5586b7e4c2a569358cb34578509accd..270badd53cba43457ea83a4bb94ba08c9684f5e7 100644 (file)
@@ -295,6 +295,14 @@ Changes to files matching one of the regexps in this list are not listed.")
     "calc/INSTALL" "calc/Makefile"
     "vms-pp.trans" "_emacs" "batcomp.com" "notes/cpp" ; admin/
     "emacsver.texi.in"
+    "vpath.sed"
+    "Cocoa/Emacs.base/Contents/Info.plist"
+    "Cocoa/Emacs.base/Contents/Resources/English.lproj/InfoPlist.strings"
+    "GNUstep/Emacs.base/Resources/Info-gnustep.plist"
+    "GNUstep/Emacs.base/Resources/Emacs.desktop"
+    "Cocoa/Emacs.base/Contents/Resources/English.lproj"
+    ;; Only existed briefly, then deleted:
+    "coccinelle/overlay.cocci" "coccinelle/symbol.cocci"
     ;; MH-E stuff not in Emacs:
     "import-emacs" "release-utils"
     ;; Erc stuff not in Emacs:
@@ -540,6 +548,7 @@ Changes to files in this list are not listed.")
     "makedist.bat"
     "makefile.def"
     "makefile.nt"
+    "ns.mk"
     "debug.bat.in" "emacs.bat.in"
     ".gdbinit-union"
     "alloca.s"
@@ -553,15 +562,17 @@ Changes to files in this list are not listed.")
     "ymakefile"
     "permute-index" "index.perm"
     "ibmrs6000.inp"
-    "b2m.c" "b2m.1" "b2m.pl"
+    "b2m.c" "b2m.1" "b2m.pl" "rcs-checkin.1"
     "emacs.bash" "emacs.csh" "ms-kermit"
     "emacs.ico"
     "emacs21.ico"
+    "emacs.py" "emacs2.py" "emacs3.py"
     "BABYL" "LPF" "LEDIT" "OTHER.EMACSES"
     "emacs16_mac.png" "emacs24_mac.png"
     "emacs256_mac.png" "emacs32_mac.png"
     "emacs48_mac.png" "emacs512_mac.png"
     "revdiff"                          ; admin/
+    "vcdiff" "rcs-checkin" "tindex.pl"
     "mainmake" "sed1.inp" "sed2.inp" "sed3.inp" ; msdos/
     "mac-fix-env.m"
     ;; Deleted vms stuff:
@@ -580,6 +591,7 @@ in the repository.")
     ("s/windowsnt.h" . "s/ms-w32.h")
     ("s/ms-w32.h" . "inc/ms-w32.h")
     ("winnt.el" . "w32-fns.el")
+    ("emacs.manifest" . "emacs-x86.manifest")
     ("config.emacs" . "configure")
     ("configure.in" . "configure.ac")
     ("config.h.dist" . "config.in")
@@ -616,6 +628,8 @@ in the repository.")
     ("build-install" . "build-ins.in")
     ("build-install.in" . "build-ins.in")
     ("unidata/Makefile" . "unidata/Makefile.in")
+    ("move-if-change" . "build-aux/move-if-change")
+    ("update-subdirs" . "build-aux/update-subdirs")
     ;; Not renamed, but we only have the latter in the Emacs repo.
     ("trampver.texi.in" . "trampver.texi")
     ("e/eterm" . "e/eterm-color")
index f78a4cb9e3d65627c40360b8645f4aa29df0f689..60410733514f9c0f5b18c28bdbbd1a2748187bf1 100644 (file)
@@ -929,27 +929,29 @@ of the default face.  Value is FACE."
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 (defun read-face-name (prompt &optional default multiple)
-  "Read a face, defaulting to the face or faces at point.
-If the text at point has the property `read-face-name', that
-overrides the `face' property for determining the default.
+  "Read one or more face names, defaulting to the face(s) at point.
+PROMPT should be a prompt string; it should not end in a space or
+a colon.
 
-PROMPT should be a string that describes what the caller will do
-with the face; it should not end in a space.
+The optional argument DEFAULT specifies the default face name(s)
+to return if the user just types RET.  If its value is non-nil,
+it should be a list of face names (symbols); in that case, the
+default return value is the `car' of DEFAULT (if the argument
+MULTIPLE is non-nil), or DEFAULT (if MULTIPLE is nil).  See below
+for the meaning of MULTIPLE.
 
+If DEFAULT is nil, the list of default face names is taken from
+the `read-face-name' property of the text at point, or, if that
+is nil, from the `face' property of the text at point.
 
 This function uses `completing-read-multiple' with \",\" as the
-separator character, i.e.
-
-
-
-
-
-The optional argument DEFAULT provides the value to display in the
-minibuffer prompt that is returned if the user just types RET
-unless DEFAULT is a string (in which case nil is returned).
-
-If MULTIPLE is non-nil, return a list of faces (possibly only one).
-Otherwise, return a single face."
+separator character.  Thus, the user may enter multiple face
+names, separated by commas.  The optional argument MULTIPLE
+specifies the form of the return value.  If MULTIPLE is non-nil,
+return a list of face names; if the user entered just one face
+name, the return value would be a list of one face name.
+Otherwise, return a single face name; if the user entered more
+than one face name, return only the first one."
   (let ((faceprop (or (get-char-property (point) 'read-face-name)
                      (get-char-property (point) 'face)))
         (aliasfaces nil)
index 90eb5dfaec55447b5b0a309ae944e940bd1bfc63..a95dde1d999cb13175d649b6a1f20ab802b57d0a 100644 (file)
@@ -63,8 +63,9 @@ otherwise it defaults to t, used for times when the buffer is not displayed."
   (when cleanup
     (setq image-mode-winprops-alist
          (delq nil (mapcar (lambda (winprop)
-                             (if (window-live-p (car-safe winprop))
-                                 winprop))
+                             (let ((w (car-safe winprop)))
+                               (if (or (not (windowp w)) (window-live-p w))
+                                   winprop)))
                            image-mode-winprops-alist))))
   (let ((winprops (assq window image-mode-winprops-alist)))
     ;; For new windows, set defaults from the latest.
index 6ffa67f59c10d034912cc87b8fa51ed403ef8133..560b66bf3b0e13ff0dd9c675a47166305f732c27 100644 (file)
@@ -2464,8 +2464,12 @@ comment at the start of cc-engine.el for more info."
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; Variables which keep track of preprocessor constructs.
+(defvar c-state-old-cpp-beg-marker nil)
+(make-variable-buffer-local 'c-state-old-cpp-beg-marker)
 (defvar c-state-old-cpp-beg nil)
 (make-variable-buffer-local 'c-state-old-cpp-beg)
+(defvar c-state-old-cpp-end-marker nil)
+(make-variable-buffer-local 'c-state-old-cpp-end-marker)
 (defvar c-state-old-cpp-end nil)
 (make-variable-buffer-local 'c-state-old-cpp-end)
 ;; These are the limits of the macro containing point at the previous call of
@@ -2653,13 +2657,21 @@ comment at the start of cc-engine.el for more info."
   ;; reduce the time wasted in repeated fruitless searches in brace deserts.
   (save-excursion
     (save-restriction
-      (let ((bra from) ce              ; Positions of "{" and "}".
-           new-cons
-           (cache-pos (c-state-cache-top-lparen)) ; might be nil.
-           (macro-start-or-from
-            (progn (goto-char from)
-                   (c-beginning-of-macro)
-                   (point))))
+      (let* (new-cons
+            (cache-pos (c-state-cache-top-lparen)) ; might be nil.
+            (macro-start-or-from
+             (progn (goto-char from)
+                    (c-beginning-of-macro)
+                    (point)))
+            (bra                       ; Position of "{".
+             ;; Don't start scanning in the middle of a CPP construct unless
+             ;; it contains HERE - these constructs, in Emacs, are "commented
+             ;; out" with category properties.
+             (if (eq (c-get-char-property macro-start-or-from 'category)
+                       'c-cpp-delimiter)
+                   macro-start-or-from
+                 from))
+            ce)                        ; Position of "}"
        (or upper-lim (setq upper-lim from))
 
        ;; If we're essentially repeating a fruitless search, just give up.
@@ -2899,7 +2911,9 @@ comment at the start of cc-engine.el for more info."
                  (point-max)
                (min (point-max) c-state-old-cpp-beg)))
        (while (and c-state-cache (>= (c-state-cache-top-lparen) upper-lim))
+         (setq scan-back-pos (car-safe (car c-state-cache)))
          (setq c-state-cache (cdr c-state-cache)))
+
        ;; If `upper-lim' is inside the last recorded brace pair, remove its
        ;; RBrace and indicate we'll need to search backwards for a previous
        ;; brace pair.
@@ -3324,6 +3338,13 @@ comment at the start of cc-engine.el for more info."
      (c-with-cpps-commented-out
       (c-invalidate-state-cache-1 here)))))
 
+(defmacro c-state-maybe-marker (place marker)
+  ;; If PLACE is non-nil, return a marker marking it, otherwise nil.
+  ;; We (re)use MARKER.
+  `(and ,place
+       (or ,marker (setq ,marker (make-marker)))
+       (set-marker ,marker ,place)))
+
 (defun c-parse-state ()
   ;; This is a wrapper over `c-parse-state-1'.  See that function for a
   ;; description of the functionality and return value.
@@ -3350,9 +3371,10 @@ comment at the start of cc-engine.el for more info."
              (c-parse-state-1))
           (c-with-cpps-commented-out
            (c-parse-state-1))))
-      (setq c-state-old-cpp-beg (and here-cpp-beg (copy-marker here-cpp-beg t))
-           c-state-old-cpp-end (and here-cpp-end (copy-marker here-cpp-end t)))
-      )))
+      (setq c-state-old-cpp-beg
+           (c-state-maybe-marker here-cpp-beg c-state-old-cpp-beg-marker)
+           c-state-old-cpp-end
+           (c-state-maybe-marker here-cpp-end c-state-old-cpp-end-marker)))))
 
 ;; Debug tool to catch cache inconsistencies.  This is called from
 ;; 000tests.el.
index d06a04aa5dc0992a4f501c4880dbbbb123705448..dcd6d792acb8cf307622bc7d42a283dad6375d5b 100644 (file)
@@ -1391,14 +1391,16 @@ If the value is non-nil and not a number, we wait 2 seconds."
   ;; Aaron S. Hawley <aaron.s.hawley(at)gmail.com> 2009-08-24
   "Read function name, then read its arguments and call it.
 
-To pass a numeric argument to the command you are invoking with, specify
+To pass a numeric argument to the command you are invoking, specify
 the numeric argument to this command.
 
 Noninteractively, the argument PREFIXARG is the prefix argument to
 give to the command you invoke, if it asks for an argument."
   (interactive (list current-prefix-arg (read-extended-command)))
   ;; Emacs<24 calling-convention was with a single `prefixarg' argument.
-  (if (null command-name) (setq command-name (read-extended-command)))
+  (if (null command-name)
+      (setq command-name (let ((current-prefix-arg prefixarg)) ; for prompt
+                           (read-extended-command))))
   (let* ((function (and (stringp command-name) (intern-soft command-name)))
          (binding (and suggest-key-bindings
                       (not executing-kbd-macro)