-2015-01-07 Stefan Monnier <monnier@iro.umontreal.ca>
+ 2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el (defclass): Move from eieio-defclass all the code
+ that creates functions, and most of the sanity checks.
+ Mark as obsolete the <class>-child-p function.
+ * emacs-lisp/eieio-core.el (eieio--define-field-accessors): Remove.
+ (eieio--class, eieio--object): Use cl-defstruct.
+ (eieio--object-num-slots): Define manually.
+ (eieio-defclass-autoload): Use eieio--class-make.
+ (eieio-defclass-internal): Rename from eieio-defclass. Move all the
+ `(lambda...) definitions and most of the sanity checks to `defclass'.
+ Mark as obsolete the <class>-list-p function, the <class> variable and
+ the <initarg> variables. Use pcase-dolist.
+ (eieio-defclass): New compatibility function.
+ * emacs-lisp/eieio-opt.el (eieio-build-class-alist)
+ (eieio-class-speedbar): Don't use eieio-default-superclass var.
+
+ 2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio-generic.el: New file.
+ * emacs-lisp/eieio-core.el: Move all generic function code to
+ eieio-generic.el.
+ (eieio--defmethod): Declare.
+
+ * emacs-lisp/eieio.el: Require eieio-generic. Move all generic
+ function code to eieio-generic.el.
+ * emacs-lisp/eieio-opt.el (eieio-help-generic): Move to
+ eieio-generic.el.
+ * emacs-lisp/eieio-datadebug.el (eieio-debug-methodinvoke): Update call
+ to eieio--generic-call.
+ * emacs-lisp/eieio-base.el (eieio-instance-inheritor): Don't use
+ <class>-child type.
+
-2015-01-05 Stefan Monnier <monnier@iro.umontreal.ca>
++2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/chart.el (chart-add-sequence, chart-bar-quickie):
+ Don't use <class> as a variable.
+
+ * emacs-lisp/eieio.el (same-class-p): Accept class object as well.
+ (call-next-method): Simplify.
+ (clone): Obey eieio-backward-compatibility.
+
+ * emacs-lisp/eieio-opt.el (eieio-read-generic-p): Remove.
+ (eieio-read-generic): Use `generic-p' instead.
+
+ * emacs-lisp/eieio-core.el (eieio-backward-compatibility): New var.
+ (eieio-defclass-autoload): Obey it.
+ (eieio--class-object): Improve error behavior.
+ (eieio-class-children-fast, same-class-fast-p): Remove. Inline at
+ every use site.
+ (eieio--defgeneric-form-primary-only): Rename from
+ eieio-defgeneric-form-primary-only; update all callers.
+ (eieio--defgeneric-form-primary-only-one): Rename from
+ eieio-defgeneric-form-primary-only-one; update all callers.
+ (eieio-defgeneric-reset-generic-form)
+ (eieio-defgeneric-reset-generic-form-primary-only)
+ (eieio-defgeneric-reset-generic-form-primary-only-one): Remove.
+ (eieio--method-optimize-primary): New function to replace them.
+ (eieio--defmethod, eieio-defmethod): Use it.
+ (eieio--perform-slot-validation): Rename from
+ eieio-perform-slot-validation; update all callers.
+ (eieio--validate-slot-value): Rename from eieio-validate-slot-value.
+ Change `class' to be a class object. Update all callers.
+ (eieio--validate-class-slot-value): Rename from
+ eieio-validate-class-slot-value. Change `class' to be a class object.
+ Update all callers.
+ (eieio-oset-default): Accept class object as well.
+ (eieio--generic-call-primary-only): Rename from
+ eieio-generic-call-primary-only. Update all callers.
+
+ * emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
+ Improve error messages.
+ (eieio-persistent-slot-type-is-class-p): Handle `list-of' types, as
+ well as user-defined types. Emit errors for legacy types like
+ <class>-child and <class>-list, if not eieio-backward-compatibility.
+
-2014-12-29 Stefan Monnier <monnier@iro.umontreal.ca>
++2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el (eieio-class-parents): Accept class objects.
+ (eieio--class-slot-initarg): Rename from class-slot-initarg.
+ Change `class' arg to be a class object. Update all callers.
+ (call-next-method): Adjust to new return value of `eieio-generic-form'.
+ (eieio-default-superclass): Set var to the class object.
+ (eieio-edebug-prin1-to-string): Fix recursive call for lists.
+ Change print behavior to affect class objects rather than
+ class symbols.
+
+ * emacs-lisp/eieio-core.el (eieio-class-object): New function.
+ (eieio-class-parents-fast): Remove macro.
+ (eieio--class-option-assoc): Rename from class-option-assoc.
+ Update all callers.
+ (eieio--class-option): Rename from class-option. Change `class' arg to
+ be a class object. Update all callers.
+ (eieio--class-method-invocation-order): Rename from
+ class-method-invocation-order. Change `class' arg to be a class
+ object. Update all callers.
+ (eieio-defclass-autoload, eieio-defclass): Set the `parent' field to
+ a list of class objects rather than names.
+ (eieio-defclass): Remove redundant quotes. Use `eieio-oref-default'
+ for accessors to class allocated slots.
+ (eieio--perform-slot-validation-for-default): Rename from
+ eieio-perform-slot-validation-for-default. Update all callers.
+ (eieio--add-new-slot): Rename from eieio-add-new-slot.
+ Update all callers. Use push.
+ (eieio-copy-parents-into-subclass): Adjust to new content of
+ `parent' field. Use dolist.
+ (eieio-oref): Remove support for providing a class rather than
+ an object.
+ (eieio-oref-default): Prefer class objects over class names.
+ (eieio--slot-originating-class-p): Rename from
+ eieio-slot-originating-class-p. Update all callers. Use `or'.
+ (eieio--slot-name-index): Turn check into assertion.
+ (eieio--class-slot-name-index): Rename from
+ eieio-class-slot-name-index. Change `class' arg to be a class object.
+ Update all callers.
+ (eieio-attribute-to-initarg): Move to eieio-test-persist.el.
+ (eieio--c3-candidate): Rename from eieio-c3-candidate.
+ Update all callers.
+ (eieio--c3-merge-lists): Rename from eieio-c3-merge-lists.
+ Update all callers.
+ (eieio--class-precedence-c3): Rename from eieio-class-precedence-c3.
+ Update all callers.
+ (eieio--class-precedence-dfs): Rename from eieio-class-precedence-dfs.
+ Update all callers.
+ (eieio--class-precedence-bfs): Rename from eieio-class-precedence-bfs.
+ Update all callers. Adjust to new `parent' content.
+ (eieio--class-precedence-list): Rename from -class-precedence-list.
+ Update all callers.
+ (eieio-generic-call): Use autoloadp and autoload-do-load.
+ Slight simplification.
+ (eieio-generic-call, eieio-generic-call-primary-only): Adjust to new
+ return value of `eieio-generic-form'.
+ (eieiomt-add): Index the hashtable with class objects rather than
+ class names.
+ (eieio-generic-form): Accept class objects as well.
+
+ * emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
+ Adjust to new convention for eieio-persistent-validate/fix-slot-value.
+ (eieio-persistent-validate/fix-slot-value):
+ Change `class' arg to be a class object. Update all callers.
+
-2014-12-23 Stefan Monnier <monnier@iro.umontreal.ca>
++2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el (child-of-class-p): Make it accept class objects
+ additionally to class names.
+
+ * emacs-lisp/eieio-core.el (eieio--with-scoped-class): Use let-binding.
+ (object): Remove first (constant) slot; rename second to `class-tag'.
+ (eieio--object-class-object, eieio--object-class-name): New funs
+ to replace eieio--object-class.
+ (eieio--class-object, eieio--class-p): New functions.
+ (same-class-fast-p): Make it a defsubst, change its implementation
+ to check the class objects rather than their names.
+ (eieio-object-p): Rewrite.
+ (eieio-defclass): Adjust the object initialization according to the new
+ object layout.
+ (eieio--scoped-class): Declare it returns a class object (not a class
+ name any more). Adjust calls accordingly (along with calls to
+ eieio--with-scoped-class).
+ (eieio--slot-name-index): Rename from eieio-slot-name-index and change
+ its class arg to be a class object. Adjust callers accordingly.
+ (eieio-slot-originating-class-p): Make its start-class arg a class
+ object. Adjust all callers.
+ (eieio--initarg-to-attribute): Rename from eieio-initarg-to-attribute.
+ Make its `class' arg a class object. Adjust all callers.
+
+ * emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
+ Use eieio--slot-name-index rather than eieio-slot-name-index.
+
-2014-12-22 Stefan Monnier <monnier@iro.umontreal.ca>
++2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el (make-instance): Simplify by not adding an object
+ name argument.
+ (eieio-object-name): Use eieio-object-name-string.
+ (eieio--object-names): New const.
+ (eieio-object-name-string, eieio-object-set-name-string): Re-implement
+ using a hashtable rather than a built-in slot.
+ (eieio-constructor): Rename from `constructor'. Remove `newname' arg.
+ (clone): Don't mess with the object's "name".
+
+ * emacs-lisp/eieio-custom.el (eieio-widget-test): Remove dummy arg.
+ (eieio-object-value-get): Use eieio-object-set-name-string.
+
+ * emacs-lisp/eieio-core.el (eieio--defalias): Follow aliases.
+ (eieio--object): Remove `name' field.
+ (eieio-defclass): Adjust to new convention where constructors don't
+ take an "object name" any more.
+ (eieio--defgeneric-init-form, eieio--defmethod): Follow aliases.
+ (eieio-validate-slot-value, eieio-oset-default)
+ (eieio-slot-name-index): Don't hardcode eieio--object-num-slots.
+ (eieio-generic-call-primary-only): Simplify.
+
+ * emacs-lisp/eieio-base.el (clone) <eieio-instance-inheritor>:
+ Use call-next-method.
+ (eieio-constructor): Rename from `constructor'.
+ (eieio-persistent-convert-list-to-object): Drop objname.
+ (eieio-persistent-validate/fix-slot-value): Don't hardcode
+ eieio--object-num-slots.
+ (eieio-named): Use a normal slot.
+ (slot-missing) <eieio-named>: Remove.
+ (eieio-object-name-string, eieio-object-set-name-string, clone)
+ <eieio-named>: New methods.
+
-2014-12-22 Stefan Monnier <monnier@iro.umontreal.ca>
++2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio-core.el (eieio--class-v): Rename from class-v.
+ (method-*): Add a "eieio--" prefix to those constants.
+
+ * emacs-lisp/eieio.el: Move edebug specs to the corresponding macro.
+
+ * emacs-lisp/eieio-speedbar.el: Use lexical-binding.
+
++2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el (child-of-class-p): Fix case where `class' is
+ `eieio-default-superclass'.
+
+ * emacs-lisp/eieio-datadebug.el: Use lexical-binding.
+
+ * emacs-lisp/eieio-custom.el: Use lexical-binding.
+ (eieio-object-value-to-abstract): Simplify.
+
+ * emacs-lisp/eieio-opt.el (eieio-build-class-list): Use cl-mapcan.
+ (eieio-build-class-alist): Use dolist.
+ (eieio-all-generic-functions): Adjust to use of hashtables.
+
+ * emacs-lisp/eieio-core.el (class): Rename field symbol-obarray to
+ symbol-hashtable. It contains a hashtable instead of an obarray.
+ (generic-p): Use symbol property `eieio-method-hashtable' instead of
+ `eieio-method-obarray'.
+ (generic-primary-only-p, generic-primary-only-one-p):
+ Slight optimization.
+ (eieio-defclass-autoload-map): Use a hashtable instead of an obarray.
+ (eieio-defclass-autoload, eieio-defclass): Adjust/simplify accordingly.
+ (eieio-class-un-autoload): Use autoload-do-load.
+ (eieio-defclass): Use dolist, cl-pushnew, cl-callf.
+ Use new cl-deftype-satisfies. Adjust to use of hashtables.
+ Don't hardcode the value of eieio--object-num-slots.
+ (eieio-defgeneric-form-primary-only-one): Remove `doc-string' arg.
+ Use a closure rather than a backquoted lambda.
+ (eieio--defmethod): Adjust call accordingly. Set doc-string via the
+ function-documentation property.
+ (eieio-slot-originating-class-p, eieio-slot-name-index)
+ (eieiomt--optimizing-hashtable, eieiomt-install, eieiomt-add)
+ (eieio-generic-form): Adjust to use of hashtables.
+ (eieiomt--sym-optimize): Rename from eieiomt-sym-optimize; take
+ additional class argument.
+ (eieio-generic-call-methodname): Remove, unused.
+
+ * emacs-lisp/eieio-base.el (eieio-persistent-slot-type-is-class-p):
+ Prefer \' to $.
+
+2015-01-08 Eli Zaretskii <eliz@gnu.org>
+
+ * simple.el (line-move-visual): When converting X pixel coordinate
+ to temporary-goal-column, adjust the value for right-to-left
+ screen lines. This fixes vertical-motion, next/prev-line, etc.
+
+2015-01-08 Glenn Morris <rgm@gnu.org>
+
+ * files.el (file-tree-walk): Remove; of unknown authorship. (Bug#19325)
+
+2015-01-07 K. Handa <handa@gnu.org>
+
+ * international/ccl.el (define-ccl-program): Improve the docstring.
+
+2015-01-06 Sam Steingold <sds@gnu.org>
+
+ * shell.el (shell-display-buffer-actions): Remove,
+ use `display-buffer-alist' instead.
+
+2015-01-05 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref--insert-xrefs): Add `help-echo' property
+ to the references.
+
+2015-01-05 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * minibuffer.el (completion-category-defaults): New var.
+ Set unicode-name to use substring completion.
+ (completion-category-defaults): Set it to nil.
+
+2015-01-04 Dmitry Gutov <dgutov@yandex.ru>
+
+ Add mouse interaction to xref.
+ * progmodes/xref.el (xref--button-map): New variable.
+ (xref--mouse-2): New command.
+ (xref--insert-xrefs): Add `mouse-face' and `keymap' properties to
+ the inserted references.
+
+2015-01-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ Less 'make' chatter for lisp dir
+ * Makefile.in (THEFILE): Define to be 'no-such-file' by default,
+ to make it clearer that the caller must specify it.
+ (compile-onefile): Remove, replacing by ...
+ ($(THEFILE)c): ... new rule. This lets us use AM_V_GEN here.
+ ($(THEFILE)c, .el.elc, $(MH_E_DIR)/mh-loaddefs.el)
+ ($(TRAMP_DIR)/tramp-loaddefs.el, $(CAL_DIR)/cal-loaddefs.el)
+ ($(CAL_DIR)/diary-loaddefs.el, $(CAL_DIR)/hol-loaddefs.el):
+ Use AM_V_GEN to lessen 'make' chatter.
+ (.el.elc): Omit duplicate comment.
+
+ Less 'make' chatter in batch mode
+ * emacs-lisp/autoload.el (autoload-generate-file-autoloads):
+ * emacs-lisp/bytecomp.el (byte-compile-file):
+ * files.el (save-buffer, basic-save-buffer):
+ * international/quail.el (quail-update-leim-list-file):
+ Don't output messages like "Generating ..." in batch mode.
+
+2015-01-04 Dmitry Gutov <dgutov@yandex.ru>
+
+ Unbreak `mouse-action' property in text buttons.
+ * button.el (push-button): Fix regression from 2012-12-06.
+
+2015-01-03 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref-marker-stack-empty-p): New function.
+
+ * menu-bar.el (menu-bar-goto-menu): Use it.
+
+2015-01-03 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref--window-configuration): New variable.
+ (xref-show-location-at-point): New command.
+ (xref--restore-window-configuration): New function.
+ (xref-next-line, xref-prev-line): Delegate to
+ `xref-show-location-at-point'.
+ (xref--location-at-point): Don't signal the error.
+ (xref-goto-xref): Do that here instead.
+ (xref--xref-buffer-mode): Add `xref--restore-window-configuration'
+ to `pre-command-hook'.
+ (xref--xref-buffer-mode-map): Don't remap `next-line' and
+ `previous-line'. Additionally bind `xref-next-line' and
+ `xref-prev-line' to `n' and `p' respectively. Bind
+ `xref-show-location-at-point' to `C-o'.
+
+2015-01-01 Eli Zaretskii <eliz@gnu.org>
+
+ * tool-bar.el (tool-bar-local-item)
+ (tool-bar-local-item-from-menu): Call force-mode-line-update to
+ make sure the tool-bar changes show on display.
+
+2015-01-01 Michael Albinus <michael.albinus@gmx.de>
+
+ Sync with Tramp 2.2.11.
+
+ * net/tramp-compat.el (top): Require cl-macs for Emacs 22.
+ Make an alias for `default-toplevel-value' if it doesn't exist.
+
+ * net/tramp-smb.el (tramp-smb-handle-copy-directory):
+ Use `tramp-compat-delete-directory'.
+
+ * net/trampver.el: Update release number.
+
+2015-01-01 Filipp Gunbin <fgunbin@fastmail.fm>
+
+ * autorevert.el (auto-revert-handler): Fix auto-revert-tail-mode
+ for remote files. (Bug#19449)
+
+2015-01-01 Simen Heggestøyl <simenheg@gmail.com> (tiny change)
+
+ * textmodes/css-mode.el (scss-mode): Fix typo (bug#19446).
+
+2014-12-31 Paul Eggert <eggert@cs.ucla.edu>
+
+ Less 'make' chatter in lisp directory
+ * Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_GEN, am__v_GEN_)
+ (am__v_GEN_0, am__v_GEN_1): New macros, from ../src/Makefile.in.
+ (custom-deps, finder-data, autoloads, update-subdirs): Use them.
+
+2014-12-31 Filipp Gunbin <fgunbin@fastmail.fm>
+
+ * info.el (info-display-manual): Limit the completion alternatives
+ to currently visited manuals if prefix argument is non-nil.
+
+2014-12-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ * Makefile.in (semantic): Simplify.
+
+2014-12-30 Juri Linkov <juri@linkov.net>
+
+ * net/eww.el (eww-isearch-next-buffer): New function.
+ (eww-mode): Set multi-isearch-next-buffer-function to it.
+
+2014-12-30 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref-find-definitions): Mention "no
+ identifier at point" case in the docstring.
+
+ * menu-bar.el (menu-bar-goto-uses-etags-p): New function.
+ (menu-bar-goto-menu): Use it to show or hide the `set-tags-name'
+ and `separator-tag-file' items.
+
+2014-12-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ * obsolete/pc-select.el (pc-selection-mode): Use system-type.
+ This is instead of system-name, which is both wrong here and obsolete.
+ * desktop.el (desktop-save-frameset):
+ * dnd.el (dnd-get-local-file-uri):
+ * nxml/rng-uri.el (rng-uri-file-name-1):
+ Prefer (system-name) to system-name, and avoid naming
+ locals 'system-name'.
+ * startup.el (system-name): Now an obsolete variable. (Bug#19438)
+
+2014-12-29 Dmitry Gutov <dgutov@yandex.ru>
+
+ * menu-bar.el (menu-bar-next-tag-other-window)
+ (menu-bar-next-tag): Remove.
+
+2014-12-29 K. Handa <handa@gnu.org>
+
+ * international/mule.el (make-translation-table-from-alist):
+ Accept nil or zero-length vector for FROM and TO.
+
+2014-12-29 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-mode): Truncate overlong lines for prettier
+ display when resizing.
+
+ * net/shr.el (shr-width): Default to using the window width when
+ rendering.
+
+2014-12-29 Dmitry Gutov <dgutov@yandex.ru>
+
+ Unbreak jumping to an alias's definition.
+ * emacs-lisp/find-func.el (find-function-library): Return a pair
+ (ORIG-FUNCTION . LIBRARY) instead of just its second element.
+ (find-function-noselect): Use it.
+ * progmodes/elisp-mode.el (elisp--xref-identifier-file): Rename to
+ `elisp--xref-identifier-location', incorporate logic from
+ `elisp--xref-find-definitions', use the changed
+ `find-function-library' return value.
+
+2014-12-29 Juri Linkov <juri@linkov.net>
+
+ * comint.el (comint-history-isearch-message): Use field-beginning
+ instead of comint-line-beginning-position - that's more fixes for
+ http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00305.html
+ (comint-history-isearch-message): Fix args of isearch-message-prefix.
+
+2014-12-29 Juri Linkov <juri@linkov.net>
+
+ * vc/vc-dir.el (vc-dir-display-file): New command (bug#19450).
+ (vc-dir-mode-map): Bind it to "\C-o".
+ (vc-dir-menu-map): Add it to menu.
+
+2014-12-29 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/etags.el (find-tag-other-window)
+ (find-tag-other-frame, find-tag-regexp, tags-loop-continue)
+ (tags-apropos): Declare obsolete.
+
+ * menu-bar.el (menu-bar-goto-menu): Replace all but one etags item
+ with xref ones.
+
+2014-12-28 Eli Zaretskii <eliz@gnu.org>
+
+ * international/mule.el (define-coding-system): Fix typos in the
+ doc string.
+
+2014-12-28 Kenichi Handa <handa@gnu.org>
+
+ * international/mule.el (define-coding-system): Improve the doc
+ string.
+
+2014-12-28 Ivan Shmakov <ivan@siamics.net>
+
+ * net/shr.el (shr-tag-table): Fix handling of tbody/header/footer
+ elements in tables (bug#19444).
+
+ * net/eww.el (eww-handle-link): Fix typo in "up" rel handling
+ (bug#19445).
+
+2014-12-28 Juri Linkov <juri@linkov.net>
+
+ * vc/compare-w.el: Require diff-mode for diff faces.
+ (compare-windows-removed, compare-windows-added): New faces
+ inheriting from diff faces.
+ (compare-windows): Define obsolete face alias.
+ (compare-windows-highlight): Replace face `compare-windows' with
+ new faces `compare-windows-added' and `compare-windows-removed'
+ (bug#19451).
+ (compare-windows-get-recent-window): Signal an error when
+ no other window is found (bug#19170).
+
+2014-12-27 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/elisp-mode.el (elisp--xref-identifier-file):
+ Skip features that have no sources.
+
+ * simple.el (execute-extended-command):
+ When `suggest-key-bindings' is nil, don't.
+
+2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ python.el: Native readline completion.
+ * progmodes/python.el (python-shell-completion-native-disabled-interpreters)
+ (python-shell-completion-native-enable)
+ (python-shell-completion-native-output-timeout): New defcustoms.
+ (python-shell-completion-native-interpreter-disabled-p)
+ (python-shell-completion-native-try)
+ (python-shell-completion-native-setup)
+ (python-shell-completion-native-turn-off)
+ (python-shell-completion-native-turn-on)
+ (python-shell-completion-native-turn-on-maybe)
+ (python-shell-completion-native-turn-on-maybe-with-msg)
+ (python-shell-completion-native-toggle): New functions.
+ (python-shell-completion-native-get-completions): New function.
+ (python-shell-completion-at-point): Use it.
+
+2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ python.el: Enhance shell user interaction and deprecate
+ python-shell-get-or-create-process.
+ * progmodes/python.el (python-shell-get-process-or-error):
+ New function.
+ (python-shell-with-shell-buffer): Use it.
+ (python-shell-send-string, python-shell-send-region)
+ (python-shell-send-buffer, python-shell-send-defun)
+ (python-shell-send-file, python-shell-switch-to-shell): Use it.
+ Add argument MSG to display user-friendly message when no process
+ is running.
+ (python-shell-switch-to-shell): Call pop-to-buffer with NORECORD.
+ (python-shell-make-comint): Rename argument SHOW from POP. Use
+ display-buffer instead of pop-to-buffer.
+ (run-python): Doc fix. Return process.
+ (python-shell-get-or-create-process): Make obsolete.
+
+2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-shell-buffer-substring): Handle
+ cornercase when region sent starts at point-min.
+
+2014-12-27 Eli Zaretskii <eliz@gnu.org>
+
+ * language/misc-lang.el (composition-function-table): Add Syriac
+ characters and also ZWJ/ZWNJ. See
+ http://lists.gnu.org/archive/html/help-gnu-emacs/2014-12/msg00248.html
+ for the details.
+
+2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ python.el: Fix message when sending region.
+ * progmodes/python.el (python-shell-send-region): Rename argument
+ send-main from nomain. Fix message.
+ (python-shell-send-buffer): Rename argument send-main from arg.
+
+ python.el: Cleanup temp files even with eval errors.
+ * progmodes/python.el (python-shell-send-file): Make file-name
+ mandatory. Fix temp file removal in the majority of cases.
+
+ python.el: Handle file encoding for shell.
+ * progmodes/python.el (python-rx-constituents): Add coding-cookie.
+ (python-shell--save-temp-file): Write file with proper encoding.
+ (python-shell-buffer-substring): Add coding cookie for detected
+ encoding to generated content. Fix blank lines when removing
+ if-name-main block.
+ (python-shell-send-file): Handle file encoding.
+ (python-info-encoding-from-cookie)
+ (python-info-encoding): New functions.
+
+2014-12-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
+ Use `tramp-rsh-end-of-line', it ought to be more robust.
+
+2014-12-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/js.el (js-syntax-propertize): "return" can't be divided
+ (bug#19397).
+
+2014-12-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-read-passwd): Ignore errors from `auth-source-*'.
+
+ * net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Use "\n"
+ as end-of-line delimeter for passwords, when running on MS Windows.
+
+2014-12-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/sh-script.el (sh-set-shell): Don't change the global value
+ of indent-line-function (bug#19433).
+
+2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ Fix line numbers on Python shell.
+ * progmodes/python.el (python-shell--save-temp-file): Do not
+ append coding cookie.
+ (python-shell-send-string): Generalize for
+ python-shell-send-region.
+ (python--use-fake-loc): Delete var.
+ (python-shell-buffer-substring): Cleanup fake-loc logic.
+ (python-shell-send-region): Remove fake-loc logic, simplify.
+
+2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-indent-post-self-insert-function):
+ Make colon to re-indent only for dedenters, handling
+ multiline-statements gracefully.
+
+2014-12-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-handle-insert-file-contents):
+ Set `find-file-not-found-functions' in case of errors. (Bug#18623)
+
+2014-12-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-send-command-and-read): New optional
+ arg MARKER.
+ (tramp-get-remote-path): Use it.
+
+2014-12-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (redisplay-dont-pause): Mark as obsolete.
+
+2014-12-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-error-with-buffer): Call `message' properly.
+ (tramp-accept-process-output): Use nil as argument for
+ `accept-process-output', when there is a gateway prepended.
+
+ * net/tramp-gw.el (tramp-gw-open-connection): Suppress traces in
+ wrong debug buffer.
+ (tramp-gw-open-connection): Set process coding system 'binary.
+ (tramp-gw-open-network-stream): Handle HTTP error 403.
+
+ * net/tramp-sh.el (tramp-compute-multi-hops): Suppress traces in
+ wrong debug buffer.
+ (tramp-maybe-open-connection): Set connection property "gateway".
+
+2014-12-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (sit-for): Tweak docstring (bug#19381).
+
+2014-12-27 Dmitry Gutov <dgutov@yandex.ru>
+
+ * vc/vc-git.el (vc-git-after-dir-status-stage): Move `up-to-date'
+ stage to after `diff-index' (bug#19386).
+
+2014-12-27 João Távora <joaotavora@gmail.com>
+
+ * textmodes/tex-mode.el (tex-insert-quote): Consider and respect
+ `electric-pair-mode' (bug#19356).
+
+2014-12-27 Dmitry Gutov <dgutov@yandex.ru>
+
+ elisp-xref-find: Don't create buffers eagerly.
+
+ * progmodes/elisp-mode.el (elisp--identifier-location): Fold back
+ into `elisp--company-location'.
+ (elisp--identifier-completion-table): Rename to
+ `elisp--identifier-completion-table', and do not include just any
+ symbols with a property list.
+ (elisp-completion-at-point): Revert the 2014-12-25 change.
+ (elisp--xref-identifier-file): New function.
+ (elisp--xref-find-definitions): Use it.
+
+ * emacs-lisp/find-func.el (find-function-library): New function,
+ extracted from `find-function-noselect'.
+
+ * progmodes/xref.el (xref-elisp-location): New class.
+ (xref-make-elisp-location): New function.
+ (xref-location-marker): New implementation.
+
+2014-12-27 Juri Linkov <juri@linkov.net>
+
+ * minibuffer.el (minibuffer-completion-help):
+ Use shrink-window-if-larger-than-buffer in window-height
+ when temp-buffer-resize-mode is nil.
+
+ * window.el (with-displayed-buffer-window): Remove window-height
+ from the action alist in the temp-buffer-window-show call
+ when window-height is handled explicitly afterwards (bug#19355).
+
+2014-12-27 Juri Linkov <juri@linkov.net>
+
+ Support subdirectories when saving places in dired.
+ * saveplace.el (toggle-save-place, save-place-to-alist)
+ (save-places-to-alist, save-place-dired-hook):
+ Use dired-current-directory instead of dired-directory (bug#19436).
+ (save-place-dired-hook): Add check for alist to make the new
+ format future-proof to allow other possible formats.
+
+2014-12-26 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ python.el: Generate clearer shell buffer names.
+ * progmodes/python.el (python-shell-get-process-name)
+ (python-shell-internal-get-process-name): Use `buffer-name`.
+ (python-shell-internal-get-or-create-process): Simplify.
+
+2014-12-26 Dmitry Gutov <dgutov@yandex.ru>
+
+ Add basic xref apropos implementation to elisp-mode.
+
+ * progmodes/elisp-mode.el (elisp--xref-find-definitions):
+ Filter out nil results.
+ (elisp--xref-find-apropos): New function.
+ (elisp-xref-find): Use it.
+
+ * progmodes/xref.el (xref--show-xrefs): Use `user-error'.
+
+2014-12-25 Filipp Gunbin <fgunbin@fastmail.fm>
+
+ * dired-aux.el (dired-maybe-insert-subdir): Make
+ dired-maybe-insert-subdir always skip trivial files.
+
+2014-12-25 Helmut Eller <eller.helmut@gmail.com>
+ Dmitry Gutov <dgutov@yandex.ru>
+
+ Consolidate cross-referencing commands.
+
+ Move autoloaded bindings for `M-.', `M-,', `C-x 4 .' and
+ `C-x 5 .' from etags.el to xref.el.
+
+ * progmodes/xref.el: New file.
+
+ * progmodes/elisp-mode.el (elisp--identifier-types): New variable.
+ (elisp--identifier-location): New function, extracted from
+ `elisp--company-location'.
+ (elisp--company-location): Use it.
+ (elisp--identifier-completion-table): New variable.
+ (elisp-completion-at-point): Use it.
+ (emacs-lisp-mode): Set the local values of `xref-find-function'
+ and `xref-identifier-completion-table-function'.
+ (elisp-xref-find, elisp--xref-find-definitions)
+ (elisp--xref-identifier-completion-table): New functions.
+
+ * progmodes/etags.el (find-tag-marker-ring): Mark obsolete in
+ favor of `xref--marker-ring'.
+ (tags-lazy-completion-table): Autoload.
+ (tags-reset-tags-tables): Use `xref-clear-marker-stack'.
+ (find-tag-noselect): Use `xref-push-marker-stack'.
+ (pop-tag-mark): Make an alias for `xref-pop-marker-stack'.
+ (etags--xref-limit): New constant.
+ (etags-xref-find, etags--xref-find-definitions): New functions.
+
+2014-12-25 Martin Rudalics <rudalics@gmx.at>
+
+ * cus-start.el (resize-mini-windows): Make it customizable.
+
+2014-12-24 Stephen Leake <stephen_leake@stephe-leake.org>
+
+ * startup.el (fancy-about-text): Change buttons for etc/CONTRIBUTE
+ to (info "(emacs)Contributing"). (Bug#19299)
+
+2014-12-24 Martin Rudalics <rudalics@gmx.at>
+
+ * window.el (mouse-autoselect-window-position-1): New variable.
+ (mouse-autoselect-window-cancel)
+ (mouse-autoselect-window-select, handle-select-window): With
+ delayed autoselection select window only if mouse moves after
+ selecting its frame.
+
+2014-12-24 Michael Albinus <michael.albinus@gmx.de>
+
+ * eshell/esh-ext.el (eshell-find-interpreter): Expand relative
+ remote file names. (Bug#18782)
+
+2014-12-23 Sam Steingold <sds@gnu.org>
+
+ * shell.el (shell-display-buffer-actions): New user option.
+ (shell): Pass it to `pop-to-buffer' instead of hard-coding
+ `pop-to-buffer-same-window'.
+
+2014-12-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/js.el (js--syntax-propertize-regexp-syntax-table): New var.
+ (js-syntax-propertize-regexp): Use it to recognize "slash in
+ a character class" (bug#19397).
+
2014-12-22 Stefan Monnier <monnier@iro.umontreal.ca>
* completion.el: Use post-self-insert-hook (bug#19400).