emacs/lisp/emacs-lisp
Mattias Engdegård 07367e5b95 Add rx extension mechanism
Add a built-in set of extension macros: `rx-define', `rx-let' and
`rx-let-eval'.

* lisp/emacs-lisp/rx.el (rx-constituents, rx-to-string): Doc updates.
(rx--builtin-symbols, rx--builtin-names, rx--local-definitions)
(rx--lookup-def, rx--substitute, rx--expand-template)
(rx--make-binding, rx--make-named-binding, rx--extend-local-defs)
(rx-let-eval, rx-let, rx-define): New.
(rx--translate-symbol, rx--translate-form): Use extensions if any.
(rx): Use local definitions.
* test/lisp/emacs-lisp/rx-tests.el (rx-let, rx-define)
(rx-to-string-define, rx-let-define, rx-let-eval): New.
* etc/NEWS (Changes in Specialized Modes and Packages):
* doc/lispref/searching.texi (Rx Notation, Rx Functions, Extending Rx):
Add node about rx extensions.
2019-09-25 14:29:50 -07:00
..
advice.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
autoload.el Fix some file-mode races 2019-09-16 18:00:59 -07:00
avl-tree.el lisp/*.el: Fix typos and other trivial doc fixes 2019-09-21 00:27:53 +02:00
backquote.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
backtrace.el Improve print output options commands in backtrace-mode (bug#36566) 2019-09-13 13:43:07 -07:00
benchmark.el Update author/maintainer info 2019-05-26 01:00:16 -07:00
bindat.el Fix byte compilation warning in bindat.el 2019-06-15 16:33:20 +02:00
byte-opt.el New function time-convert 2019-08-05 18:37:29 -07:00
byte-run.el (with-suppressed-warnings): Also suppress warnings when not byte-compiling 2019-06-22 23:29:00 -04:00
bytecomp.el lisp/*.el: Fix typos and other trivial doc fixes 2019-09-21 00:27:53 +02:00
cconv.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
chart.el Fix usage of remove-text-properties 2019-08-01 17:04:53 +03:00
check-declare.el Make check-declare understand cl-defun 2019-07-13 16:49:23 +02:00
checkdoc.el lisp/*.el: Fix typos and other trivial doc fixes 2019-09-21 00:27:53 +02:00
cl-extra.el Support bool-vectors in cl-extra.el 2019-08-10 11:14:44 +03:00
cl-generic.el lisp/*.el: Fix typos and other trivial doc fixes 2019-09-21 00:27:53 +02:00
cl-indent.el Fix for lisp tagbody indentation 2019-07-09 15:51:50 +02:00
cl-lib.el Preserve more markers when reverting .gpg files 2019-09-04 15:20:00 +02:00
cl-macs.el Merge commit '74e9799bd89484b8d15bdd6597c68fc00d07e7f7' 2019-09-10 03:37:51 -07:00
cl-preloaded.el Merge from origin/emacs-26 2018-12-31 17:57:29 -08:00
cl-print.el Improve performance of backtrace printing (bug#36566) 2019-09-13 13:43:07 -07:00
cl-seq.el * lisp/emacs-lisp/bytecomp.el (byte-compile-dynamic): Mark obsolete 2019-06-21 10:30:50 -04:00
copyright.el Omit/rewrite useless regexp repetitions 2019-04-12 19:43:41 -07:00
crm.el Rename variables and functions with "auto-load" in their names 2019-08-15 16:02:20 -07:00
cursor-sensor.el * lisp/emacs-lisp/cursor-sensor.el: Fix sensor behavior with overlays 2019-03-08 17:20:58 -05:00
debug.el ; * lisp/emacs-lisp/debug.el (debugger-mode): Doc fix. (Bug#37352) 2019-09-25 11:09:09 +03:00
derived.el ; * lisp/emacs-lisp/derived.el (define-derived-mode): Doc fix. 2019-07-28 17:31:17 +03:00
disass.el Compilation fix for previous change 2019-06-13 13:56:16 +02:00
easy-mmode.el Respect global-eldoc-mode in minibuffers (Bug#36886) 2019-08-20 20:20:52 -04:00
easymenu.el easy-menu-define doc string fix 2019-08-03 20:32:24 +02:00
edebug.el New edebug-spec, nested-backquote-form. This fixes bug #31090 2019-09-24 17:06:20 +00:00
eieio-base.el Move around defgeneric/defmethods in eieio 2019-06-19 17:12:29 +02:00
eieio-compat.el Merge from origin/emacs-26 2018-12-31 17:57:29 -08:00
eieio-core.el Change the eieio-declare-slots function into a macro 2019-06-17 15:48:39 +02:00
eieio-custom.el lisp/*.el: Fix typos and other trivial doc fixes 2019-09-21 00:27:53 +02:00
eieio-datadebug.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
eieio-opt.el lisp/*.el, src/*.c: Fix typos in docstrings 2019-09-19 04:32:25 +02:00
eieio-speedbar.el Fix regular-expression glitches and typos 2019-03-04 18:00:58 -08:00
eieio.el Move around defgeneric/defmethods in eieio 2019-06-19 17:12:29 +02:00
eldoc.el Respect global-eldoc-mode in minibuffers (Bug#36886) 2019-08-20 20:20:52 -04:00
elint.el * lisp/emacs-lisp/elint.el (elint-directory-skip-re): Fix doc typo. 2019-09-11 11:18:38 +02:00
elp.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
ert-x.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
ert.el Fix ‘make check’ failure 2019-07-26 09:41:55 -07:00
ewoc.el Fixes for "Maintainer:" and related lines 2019-05-19 21:34:27 -07:00
faceup.el Update more copyright years 2018-12-31 18:47:22 -08:00
find-func.el Fix completion in `read-library-name' 2019-08-27 09:46:28 +02:00
float-sup.el Suppress warning about pi not having a prefix 2019-06-12 17:46:06 +02:00
generator.el lisp/*.el, src/*.c: Fix typos in docstrings 2019-09-19 04:32:25 +02:00
generic.el Revert "* lisp/calc/calc-ext.el (math-scalarp): Fix typo" 2019-06-26 10:24:59 -04:00
gv.el Tweak gv-define-setter debug setting 2019-07-15 11:16:37 +02:00
helper.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
inline.el Fix inline-quote Edebug spec 2019-07-21 15:40:48 +02:00
let-alist.el * lisp/emacs-lisp/let-alist.el: Bump version to 1.0.6 (Bug#23244). 2019-07-30 21:13:36 -04:00
lisp-mnt.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
lisp-mode.el Merge from origin/emacs-26 2019-08-20 09:01:55 -07:00
lisp.el lisp/*.el: Fix typos and other trivial doc fixes 2019-09-21 00:27:53 +02:00
macroexp.el Clarify macroexp-let* doc string 2019-08-04 14:43:43 +02:00
map-ynp.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
map.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
nadvice.el Tweak output of doc in advice--make-docstring 2019-07-13 17:48:53 +02:00
package-x.el lisp/*.el: Fix typos and other trivial doc fixes 2019-09-21 00:27:53 +02:00
package.el Several doc fixes in package.el 2019-09-21 23:09:14 +02:00
pcase.el Revert "* lisp/calc/calc-ext.el (math-scalarp): Fix typo" 2019-06-26 10:24:59 -04:00
pp.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
radix-tree.el * lisp/emacs-lisp/radix-tree.el (pcase-defmacro): Improve docstring 2019-04-19 23:31:59 -04:00
re-builder.el New rx implementation 2019-09-25 14:29:50 -07:00
regexp-opt.el Optimise more inputs to `regexp-opt' (bug#36444) 2019-07-04 17:18:15 +02:00
regi.el Remove Maintainer: when it duplicates Author: 2019-05-26 01:00:15 -07:00
ring.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
rmc.el Make the NSM not pop up an X dialogue on non-mouse actions 2019-09-04 15:20:00 +02:00
rx.el Add rx extension mechanism 2019-09-25 14:29:50 -07:00
seq.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
shadow.el Merge from origin/emacs-26 2018-12-31 17:57:29 -08:00
smie.el Revert "* lisp/calc/calc-ext.el (math-scalarp): Fix typo" 2019-06-26 10:24:59 -04:00
subr-x.el Move describe-face to the new help-fns machinery 2019-09-21 00:45:41 +02:00
syntax.el Document syntax-ppss-context 2019-06-24 00:04:04 +02:00
tabulated-list.el Make the reverse tabulated list sort stable 2019-09-21 00:06:58 +02:00
tcover-ses.el lisp/*.el: Fix typos and other trivial doc fixes 2019-09-21 00:27:53 +02:00
tcover-unsafep.el Remove Maintainer: when it duplicates Author: 2019-05-26 01:00:15 -07:00
testcover.el lisp/*.el: Fix typos and other trivial doc fixes 2019-09-21 00:27:53 +02:00
text-property-search.el Improve documentation of 'text-property-search-forward' 2019-09-25 11:42:35 +03:00
thunk.el * lisp/emacs-lisp/thunk.el (thunk-delay): Fix memory leak 2019-06-04 12:55:53 -04:00
timer-list.el Escape newlines when printing functions in timer list 2019-06-13 14:11:39 +02:00
timer.el New function time-convert 2019-08-05 18:37:29 -07:00
tq.el Tweak tq queue processing 2019-08-03 16:33:06 +02:00
trace.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
unsafep.el Remove Maintainer: when it duplicates Author: 2019-05-26 01:00:15 -07:00
warnings.el Rename variables and functions with "auto-load" in their names 2019-08-15 16:02:20 -07:00