From: Stefan Monnier Date: Thu, 2 Oct 2014 15:13:05 +0000 (-0400) Subject: Merge from emacs-24 X-Git-Tag: emacs-25.0.90~2635^2~679^2~157 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=d7f413b893012eb5c9c93cd724008c2c1faae56f;p=emacs.git Merge from emacs-24 --- d7f413b893012eb5c9c93cd724008c2c1faae56f diff --cc doc/emacs/ChangeLog index 44e8e5871fa,b4d13d24325..c384eeb8425 --- a/doc/emacs/ChangeLog +++ b/doc/emacs/ChangeLog @@@ -1,29 -1,7 +1,33 @@@ -2014-10-01 Glenn Morris ++2014-10-02 Glenn Morris + + * package.texi (Package Installation): Mention etc/package-keyring.gpg. + +2014-09-29 Eli Zaretskii + + * emacsver.texi (EMACSVER): Bump to 20.0.50. + +2014-09-15 Daniel Colascione + + * regs.texi (Text Registers): Update end-user documentation + to reflect `insert-register' interface change. + +2014-08-07 Reuben Thomas + + * programs.texi (Program Modes): Don't advertise VMS DCL support + any more. + +2014-08-07 Reuben Thomas + + Refer to MS-DOS using the same name everywhere. + + * Makefile.in (EMACSSOURCES): ``MS-DOG'', ``MSDOG'' and ``msdog'' + become ``MS-DOS''; ``msdog'' in filenames becomes ``msdos''. + * emacs-xtra.texi: ditto. + * emacs.texi: ditto. + * makefile.w32-in: ditto. + * msdog-xtra.texi: ditto, and rename file. + * msdog.texi: ditto, and rename file. + 2014-07-21 Glenn Morris * emacs.texi (Intro): Workaround makeinfo 4 @acronym bug. (Bug#18040) diff --cc lisp/ChangeLog index 0d1ec7033b0,db08b101dc5..aa8ce36325d --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@@ -1,149 -1,15 +1,161 @@@ -2014-10-01 Glenn Morris ++2014-10-02 Glenn Morris + + * emacs-lisp/package.el (package-import-keyring): + Create gnupg directory private. (Bug#17625#155) + -2014-10-01 Stefan Monnier ++2014-10-02 Stefan Monnier + + * progmodes/python.el (python-shell-completion-get-completions): + Use python-shell--prompt-calculated-input-regexp from the + process buffer (bug#18582). + Don't assume that `line' comes from the process buffer. + +2014-10-02 Stefan Monnier + + * frame.el: Use lexical-binding (bug#18598). + (make-frame): Use t rather than nil for tty's window-system. + * startup.el (command-line): Use gui-method. + + Consolidate management/ownership of selections. + * select.el (gui-get-selection-alist): New method. + (gui-get-selection): Use it. Rename from x-get-selection. + (x-get-selection): Define as obsolete alias. + (x-get-clipboard): Mark obsolete. + (gui-get-primary-selection): New function. + (x-get-selection-value): Mark obsolete. + (gui-own-selection-alist, gui-disown-selection-alist) + (gui-selection-owner-p-alist): New methods. + (gui-set-selection): Use them. Rename from x-set-selection. + (x-set-selection): Define as obsolete alias. + (gui--valid-simple-selection-p): Rename from + x-valid-simple-selection-p. + * w32-common-fns.el (gui-own-selection, gui-disown-selection) + (gui-selection-owner-p, gui-get-selection): Define for w32. + (w32-get-selection-value): Rename from x-get-selection-value. + Use the new gui-last-selected-text. + * term/x-win.el (x-get-selection-value): Remove. + (x-clipboard-yank): Declare obsolete. + (gui-own-selection, gui-disown-selection, gui-get-selection) + (gui-selection-owner-p): Define for x. + * term/w32-win.el (w32-win-suspend-error): Rename from + x-win-suspend-error. + * term/pc-win.el (w16-get-selection-value): Rename from + x-get-selection-value. + (w16-selection-owner-p): Rename from x-selection-owner-p. + (gui-own-selection, gui-disown-selection, gui-get-selection) + (gui-selection-owner-p): Define for pc. + (w16--select-text): New function. + * term/ns-win.el (gui-own-selection, gui-disown-selection) + (gui-get-selection, gui-selection-owner-p): Define for ns. + * term.el (term-mouse-paste): + * mouse.el (mouse-yank-primary): Use gui-get-primary-selection. + +2014-10-02 H. Dieter Wilhelm (tiny change) + + * calc/calc-help.el (calc-describe-thing): Quote strings + which could look like regexps. + +2014-10-01 Stefan Monnier + + Consolidate x-select-text. + * frame.el (gui-method, gui-method-define, gui-method-declare) + (gui-call): New macros. + (gui-method--name): New function. + (frame-creation-function-alist): Use gui-method-declare. + (make-frame): Use gui-method. + * select.el (gui-select-enable-clipboard): Rename from + x-select-enable-clipboard and move here. + (x-select-enable-clipboard): Define as obsolete alias. + (gui-last-selected-text): New var, to replace x-last-selected-text. + (gui-select-text): New GUI method. + (gui-select-text): New function. + (x-select-text): Define as obsolete alias. + * term/common-win.el (x-select-enable-clipboard, x-select-text): + Move to select.el. + * simple.el (interprogram-cut-function): Change default to + x-select-text. + (interprogram-paste-function): Change default to `ignore'. + * w32-common-fns.el (interprogram-cut-function): Don't modify. + * term/x-win.el (interprogram-cut-function): Don't modify. + (gui-select-text): Add method for x. + * term/w32-win.el (gui-select-text): Add method for w32. + * term/pc-win.el (x-last-selected-text): Remove, use + gui-last-selected-text instead. + (msdos-initialize-window-system): Don't set interprogram-cut-function. + (gui-select-text): Add method for pc. + * term/ns-win.el (ns-last-selected-text): Remove, use + gui-last-selected-text instead. + (gui-select-text): Add method for ns. + (x-setup-function-keys): Don't change interprogram-cut-function. + * loadup.el ("startup"): Load after "frame". + * subr.el (package--builtin-versions, package--description-file): + Move from startup.el. + * startup.el (package--builtin-versions, package--description-file): + Move to subr.el. + (handle-args-function-alist, window-system-initialization-alist): + Use gui-method-declare. + (command-line): Use gui-method. + +2014-10-01 Stefan Monnier + + * subr.el (alist-get): New accessor. + * emacs-lisp/gv.el (alist-get): Provide expander. + * winner.el (winner-remember): + * tempo.el (tempo-use-tag-list): + * progmodes/gud.el (minor-mode-map-alist): + * international/mule-cmds.el (define-char-code-property): + * frameset.el (frameset-filter-params): + * files.el (dir-locals-set-class-variables): + * register.el (get-register, set-register): + * calc/calc-yank.el (calc-set-register): Use it. + * ps-print.el (ps-get, ps-put, ps-del): Mark as obsolete. + * tooltip.el (tooltip-set-param): Mark as obsolete. + (tooltip-show): Use alist-get instead. + * ses.el (ses--alist-get): Remove. Use alist-get instead. + +2014-10-01 Ulf Jasper + + * net/newst-backend.el: Remove Time-stamp. Rename variable + `newsticker--download-logos' to `newsticker-download-logos' and + make it customizable. + (newsticker--sentinel-work): Move xml-workarounds to function + `newsticker--do-xml-workarounds', call unless libxml-parser is + used. Allow single quote in regexp for encoding. + Use libxml-parser if available, else fall back to `xml-parse-region'. + Take care of possibly missing namespace prefixes (like "RDF" + instead of "rdf:RDF") when checking xml nodes and attributes (as + libxml correctly removes the prefixes). Always use Atom 1.0 as + fallback feed type. Rename `newsticker--download-logos' to + `newsticker-download-logos' + (newsticker--unxml, newsticker--unxml-node) + (newsticker--unxml-attribute): New. + (newsticker--parse-atom-1.0): Call `unxml' in case that embedded + HTML code has become part of the xml parse tree. + (newsticker--parse-rss-1.0, newsticker--parse-rss-2.0): Take care + of possibly missing namespace prefixes. + (newsticker--parse-generic-items): Code formatting. Typo. + (newsticker--images-dir): Add trailing slash. + (newsticker--image-get): Fix error message. + + * net/newst-plainview.el: Remove Time-stamp. + + * net/newst-reader.el: Remove Time-stamp. + (newsticker-download-logos): Rename variable + `newsticker--download-logos' to `newsticker-download-logos' and + make it customizable. + (newsticker--print-extra-elements): Add optional parameter + 'htmlish for using html markup. Amend list of ignored elements. + (newsticker--do-print-extra-element): Add parameter 'htmlish for + using html markup. + + * net/newst-ticker.el: Remove Time-stamp. + + * net/newst-treeview.el (newsticker--treeview-item-show): Use html + for formatting extra elements. + + * net/newsticker.el: Remove Time-stamp, Version. + (newsticker-version): Make obsolete. + 2014-09-30 Leonardo Nobrega (tiny change) * progmodes/python.el (python-fill-paren): Don't inf-loop at EOB diff --cc lisp/emacs-lisp/package.el index 4832673b95c,823ba365e62..10944f81534 --- a/lisp/emacs-lisp/package.el +++ b/lisp/emacs-lisp/package.el @@@ -289,6 -289,6 +289,8 @@@ contrast, `package-user-dir' contains p :group 'package :version "24.1") ++(defvar epg-gpg-program) ++ (defcustom package-check-signature (if (progn (require 'epg-config) (executable-find epg-gpg-program)) 'allow-unsigned) @@@ -1299,7 -1298,13 +1301,8 @@@ similar to an entry in `package-alist' (setq file (expand-file-name file)) (let ((context (epg-make-context 'OpenPGP)) (homedir (expand-file-name "gnupg" package-user-dir))) - (make-directory homedir t) - ;; FIXME Use `with-file-modes' when merged to trunk. - (let ((umask (default-file-modes))) - (unwind-protect - (progn - (set-default-file-modes 448) - (make-directory homedir t)) - (set-default-file-modes umask))) ++ (with-file-modes 448 ++ (make-directory homedir t)) (epg-context-set-home-directory context homedir) (message "Importing %s..." (file-name-nondirectory file)) (epg-import-keys-from-file context file) diff --cc lisp/gnus/ChangeLog index 7e6137226b5,228cd104783..be60d7777c4 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@@ -1,3 -1,3 +1,8 @@@ ++2014-10-02 Daiki Ueno ++ ++ * mml.el (mml-parse-1): Error out if unknown mode is specified in ++ <#secure> tag (bug#18513). ++ 2014-09-29 Daiki Ueno * mml.el (mml-parse-1): Error out if unknown mode is specified in diff --cc lisp/progmodes/python.el index 6c11a478942,aa9d9b10dbc..f6e1021c86a --- a/lisp/progmodes/python.el +++ b/lisp/progmodes/python.el @@@ -2878,41 -2678,47 +2878,40 @@@ the full statement in the case of impor "24.4" "Completion string code must also autocomplete modules.") -(defcustom python-shell-completion-pdb-string-code - "';'.join(globals().keys() + locals().keys())" - "Python code used to get completions separated by semicolons for [i]pdb." - :type 'string - :group 'python) +(define-obsolete-variable-alias + 'python-shell-completion-pdb-string-code + 'python-shell-completion-string-code + "25.1" + "Completion string code must work for (i)pdb.") -(defun python-shell-completion-get-completions (process line input) - "Do completion at point for PROCESS. -LINE is used to detect the context on how to complete given INPUT." +(defun python-shell-completion-get-completions (process import input) + "Do completion at point using PROCESS for IMPORT or INPUT. +When IMPORT is non-nil takes precedence over INPUT for +completion." - (let* ((prompt - (with-current-buffer (process-buffer process) + (with-current-buffer (process-buffer process) + (let* ((prompt - ;; Get last prompt of the inferior process buffer (this - ;; intentionally avoids using `comint-last-prompt' because - ;; of incompatibilities with Emacs 24.x). - (save-excursion + (let ((prompt-boundaries (python-util-comint-last-prompt))) (buffer-substring-no-properties - (car prompt-boundaries) (cdr prompt-boundaries))))) - (completion-code - ;; Check whether a prompt matches a pdb string, an import - ;; statement or just the standard prompt and use the - ;; correct python-shell-completion-*-code string - (cond ((and (string-match - (concat "^" python-shell-prompt-pdb-regexp) prompt)) - ;; Since there are no guarantees the user will remain - ;; in the same context where completion code was sent - ;; (e.g. user steps into a function), safeguard - ;; resending completion setup continuously. - (concat python-shell-completion-setup-code - "\nprint (" python-shell-completion-string-code ")")) - ((string-match - python-shell--prompt-calculated-input-regexp prompt) - python-shell-completion-string-code) - (t nil))) - (subject (or import input))) - (and completion-code - (> (length input) 0) - (with-current-buffer (process-buffer process) - (line-beginning-position) ;End of prompt. - (progn - (re-search-backward "^") - (python-util-forward-comment) ;FIXME: Why? - (point))))) ++ (car prompt-boundaries) (cdr prompt-boundaries)))) + (completion-code + ;; Check whether a prompt matches a pdb string, an import + ;; statement or just the standard prompt and use the + ;; correct python-shell-completion-*-code string - (cond ((and (> (length python-shell-completion-pdb-string-code) 0) - (string-match ++ (cond ((and (string-match + (concat "^" python-shell-prompt-pdb-regexp) prompt)) - python-shell-completion-pdb-string-code) ++ ;; Since there are no guarantees the user will remain ++ ;; in the same context where completion code was sent ++ ;; (e.g. user steps into a function), safeguard ++ ;; resending completion setup continuously. ++ (concat python-shell-completion-setup-code ++ "\nprint (" python-shell-completion-string-code ")")) + ((string-match + python-shell--prompt-calculated-input-regexp prompt) + python-shell-completion-string-code) + (t nil))) - (input - (if (string-match - (python-rx (+ space) (or "from" "import") space) - line) - line - input))) ++ (subject (or import input))) + (and completion-code + (> (length input) 0) (let ((completions (python-util-strip-string (python-shell-send-string-no-output diff --cc src/ChangeLog index 2a4ce099021,808a8f94c74..eb578278bea --- a/src/ChangeLog +++ b/src/ChangeLog @@@ -1,50 -1,8 +1,56 @@@ -2014-10-01 Jan Djärv ++2014-10-02 Jan Djärv + + * xfaces.c (Finternal_set_lisp_face_attribute): Don't try to + make a font_object from a tty frame (Bug#18573). - (Finternal_set_lisp_face_attribute): Added FIXME comment. ++ (Finternal_set_lisp_face_attribute): Add FIXME comment. ++ +2014-10-02 Dmitry Antipov + + * alloc.c (mark_overlay): Assume that overlay boundaries are + always markers. Add comment. + * lread.c (read_internal_start): Use convenient validate_subarray. + Adjust docstring. + (Fread_from_string): Adjust docstring. + +2014-10-02 Stefan Monnier + + * lisp.h: Fix up compilation for USE_STACK_LISP_OBJECTS=false. + + * nsselect.m (ns-own-selection-internal, ns-disown-selection-internal): + Rename from the "x-" prefix. + +2014-10-01 Stefan Monnier + + * xselect.c (selection-converter-alist): Fix docstring. + +2014-10-01 Eli Zaretskii + + * w32proc.c (sys_spawnve): Avoid modification of the CMDNAME + argument passed by the caller, when we mirror all slashes into + backslashes. + +2014-10-01 Dmitry Antipov + + * gtkutil.c (xg_set_toolkit_horizontal_scroll_bar_thumb): + Resurrect old code and fix compilation with GTK < 2.13.6. + +2014-10-01 Paul Eggert + + Use AUTO_CONS instead of SCOPED_CONS, etc. + * frame.h (AUTO_FRAME_ARG): Rename from FRAME_PARAMETER. + * lisp.h (AUTO_CONS): Rename from scoped_cons. + (AUTO_LIST1): Rename from scoped_list1. + (AUTO_LIST2): Rename from scoped_list2. + (AUTO_LIST3): Rename from scoped_list3. + (AUTO_LIST4): Rename from scoped_list4. + (AUTO_STRING): Rename from SCOPED_STRING. + * frame.h (AUTO_FRAME_ARG): + * lisp.h (AUTO_CONS, AUTO_LIST1, AUTO_LIST2, AUTO_LIST3) + (AUTO_LIST4, AUTO_STRING): + Prepend a new argument 'name'. + Declare a variable instead of yielding a value. + All uses changed. + * lisp.h (STACK_CONS, AUTO_CONS_EXPR): New internal macros. 2014-09-30 Eli Zaretskii @@@ -398,7 -50,7 +404,7 @@@ * macfont.m (macfont_close): Release and free font-specific data only if it wasn't previously freed. - 2014-09-22 David Caldwell (tiny change) -2014-09-21 David Caldwell (tiny change) ++2014-09-22 David Caldwell (tiny change) * unexmacosx.c (dump_it): Improve error message. diff --cc src/xfaces.c index 73704bbba8e,9579bcce572..6afa0a2953d --- a/src/xfaces.c +++ b/src/xfaces.c @@@ -3112,17 -3119,27 +3112,26 @@@ FRAME 0 means change the face on all fr f = XFRAME (selected_frame); else f = XFRAME (frame); - if (! FONT_OBJECT_P (value)) - { - Lisp_Object *attrs = XVECTOR (lface)->contents; - Lisp_Object font_object; - font_object = font_load_for_lface (f, attrs, value); - if (NILP (font_object)) - signal_error ("Font not available", value); - value = font_object; - } - set_lface_from_font (f, lface, value, 1); + /* FIXME: + If frame is t, and selected frame is a tty frame, the font - can't be realized. An improvement wuld be to loop over frames ++ can't be realized. An improvement would be to loop over frames + for a non-tty frame and use that. See discussion in - bug#18573. - */ ++ bug#18573. */ + if (f->terminal->type != output_termcap) + { + if (! FONT_OBJECT_P (value)) + { + Lisp_Object *attrs = XVECTOR (lface)->contents; + Lisp_Object font_object; + + font_object = font_load_for_lface (f, attrs, value); + if (NILP (font_object)) + signal_error ("Font not available", value); + value = font_object; + } + set_lface_from_font (f, lface, value, 1); + } } else ASET (lface, LFACE_FONT_INDEX, value); diff --cc test/ChangeLog index 041ed7c1754,264173fa557..fb3bd746a73 --- a/test/ChangeLog +++ b/test/ChangeLog @@@ -1,41 -1,16 +1,48 @@@ -2014-10-01 Glenn Morris ++2014-10-02 Glenn Morris + + * automated/package-test.el (with-package-test, package-test-signed): + Also set HOME to a temp value, in case the real one is absent (e.g. + hydra) or read-only. (Bug#18575) + (package-test-signed): Use skip-unless rather than expected-result. + -2014-09-01 Fabián Ezequiel Gallina +2014-09-26 Leo Liu - * automated/python-tests.el: - (python-indent-electric-colon-1): New test. (Bug#18228) + * automated/cl-lib.el (cl-digit-char-p, cl-parse-integer): New + tests. (Bug#18557) + +2014-09-24 Ulf Jasper + + * automated/newsticker-tests.el + (newsticker--group-find-parent-group), + (newsticker--group-do-rename-group): New tests. + +2014-09-09 Eli Zaretskii + + * automated/fns-tests.el (fns-tests-collate-sort): Bind + w32-collate-ignore-punctuation to t when sorting according to + UTS#10 rules. + +2014-09-07 Michael Albinus + + * automated/fns-tests.el (fns-tests--collate-enabled-p): New function. + (fns-tests-collate-strings, fns-tests-collate-sort): Use it. + +2014-09-05 Michael Albinus + + * automated/fns-tests.el (fns-tests-compare-strings): In case + `compare-strings' shall return t, check for this. + (fns-tests-collate-strings, fns-tests-collate-sort): New tests. -2014-08-18 Glenn Morris +2014-09-03 Fabián Ezequiel Gallina + + * automated/python-tests.el (python-indent-electric-colon-1): + New test. (Bug#18228) + +2014-08-29 Dmitry Antipov + + * automated/fns-tests.el (fns-tests-sort): New test. + +2014-08-28 Glenn Morris * automated/python-tests.el (python-shell-calculate-exec-path-2): Update test for today's python.el changes.