+2013-06-05 Teodor Zlatanov <tzz@lifelogs.com>
+
+ Generalize symbol prettify support to prog-mode and implement it
+ for perl-mode, cfengine3-mode, and emacs-lisp-mode.
+ * simple.el (prog-prettify-symbols-alist, prog-prettify-symbols)
+ (prog--prettify-font-lock-compose-symbol)
+ (prog-prettify-font-lock-symbols-keywords): New variables and
+ functions to support symbol prettification.
+ * emacs-lisp/lisp-mode.el (lisp--augmented-font-lock-keywords)
+ (lisp--augmented-font-lock-keywords-1)
+ (lisp--augmented-font-lock-keywords-2, lisp-mode-variables)
+ (lisp--prettify-symbols-alist): Implement prettify of lambda.
+ * progmodes/cfengine.el (cfengine3--augmented-font-lock-keywords)
+ (cfengine3--prettify-symbols-alist, cfengine3-mode): Implement
+ prettify of -> => :: strings.
+ * progmodes/perl-mode.el (perl-prettify-symbols)
+ (perl--font-lock-compose-symbol)
+ (perl--font-lock-symbols-keywords): Move to prog-mode.
+ (perl--prettify-symbols-alist): Prettify -> => :: strings.
+ (perl-font-lock-keywords-1)
+ (perl-font-lock-keywords-2): Remove explicit prettify support.
+ (perl--augmented-font-lock-keywords)
+ (perl--augmented-font-lock-keywords-1)
+ (perl--augmented-font-lock-keywords-2, perl-mode): Implement
+ prettify support.
+
+2013-06-05 Leo Liu <sdl.web@gmail.com>
+
+ Re-implement smie matching block highlight using
+ show-paren-data-function. (Bug#14395)
+ * emacs-lisp/smie.el (smie-matching-block-highlight)
+ (smie--highlight-matching-block-overlay)
+ (smie--highlight-matching-block-lastpos)
+ (smie-highlight-matching-block)
+ (smie-highlight-matching-block-mode): Remove.
+ (smie--matching-block-data-cache): New variable.
+ (smie--matching-block-data): New function.
+ (smie-setup): Use smie--matching-block-data for
+ show-paren-data-function.
+
+ * progmodes/octave.el (octave-mode-menu): Fix.
+ (octave-find-definition): Skip garbage lines.
+
+2013-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Fix compilation error with simultaneous dynamic+lexical scoping.
+ Add warning when a defvar appears after the first let-binding.
+ * emacs-lisp/bytecomp.el (byte-compile-lexical-variables): New var.
+ (byte-compile-close-variables): Initialize it.
+ (byte-compile--declare-var): New function.
+ (byte-compile-file-form-defvar)
+ (byte-compile-file-form-define-abbrev-table)
+ (byte-compile-file-form-custom-declare-variable): Use it.
+ (byte-compile-make-lambda-lexenv): Change the argument. Simplify.
+ (byte-compile-lambda): Share call to byte-compile-arglist-vars.
+ (byte-compile-bind): Handle dynamic bindings that shadow
+ lexical bindings.
+ (byte-compile-unbind): Make arg non-optional.
+ (byte-compile-let): Simplify.
+ * emacs-lisp/cconv.el (byte-compile-lexical-variables): Declare var.
+ (cconv--analyse-function, cconv-analyse-form): Populate it.
+ Protect byte-compile-bound-variables to limit the scope of defvars.
+ (cconv-analyse-form): Add missing rule for (defvar <foo>).
+ Remove unneeded rule for `declare'.
+
+ * emacs-lisp/cl-macs.el (cl--compiler-macro-adjoin): Use macroexp-let2
+ so as to avoid depending on cl-adjoin at run-time.
+ * emacs-lisp/cl-lib.el (cl-pushnew): Use backquotes.
+
+ * emacs-lisp/macroexp.el (macroexp--compiling-p): New function.
+ (macroexp--warn-and-return): Use it.
+
+2013-06-05 Leo Liu <sdl.web@gmail.com>
+
+ * eshell/esh-mode.el (eshell-mode): Fix key bindings.
+
+2013-06-04 Leo Liu <sdl.web@gmail.com>
+
+ * progmodes/compile.el (compile-goto-error): Add optional arg NOMSG.
+ (compilation-auto-jump): Suppress the "Mark set" message to give
+ way to exit message.
+
+2013-06-04 Alan Mackenzie <acm@muc.de>
+
+ Remove faulty optimisation from indentation calculation.
+ * progmodes/cc-engine.el (c-guess-basic-syntax): Don't calculate
+ search limit based on 2000 characters back from indent-point.
+
+2013-06-03 Tassilo Horn <tsdh@gnu.org>
+
+ * eshell/em-term.el (cl-lib): Require `cl-lib'.
+
+2013-06-03 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/lisp.el: Use lexical-binding.
+ (lisp--local-variables-1, lisp--local-variables): New functions.
+ (lisp--local-variables-completion-table): New var.
+ (lisp-completion-at-point): Use it complete let-bound vars.
+
+ * emacs-lisp/lisp-mode.el (eval-sexp-add-defvars): Expand macros
+ eagerly (bug#14422).
+
+2013-06-03 Michael Albinus <michael.albinus@gmx.de>
+
+ * autorevert.el (auto-revert-notify-enabled)
+ (auto-revert-notify-rm-watch, auto-revert-notify-add-watch)
+ (auto-revert-notify-event-p, auto-revert-notify-event-file-name)
+ (auto-revert-notify-handler): Handle also gfilenotify.
+
+ * subr.el: (file-notify-handle-event): New defun. Replacing ...
+ (inotify-event-p, inotify-handle-event, w32notify-handle-event):
+ Removed.
+
+2013-06-03 Juri Linkov <juri@jurta.org>
+
+ * bindings.el (search-map): Bind `highlight-symbol-at-point' to
+ `M-s h .'. (Bug#14427)
+
+ * hi-lock.el (highlight-symbol-at-point): New alias for the new
+ command `hi-lock-face-symbol-at-point'.
+ (hi-lock-face-symbol-at-point): New command.
+ (hi-lock-map): Bind `highlight-symbol-at-point' to `C-x w .'.
+ (hi-lock-menu): Add `highlight-symbol-at-point'.
+ (hi-lock-mode): Doc fix.
+
+ * isearch.el (isearch-forward-symbol-at-point): New command.
+ (search-map): Bind `isearch-forward-symbol-at-point' to `M-s .'.
+ (isearch-highlight-regexp): Add a regexp which matches
+ words/symbols for word/symbol mode.
+
+ * subr.el (find-tag-default-bounds): New function with the body
+ mostly moved from `find-tag-default'.
+ (find-tag-default): Move most code to `find-tag-default-bounds',
+ call it and apply `buffer-substring-no-properties' afterwards.
+
+2013-06-03 Tassilo Horn <tsdh@gnu.org>
+
+ * eshell/em-term.el (eshell-term-initialize): Use
+ `cl-intersection' rather than `intersection'.
+
+2013-06-02 Xue Fuqiao <xfq.free@gmail.com>
+
+ * vc/log-view.el: Doc fix.
+ (log-view-mode-map): Copy keymap from `special-mode-map'.
+
+2013-06-02 Eric Ludlam <zappo@gnu.org>
+
+ * emacs-lisp/eieio.el (eieio--defalias, eieio-hook)
+ (eieio-error-unsupported-class-tags, eieio-skip-typecheck)
+ (eieio-optimize-primary-methods-flag, eieio-initializing-object)
+ (eieio-unbound, eieio-default-superclass)
+ (eieio--define-field-accessors, method-static, method-before)
+ (method-primary, method-after, method-num-lists)
+ (method-generic-before, method-generic-primary)
+ (method-generic-after, method-num-slots)
+ (eieio-specialized-key-to-generic-key)
+ (eieio--check-type, class-v, class-p)
+ (eieio-class-name, define-obsolete-function-alias)
+ (eieio-class-parents-fast, eieio-class-children-fast)
+ (same-class-fast-p, class-constructor, generic-p)
+ (generic-primary-only-p, generic-primary-only-one-p)
+ (class-option-assoc, class-option, eieio-object-p)
+ (class-abstract-p, class-method-invocation-order)
+ (eieio-defclass-autoload-map, eieio-defclass-autoload)
+ (eieio-class-un-autoload, eieio-defclass)
+ (eieio-eval-default-p, eieio-perform-slot-validation-for-default)
+ (eieio-add-new-slot, eieio-copy-parents-into-subclass)
+ (eieio--defgeneric-init-form, eieio-defgeneric-form)
+ (eieio-defgeneric-reset-generic-form)
+ (eieio-defgeneric-form-primary-only)
+ (eieio-defgeneric-reset-generic-form-primary-only)
+ (eieio-defgeneric-form-primary-only-one)
+ (eieio-defgeneric-reset-generic-form-primary-only-one)
+ (eieio-unbind-method-implementations)
+ (eieio--defmethod, eieio--typep)
+ (eieio-perform-slot-validation, eieio-validate-slot-value)
+ (eieio-validate-class-slot-value, eieio-barf-if-slot-unbound)
+ (eieio-oref, eieio-oref-default, eieio-default-eval-maybe)
+ (eieio-oset, eieio-oset-default, eieio-slot-originating-class-p)
+ (eieio-slot-name-index, eieio-class-slot-name-index)
+ (eieio-set-defaults, eieio-initarg-to-attribute)
+ (eieio-attribute-to-initarg, eieio-c3-candidate)
+ (eieio-c3-merge-lists, eieio-class-precedence-c3)
+ (eieio-class-precedence-dfs, eieio-class-precedence-bfs)
+ (eieio-class-precedence-list, eieio-generic-call-methodname)
+ (eieio-generic-call-arglst, eieio-generic-call-key)
+ (eieio-generic-call-next-method-list)
+ (eieio-pre-method-execution-functions, eieio-generic-call)
+ (eieio-generic-call-primary-only, eieiomt-method-list)
+ (eieiomt-optimizing-obarray, eieiomt-install)
+ (eieiomt-add, eieiomt-next, eieiomt-sym-optimize)
+ (eieio-generic-form, eieio-defmethod, make-obsolete)
+ (eieio-defgeneric, make-obsolete): Moved to eieio-core.el
+ (defclass): Remove `eval-and-compile' from macro.
+ (call-next-method, shared-initialize): Instead of using
+ `scoped-class' variable, use new eieio--scoped-class, and
+ eieio--with-scoped-class.
+ (initialize-instance): Rename local variable 'scoped-class' to
+ 'this-class' to remove ambiguitity from old global.
+
+ * emacs-lisp/eieio-core.el: New file. Derived from key parts of
+ eieio.el.
+ (eieio--scoped-class-stack): New variable
+ (eieio--scoped-class): New fcn
+ (eieio--with-scoped-class): New scoping macro.
+ (eieio-defclass): Use pushnew instead of add-to-list.
+ (eieio-defgeneric-form-primary-only-one, eieio-oset-default)
+ (eieio-slot-name-index, eieio-set-defaults, eieio-generic-call)
+ (eieio-generic-call-primary-only, eieiomt-add): Instead of using
+ `scoped-class' variable, use new eieio--scoped-class, and
+ eieio--with-scoped-class.
+
+ * emacs-lisp/eieio-base.el (cl-lib): Require during compile.
+
+2013-06-02 Tassilo Horn <tsdh@gnu.org>
+
+ * eshell/esh-ext.el (eshell-external-command): Pass args to
+ `eshell-find-interpreter'.
+ (eshell-find-interpreter): Add new second parameter ARGS.
+
+ * eshell/em-script.el (eshell-script-initialize): Add second arg
+ to the function added as MATCH to `eshell-interpreter-alist'
+
+ * eshell/em-dirs.el (eshell-dirs-initialize): Add second arg to
+ the function added as MATCH to `eshell-interpreter-alist'
+
+ * eshell/em-term.el (eshell-visual-subcommands): New defcustom.
+ (eshell-visual-options): New defcustom.
+ (eshell-escape-control-x): Adapt docstring.
+ (eshell-term-initialize): Test `eshell-visual-subcommands' and
+ `eshell-visual-options' in addition to `eshell-visual-commands'.
+ (eshell-exec-visual): Pass args to `eshell-find-interpreter'.
+
+2013-06-01 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-indent-block-enders): Add break,
+ continue and raise keywords.
+
+2013-06-01 Glenn Morris <rgm@gnu.org>
+
+ * pcmpl-gnu.el (pcomplete/tar): Check obsolete variable is bound.
+
+ Plain (f)boundp silences compilation warnings since Emacs 22.1.
+ * progmodes/cc-cmds.el (delete-forward-p):
+ * progmodes/cc-defs.el (buffer-syntactic-context-depth):
+ * progmodes/cc-engine.el (buffer-syntactic-context):
+ * progmodes/cc-fonts.el (face-property-instance):
+ * progmodes/cc-mode.el (set-keymap-parents):
+ * progmodes/cc-vars.el (get-char-table): No need for cc-bytecomp-defun.
+ * progmodes/cc-defs.el (c-set-region-active, c-beginning-of-defun-1)
+ * progmodes/cc-mode.el (c-make-inherited-keymap): Use plain fboundp.
+ * progmodes/cc-defs.el (zmacs-region-stays, zmacs-regions)
+ (lookup-syntax-properties): Remove unecessary cc-bytecomp-defvar.
+
+ * progmodes/cc-vars.el (other): Emacs has this widget since
+ at least 21.1, so don't (re)define it.
+
+ * eshell/em-cmpl.el (eshell-cmpl-initialize):
+ Replace the obsolete alias pcomplete-arg-quote-list.
+
+2013-06-01 Leo Liu <sdl.web@gmail.com>
+
+ * progmodes/octave.el (octave-mode-syntax-table): Give `.'
+ punctuation syntax.
+ (inferior-octave-minimal-columns)
+ (inferior-octave-last-column-width): New variables.
+ (inferior-octave-track-window-width-change): New function.
+ (inferior-octave-mode): Adjust column width so that Octave output,
+ for example from 'ls', can fit into the window nicely.
+
+2013-05-31 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/ruby-mode.el (ruby-syntax-expansion-allowed-p):
+ Highlight expansions inside regexp literals.
+
2013-05-31 Glenn Morris <rgm@gnu.org>
+ * obsolete/sym-comp.el (symbol-complete):
+ Replace obsolete completion-annotate-function.
+
* progmodes/cc-vars.el (c-make-macro-with-semi-re): Silence compiler.
2013-05-31 Dmitry Gutov <dgutov@yandex.ru>
* emacs-lisp/syntax.el (syntax-propertize-multiline):
Use `syntax-multiline' text property consistently instead of
- `font-lock-multiline'. (bug#14237).
+ `font-lock-multiline'. (Bug#14237)
2013-04-26 Glenn Morris <rgm@gnu.org>
2013-04-19 Masatake YAMATO <yamato@redhat.com>
* progmodes/sh-script.el (sh-imenu-generic-expression):
- Handle function names with a single character. (Bug#14111)
+ Handle function names with a single character. (Bug#14111)
-2013-04-19 Dima Kogan <dima@secretsauce.net> (tiny change)
+2013-04-19 Dima Kogan <dima@secretsauce.net> (tiny change)
* progmodes/gud.el (gud-perldb-marker-filter): Understand position info
for subroutines defined in an eval (bug#14182).
2013-04-03 Alan Mackenzie <acm@muc.de>
- Handle `parse-partial-sexp' landing inside a comment opener
- (Bug#13244). Also adapt to the new values of element 7 of a parse
- state.
+ Handle `parse-partial-sexp' landing inside a comment opener (Bug#13244).
+ Also adapt to the new values of element 7 of a parse state.
* progmodes/cc-engine.el (c-state-pp-to-literal): New optional
parameter `not-in-delimiter'. Handle being inside comment opener.
2013-03-08 Jambunathan K <kjambunathan@gmail.com>
* hi-lock.el (hi-lock-read-regexp-defaults-function): New var.
- (hi-lock-read-regexp-defaults): New defun.
+ (hi-lock-read-regexp-defaults): New defun.
(hi-lock-line-face-buffer, hi-lock-face-buffer)
(hi-lock-face-phrase-buffer): Propagate above change.
Update docstring (bug#13892).