Since most new types of seq would have to be defined as sequences (cons
cells or CL structs, mostly), there is no need to convert the seqs to
sequences (which can be a fairly expensive operation).
* lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
sequences.
* lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
make it easier to extend seq.el with new "seq types".
* test/automated/seq-tests.el (test-setf-seq-elt): New test.
* lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
subseq in cl-extra.el, and use it in seq.el.
Setup codes are now sent continuously so that the current frame is
always taken into account. This allows working within debuggers
and always keeping a fresh version of setup codes that will return
proper results.
* lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
(python-shell-send-setup-code): Send code only when
python-shell-setup-codes is non-nil.
(python-shell-completion-string-code): Cleanup trailing newline.
(python-shell-completion-get-completions): Always use
python-shell-completion-setup-code.
(python-ffap-setup-code): Work with any object, not only modules.
(python-ffap-string-code): Cleanup trailing newline.
(python-ffap-module-path): Always use python-ffap-setup-code.
(python-eldoc-string-code): Cleanup trailing newline.
(python-eldoc--get-doc-at-point): Always use
python-eldoc-setup-code. Return non-nil only if docstring is
found.
* lisp/progmodes/python.el (python-shell-completion-native-setup):
Make completer print real candidates and just return dummy ones to
avoid input modification.
(python-shell-completion-native-get-completions): Set
comint-redirect-insert-matching-regexp to non-nil and make
comint-redirect-finished-regexp match the last dummy candidate.
Use python-shell-accept-process-output to wait for the full list
of candidates.
* src/w32proc.c (sys_spawnve): Use exec-directory, not
invocation-directory, for finding cmdproxy.exe. When Emacs is
run from the source tree, look for cmdproxy.exe in the same source
tree. (Bug#21323)
* lisp/textmodes/css-mode.el (css--uri-re): New defconst.
(css-syntax-propertize-function): New defconst.
(css--font-lock-keywords): Handle parens around unquoted URIs.
(css-mode): Set `syntax-propertize-function'.
* lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file): Support
lists of dictionaries of the form "DICT1,DICT2,...".
(ispell-hunspell-add-multi-dic): New command. (Bug#20495)
* lisp/progmodes/python.el
(python-shell-tramp-refresh-process-environment): New function.
(python-shell-with-environment): Use it.
* test/automated/python-tests.el (python-shell-with-environment-2): Update.
* lisp/progmodes/python.el (python-shell-process-environment)
(python-shell-extra-pythonpaths, python-shell-exec-path)
(python-shell-virtualenv-root): Update docstring. Remove :safe.
(python-shell-setup-codes): Remove :safe.
(python-shell-remote-exec-path): New defcustom.
(python-shell--add-to-path-with-priority): New macro.
(python-shell-calculate-pythonpath): Give priority to
python-shell-extra-pythonpaths. Update docstring.
(python-shell-calculate-process-environment): Give priority to
python-shell-process-environment. Update docstring.
(python-shell-calculate-exec-path): Give priority to
python-shell-exec-path and calculated virtualenv bin directory.
Update docstring.
(python-shell-tramp-refresh-remote-path): New function.
(python-shell-with-environment): Use it when working remotely and
do not modify tramp-remote-path. Allow nesting.
(python-shell-calculate-command): Remove useless
python-shell-with-environment call.
* test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
(python-shell-calculate-pythonpath-2)
(python-shell-calculate-process-environment-6)
(python-shell-calculate-process-environment-7)
(python-shell-calculate-process-environment-8)
(python-shell-calculate-exec-path-3)
(python-shell-calculate-exec-path-4)
(python-shell-calculate-exec-path-5)
(python-shell-calculate-exec-path-6)
(python-shell-with-environment-3): New tests.
(python-shell-calculate-process-environment-2)
(python-shell-calculate-process-environment-3)
(python-shell-calculate-process-environment-4)
(python-shell-calculate-process-environment-5)
(python-shell-calculate-exec-path-1)
(python-shell-calculate-exec-path-2)
(python-shell-with-environment-1)
(python-shell-with-environment-2): Update and simplify.
* lisp/textmodes/tex-mode.el (tex-common-initialization): Set
prettify-symbols-compose-predicate in terms of add-function.
* etc/NEWS: Mention prettify-symbols-compose-predicate and
prettify-symbols-mode support in tex-mode.
* lisp/menu-bar.el (menu-set-font): Doc fix. (Bug#21303)
* doc/lispref/frames.texi (Frame Font): Document that
set-frame-font with the last argument 't' will also make the font
the default for the future GUI frames.
* doc/lispref/windows.texi (Buffers and Windows): Mention that the
current window, if relevant, will be the first in the list
returned by 'get-buffer-window-list'.
* lisp/window.el (get-buffer-window-list): Doc fix. (Bug#21305)
Respect text-quoting-style preference in diagnostic formats by
using curved quotes (which are translated as per text-quoting-style)
instead of grave accent and apostrophe (which are not).
* lisp/calendar/appt.el (appt-display-message):
* lisp/calendar/diary-lib.el (diary-check-diary-file)
(diary-mail-entries, diary-from-outlook):
* lisp/calendar/icalendar.el (icalendar-export-region)
(icalendar--convert-float-to-ical)
(icalendar--convert-date-to-ical)
(icalendar--convert-ical-to-diary)
(icalendar--convert-recurring-to-diary)
(icalendar--add-diary-entry):
* lisp/calendar/time-date.el (format-seconds):
* lisp/calendar/timeclock.el (timeclock-mode-line-display)
(timeclock-make-hours-explicit):
* lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
(todo-item-mark, todo-check-format)
(todo-insert-item--next-param, todo-edit-item--next-key)
(todo-mode):
Use curved quotes in diagnostic format strings.
* lisp/calendar/icalendar.el (icalendar-import-format-sample):
* test/automated/icalendar-tests.el (icalendar--import-format-sample):
Just use straight quoting for simple test case.