| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
* lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
use 'bobp', instead compare window-point with 1. (Bug#21730)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(cl--generic-derived-specializers): New function.
(cl--generic-derived-generalizer): New generalizer.
(cl-generic-generalizers): New specializer (derived-mode MODE).
(cl--generic-split-args): Apply the rewriter, if any.
(cl-generic-define-context-rewriter): New macro.
(major-mode): Use it to define a new context-rewriter, so we can write
`(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
* lisp/frame.el (window-system): New context-rewriter so we can write
`(window-system VAL)' instead of (window-system (eql VAL)).
(cl--generic-split-args): Apply the rewriter, if any.
(frame-creation-function): Use the new syntax.
* lisp/term/x-win.el (window-system-initialization)
(handle-args-function, frame-creation-function)
(gui-backend-set-selection, gui-backend-selection-owner-p)
(gui-backend-selection-exists-p, gui-backend-get-selection):
* lisp/term/w32-win.el (window-system-initialization)
(handle-args-function, frame-creation-function)
(gui-backend-set-selection, gui-backend-get-selection)
(gui-backend-selection-owner-p, gui-backend-selection-exists-p):
* lisp/term/pc-win.el (gui-backend-get-selection)
(gui-backend-selection-exists-p, gui-backend-selection-owner-p)
(gui-backend-set-selection, window-system-initialization)
(frame-creation-function, handle-args-function):
* lisp/term/ns-win.el (window-system-initialization)
(handle-args-function, frame-creation-function)
(gui-backend-set-selection, gui-backend-selection-exists-p)
(gui-backend-get-selection):
* lisp/startup.el (handle-args-function):
* lisp/term/xterm.el (gui-backend-get-selection)
(gui-backend-set-selection): Use the new syntax.
|
|
|
|
|
| |
(smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2, smie-prec2->grammar):
Use `declare'.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(cl--generic-generalizer): Add `name' field.
(cl-generic-make-generalizer): Add corresponding `name' argument.
(cl-generic-define-generalizer): New macro.
(cl--generic-head-generalizer, cl--generic-eql-generalizer)
(cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
(cl--generic-t-generalizer): Use it.
(cl-generic-ensure-function): Add `noerror' argument.
(cl-generic-define): Use it so we don't follow aliases.
(cl-generic-define-method): Preserve pre-existing ordering of methods.
(cl--generic-arg-specializer): New function.
(cl--generic-cache-miss): Use it.
(cl-generic-generalizers): Only fset a temporary definition
during bootstrap.
(cl--generic-struct-tag, cl--generic-struct-specializers):
Allow extra arguments.
* lisp/emacs-lisp/eieio-compat.el (eieio--generic-static-symbol-generalizer)
(eieio--generic-static-object-generalizer): Use cl-generic-define-generalizer.
(eieio--generic-static-symbol-specializers): Allow extra arguments.
* lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
(eieio--generic-subclass-generalizer): Use cl-generic-define-generalizer.
(eieio--generic-subclass-specializers): Allow extra arguments.
|
| |
|
|
|
|
|
| |
* lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
* lisp/simple.el (delete-trailing-whitespace): Undo last change.
|
|
|
|
|
|
|
| |
(macroexp-unprogn): Make sure we never return an empty list.
(macroexp-if): Remove unused (and unsafe) optimization.
Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
occur occasionally.
|
|
|
|
| |
* doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
* lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
`load-path' should contain only directory names
|
|
|
|
|
|
|
|
| |
thunk.el is extracted from stream.el in ELPA, with additional tests.
* lisp/emacs-lisp/thunk.el: New file.
* test/automated/thunk-tests.el: New file.
* etc/NEWS: Add information about thunk.el
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is more compatible with Common Lisp and XEmacs (Bug#21690). See:
http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
* lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
(color-xyz-to-srgb, color-xyz-to-lab):
* lisp/emacs-lisp/cl-extra.el (cl-float-limits):
* lisp/net/shr-color.el (shr-color-hue-to-rgb)
(shr-color-hsl-to-rgb-fractions):
Exploit the change to simplify the code a bit.
* lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
Don’t complain about single-argument calls to ‘/’.
* src/data.c (arith_driver, float_arith_driver):
Implement the change.
|
|
|
|
|
|
| |
* lisp/emacs-lisp/seq.el (seq-position): New function.
* test/automated/seq-tests.el: New tests for seq-position.
* doc/lispref/sequences.texi: Add documentation for `seq-position'.
|
| |
|
|
|
|
|
|
|
| |
(package--old-archive-priorities): New variable.
(package-read-all-archive-contents, package-menu--refresh): Use it
to decide when the `package-archive-contents' needs to be read
again.
|
|
|
|
|
|
| |
* lisp/emacs-lisp/map.el:
* lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
macros.
|
|
|
|
|
| |
* lisp/emacs-lisp/map.el:
* lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
|
|
|
|
| |
Check if column can be sorted before trying. (Bug#21639)
|
|
|
|
|
| |
* lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
not a package-desc object. Also clarify documentation. (Bug#21625)
|
|
|
|
|
|
|
|
|
|
| |
This is in response to a problem report by Kaushal Modi in:
http://bugs.gnu.org/21588#25
* lisp/cedet/mode-local.el (describe-mode-local-overload):
* lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
* lisp/info-xref.el (info-xref-check-all-custom):
* lisp/mail/emacsbug.el (report-emacs-bug-hook):
Prefer directed to undirected single quotes in diagnostics.
|
| |
|
| |
|
|
|
|
|
|
|
| |
* doc/lispref/sequences.texi:
* lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
guarantee that the returned value is the first non-nil value that
resulted from applying the predicate.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
amend to match current modes and functions.
(edebug-set-initial-mode): Uncomment and change from setting a defun's
`edebug-initial-mode''s property to setting the variable
`edebug-initial-mode'.
(top level): Create new binding C-x C-a C-m for
`edebug-set-initial-mode'.
doc/lispref/edebug.texi (Edebug Execution Modes): document
`edebug-set-initial-mode' and its new key binding.
(Edebug Options): Mention the new command in the pertinent place.
etc/NEWS: Write entry for this change.
|
|
|
|
|
|
| |
* src/syntax.c (parse_sexp_propertize): Fix last fix.
* lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
* lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
|
|
|
|
|
| |
This fixes the bootstrapping problem of `let-when-compile' using
`cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* lisp/emacs-lisp/smie.el (smie-rules-function): Document new
`empty-line-token' element.
(smie-indent-empty-line): New function.
(smie-indent-functions): Add it.
* lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro behavior
and use the new `empty-line-token' element (bug#21526).
(prolog-mode-variables): Fix comment-start-skip setting to match
comment-start.
* test/indent/prolog.prolog: Add nested indentation tests.
* lisp/newcomment.el (comment-normalize-vars): Fix default value of
comment-start-skip not to misuse submatch 1.
|
|
|
|
|
|
|
|
| |
* lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
the parameter `sentinel' to `default'.
* doc/lispref/sequences.texi (Sequence Functions): Update the
documentation for `seq-find' accordingly.
|
| |
|
|
|
|
|
|
| |
* lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
individual chars with grave quotes instead of straight quotes, as
this works better when they are translated to curved quotes.
|
|
|
|
|
|
|
|
| |
* lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
In particular, don't refer to 'diary-entry-time', because it is
unavailable until diary-lib is loaded. Also, refer to
'timer-duration-words', not 'timer-duration', as the latter's doc
string says nothing about the accepted strings.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(font-lock-fontify-block): Don't let-bind it.
(font-lock-compile-keywords): Don't use it.
(font-lock-set-defaults): Don't set it. Allow the variable alist to
start one slot earlier, instead.
* lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
Don't declare.
(syntax-ppss): Don't use it either.
* lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
from docstring.
* doc/emacs/display.texi (Font Lock): Don't mention
font-lock-beginning-of-syntax-function.
* doc/lispref/modes.texi (Font Lock Basics): Update description of
font-lock-defaults.
(Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
* lisp/loadhist.el (unload-feature-special-hooks):
Remove font-lock-beginning-of-syntax-function.
* lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
* lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
font-lock-beginning-of-syntax-function.
|
|
|
|
|
|
|
|
|
|
|
| |
This patch should not change behavior. It typically omits backslashes
where they are redundant (e.g., in the string literal "^\$").
In a few places, insert backslashes where they make regular
expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
"^\\*", which has the same effect as a regular expression.
Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
RCS IDs, as that makes it clearer that the backslash is intended.
|
|
|
|
|
|
|
| |
* lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
search argument. (Bug#21492) (Bug#21493)
Copyright-paperwork-exempt: yes
|
|
|
|
|
| |
* lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
(eieio-oref-default): Handle class properly.
|
|
|
|
|
|
|
| |
Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
(cl-lib-fdefs): Add defgeneric.
(cl-kw): Add all elements of eieio-kw and cl-lib-kw.
(eieio-kw, cl-lib-kw, el-kw): Remove.
|
|
|
|
|
|
|
|
|
|
| |
Fixes debbugs#21449.
lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
(lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
(lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
(lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
Insert "\\|\\\\." into regexps which match symbols.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
(syntax-propertize): Set syntax-propertize--done even if
syntax-propertize-function is nil. Avoid recursive invocations.
(syntax-propertize-chunks): New var.
(internal--syntax-propertize): Use it. Rename from syntax--jit-propertize.
Simplify.
(parse-sexp-propertize-function): Don't set any more.
* src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
(parse_sexp_propertize): Don't assume charpos is not yet propertized.
Call Qinternal__syntax_propertize instead of
Vparse_sexp_propertize_function. Truncate e_property if needed.
(update_syntax_table_forward): Streamline.
(syms_of_syntax): Define Qinternal__syntax_propertize.
(syntax_propertize__done): Rename from parse_sexp_propertize_done.
|
|
|
|
|
|
|
|
|
|
|
| |
This function is similar to `seq-some' but returns the found element.
In the cases where nil can be the found element, a sentinel optional
argument can be provided to avoid ambiguities.
* lisp/emacs-lisp/seq.el (seq-find): New function.
* test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
* doc/lispref/sequences.texi (Sequence Functions): Add documentation for
seq-find.
|
|
|
|
|
|
|
| |
Problem reported by David Kastrup in:
http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
* lisp/international/mule-cmds.el (leim-list-header):
Use format-message with an ASCII-only format.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
(parse-sexp-propertize-function): Use it.
(syntax-propertize): Disable parse-sexp-propertize-function.
* src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
New functions.
(syms_of_syntax): New vars `parse-sexp-propertize-done' and
`parse-sexp-propertize-function'.
* src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
(UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
(SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
* lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
Don't assume `point' is set.
|
| |
|