2018-02-05  Michael Heerdegen  <michael_heerdegen@web.de>

	* el-search/el-search.el: Work around Emacs Bug#29857

	While trying to get rid of old-style backquotes, Emacs developers made 
	something like (read "(,@a)") - i.e. reading a subexpression of a 
	backquote expression, something that this package needs to be able to do
	- raise an error.  A new variable `force-new-style-backquotes' has now
	been introduced to prevent this kind of error and force everything to be
	"interpreted as new style".

	(el-search-read): New function binding `force-new-style-backquotes' to 
	non-nil when this variable is defined. Change all callers of `read' to
	use `el-search-read' instead.

2018-01-28  Michael Heerdegen  <michael_heerdegen@web.de>

	* el-search/el-search.el: Add `el-search-edit-search-description'

	(el-search-edit-search-description): New command to modify the 
	description of the current search.

2018-01-28  Michael Heerdegen  <michael_heerdegen@web.de>

	Allow to save the current el-search to a register

	* el-search/el-search.el (el-search-to-register)
	(el-search-clone-to-register): New commands.
	(register-val-jump-to, register-val-describe): Implement methods for
	`el-search-object' values.

2018-01-28  Michael Heerdegen  <michael_heerdegen@web.de>

	Implement `cl-print-object' for el-search-objects

	* el-search/el-search.el: Add (cl-print "1.0") to Package-Requires. 
	Require cl-print.
	(cl-print-object): Implement for `el-search-object's.

2018-01-21  Michael Heerdegen  <michael_heerdegen@web.de>

	Add command `el-search-ibuffer-marked-buffers'

	* el-search/el-search.el (el-search-ibuffer-marked-buffers): New 
	command.
	(el-search-loop-over-bindings): Add binding in `ibuffer-mode-map'. Also
	mention the command in the key binding list in the file header.

2018-01-21  Michael Heerdegen  <michael_heerdegen@web.de>

	* el-search/el-search.el: Bump version to 1.5

2018-01-21  Michael Heerdegen  <michael_heerdegen@web.de>

	Make el-search key binding installation more flexible

	Implement a function `el-search-install-bindings-under-prefix' that the
	user can call to install repeatable versions of the el-search commands
	under a prefix key.  Update header (list of key bindings etc.)
	accordingly.  Also remove the el-search-keep-hl -> 'once hack, since it
	is not compatible with this change.

	* el-search/el-search.el (el-search-read-expression-map): Bind M-RET to
	`el-search-set-occur-flag-exit-minibuffer'.
	(el-search-use-transient-map, el-search-keep-transient-map-commands): 
	New defvars.
	(el-search-loop-over-bindings): New abstract key binding function 
	generalizing `el-search-install-shift-bindings'.
	(el-search-install-shift-bindings): Use it.
	(el-search-install-bindings-under-prefix): New key binding function.
	(el-search-prefix-key-transient-map)
	(el-search-shift-bindings-bind-function)
	(el-search-bind-under-prefix-key-function): New helper variables and 
	functions.
	(el-search-prefix-key-maybe-set-transient-map): New function to activate
	the `el-search-prefix-key-transient-map'.
	(el-search-setup-search-1, el-search-jump-to-search-head)
	(el-search-continue-search, el-search-pattern-backwards): Call it.
	(el-search-keep-hl, el-search-hl-post-command-fun)
	(el-search--occur-button-action): Remove implementation of 
	el-search-keep-hl -> 'once hack.

2018-01-21  Michael Heerdegen  <michael_heerdegen@web.de>

	* el-search/el-search.el: Tweak el-search-jump-to-search-head

	(el-search-jump-to-search-head): Don't use :annotation-function - 
	directly add search description to the candidate instead so that the 
	user can use completion on it.	Improve docstring.

2018-01-21  Michael Heerdegen  <michael_heerdegen@web.de>

	Tweak el-search--get-search-description-string

	* el-search/el-search.el (el-search--get-search-description-string): 
	Some minor tweaks.

2018-01-21  Michael Heerdegen  <michael_heerdegen@web.de>

	* el-search/el-search.el: Some minor tweaks

	(el-search-read-pattern-for-interactive): Add docstring.
	(el-search-kill-left-over-search-buffers): Improve docstring.
	(el-search-install-shift-bindings): Move defun.
	(el-search--format-replacement): Decrease `sit-for' waiting time after 
	messaging the current head file/buffer to 1.0 seconds.
	(el-search--search-and-replace-pattern): Use faster
	`el-search--search-pattern-1' instead of `el-search-forward' at one 
	place.

	And some comment changes.

2018-01-08  Michael Heerdegen  <michael_heerdegen@web.de>

	Declare any search started with `el-search-this-sexp' single-buffer

	* el-search/el-search.el (el-search-this-sexp): Do it.

2018-01-08  Michael Heerdegen  <michael_heerdegen@web.de>

	* el-search/el-search.el: Add two more autoload cookies

	(el-search-pattern-backwards, el-search-this-sexp): Add autoload cookie.

2018-01-08  Michael Heerdegen  <michael_heerdegen@web.de>

	New option value ask-multi for `el-search-auto-save-buffers'

	This should be a bit more convenient than 'ask in practice.

	* el-search/el-search.el (el-search-auto-save-buffers): Add new value
	'ask-multi.
	(el-search--search-and-replace-pattern): Do the right thing for the new
	value.
	* el-search/NEWS: New file, start filling it.

2018-01-05  Michael Heerdegen  <michael_heerdegen@web.de>

	* el-search/el-search.el: Get rid of orgstruct-mode

	orgstruct-mode will probably be obsoleted soon.	 Replace its usage in
	*El Occur* buffers with similar functions offered by outline.el.

	(el-search-occur-cycle): Reimplement to use functions from outline.el; 
	add docstring.
	(el-search-occur-tab-command): New command.
	(el-search-occur-mode-map): Bind TAB to `el-search-occur-tab-command'.
	(el-search-occur-mode): Enable `outline-minor-mode' instead of
	`orgstruct-mode'.

2018-01-05  Michael Heerdegen  <michael_heerdegen@web.de>

	Allow `string' and `symbol' el-search patterns to set match data

	The rationale is to allow to use the match data when replacing symbols 
	and strings via `el-search-query-replace'.

	* packages/el-search/el-search.el (el-search--string-matcher): Use
	`string-match' instead of `string-match-p.
	(symbol): Add to documentation an example of using match data with 
	query-replace.

2018-01-05  Michael Heerdegen  <michael_heerdegen@web.de>

	Update copyrights of some packages

	Update copyrights of el-search, iterators, on-screen and smart-yank.

2017-12-31  Michael Heerdegen  <michael_heerdegen@web.de>

	Make the some-context function include an opening backquote

	When choosing `el-search-occur-get-some-context' as
	`el-search-get-occur-context-function', when the calculated context 
	follows a backquote, also include that backquote.

	This also works around one symptom of Emacs bug#29857.

	* el-search/el-search.el (el-search-occur-get-some-context): Do it.

2017-12-26  Michael Heerdegen  <michael_heerdegen@web.de>

	* el-search/el-search.el: Some buffer display related minor tweaks

	(el-search-jump-to-search-head): Use `redisplay' and `sleep-for' to 
	ensure the correct behavior when `pop-to-buffer' generated frame focus 
	events.
	(el-search-occur-jump-to-match): Call `el-search--occur-button-action' 
	with an empty `display-buffer' action list.
	(el-search--occur-button-action): Define with `cl-defun' to be able to 
	decide whether the DISPLAY-BUFFER-ACTION argument is specified.
	(el-search--search-and-replace-pattern): Minor tweaks.

2017-12-26  Michael Heerdegen  <michael_heerdegen@web.de>

	; * el-search/el-search.el: Mention Emacs Bug#29857 in the header

2017-12-26  Michael Heerdegen  <michael_heerdegen@web.de>

	* el-search/el-search.el: Declare doc-string in el-search-defpattern

2017-12-07  Michael Heerdegen  <michael_heerdegen@web.de>

	packages/el-search: Some minor tweaks

	* el-search/el-search.el: Explicitly require 'seq.
	(el-search--read-pattern-for-interactive): Rename to
	`el-search-read-pattern-for-interactive'; change callers.
	(el-search--search-and-replace-pattern): Give a short message when 
	switching to the next buffer. And some doc changes, minor tweaks, added
	comments, and wording improvements.
	* el-search/el-search-x.el (el-search--file-changed-p): Don't wrap into
	`ignore-errors' and don't nil-bind `vc-git-diff-switches' (not needed).

2017-12-06  Michael Heerdegen  <michael_heerdegen@web.de>

	* el-search/el-search.el: Shorten the query-replace prompt

	Try to make the prompt of `el-search-query-replace' fit into one visible
	line.

	(el-search--search-and-replace-pattern): Do it.
	(el-search-query-replace): Move the elaborations about splicing submode
	to this command's documentation.

2017-12-04  Michael Heerdegen  <michael_heerdegen@web.de>

	Use local binding of `post-command-hook' to reset wrap flag

	The current search is a global thing, so we must use the global value of
	`post-command-hook' to reset the `el-search--wrap-flag'.

2017-12-04  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix resuming a single-buffer query-replace

2017-12-04  Michael Heerdegen  <michael_heerdegen@web.de>

	Display match count for *El Occur* buffers

	Make `el-search-occur-next-match' and `el-search-occur-previous-match' 
	display an x/y-style match count.

2017-12-04  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix starting a search with `el-search-this-sexp'

	Improve behavior of `el-search-jump-to-search-head' and
	`el-search-query-replace' called directly after `el-search-this-sexp'.

2017-12-01  Stefan Monnier  <monnier@iro.umontreal.ca>

	* el-search/el-search.el: Minor tweak.

	(el-search-make-search): Use `letrec'.
	(el-search-previous-match): Specify when it was obsoleted.

2017-11-30  Michael Heerdegen  <michael_heerdegen@web.de>

	Improve folding behavior in *El Occur* buffers

2017-11-29  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix resuming search in a modified buffer

2017-11-28  Michael Heerdegen  <michael_heerdegen@web.de>

	Show match count for `el-search-query-replace'

2017-11-23  Michael Heerdegen  <michael_heerdegen@web.de>

	New command `el-search-count-matches'

2017-11-22  Michael Heerdegen  <michael_heerdegen@web.de>

	Add a PROMPT arg to `el-search--read-pattern-for-interactive'

	Use it.

2017-11-15  Michael Heerdegen  <michael_heerdegen@web.de>

	Bump el-search version to 1.4

2017-11-01  Michael Heerdegen  <michael_heerdegen@web.de>

	Don't limit `el-search-emacs-elisp-sources' to "lisp/" subdir

2017-10-28  Michael Heerdegen  <michael_heerdegen@web.de>

	Some details

2017-10-28  Michael Heerdegen  <michael_heerdegen@web.de>

	Always use the current search for query-replace

2017-10-28  Michael Heerdegen  <michael_heerdegen@web.de>

	Recover from search head pointing to a killed buffer

	Try to resume from the associated buffer file; alternatively restart the
	search.

2017-10-28  Michael Heerdegen  <michael_heerdegen@web.de>

	Display an x/y-style match count in the echo area

2017-10-23  Michael Heerdegen  <michael_heerdegen@web.de>

	Improve jumping to matches in *El Occur* buffers

2017-10-22  Michael Heerdegen  <michael_heerdegen@web.de>

	Require the new rmc.el lib when available

2017-10-22  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix replacing matches with nil

	Replacing PATTERN -> nil replaced with t instead.  This commit fixes 
	this.

2017-10-22  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix "Make amount of context around occur matches adjustable"

	Add missing defun `el-search--bounds-of-defun'.

2017-10-03  Michael Heerdegen  <michael_heerdegen@web.de>

	Make amount of context around occur matches adjustable

	Make the amount of context included around each match in
	*El Occur* buffers adjustable via new commands
	`el-search-occur-defun-context', `el-search-occur-no-context' and
	`el-search-occur-some-context'.

2017-09-29  Michael Heerdegen  <michael_heerdegen@web.de>

	Use a separate function to document defined pattern types

2017-09-29  Michael Heerdegen  <michael_heerdegen@web.de>

	Show line numbers in *El Occur* buffers

2017-09-29  Michael Heerdegen  <michael_heerdegen@web.de>

	More multi query-replace related improvements

2017-09-29  Michael Heerdegen  <michael_heerdegen@web.de>

	Restore current search head in case of error or quit

	In particular, this change prevents the search head to point to a 
	temporary helper buffer.

2017-09-29  Michael Heerdegen  <michael_heerdegen@web.de>

	Make `el-search-reset-search' modify its argument

	Make `el-search-reset-search' modify its argument instead of returning a
	reset copy.

	This fixes `el-search-from-beginning' when called with prefix arg which
	had the first search buffer instantly being killed because the new
	search had not been taken into consideration when killing temporarily
	opened file buffers.

2017-09-29  Michael Heerdegen  <michael_heerdegen@web.de>

	Don't let el-search-pattern resume a paused search

	When calling `el-search-pattern' from the head buffer of the 
	el-search--current-search, don't automatically resume the 
	el-search--current-search when the last command was not a search command
	even when the search pattern is the same.  Start a new single-buffer
	search as normal.  `el-search-jump-to-search-head' is now the preferred
	way to resume a suspended el-search--current-search.

2017-09-29  Michael Heerdegen  <michael_heerdegen@web.de>

	Add some useful commands for *El Occur* buffers

	Add commands `el-search-occur-next-match',
	`el-search-occur-previous-match' for quick navigation between matches 
	and `el-search-edit-occur-pattern', a command to modify the search 
	pattern associated with an occur buffer.

2017-09-29  Michael Heerdegen  <michael_heerdegen@web.de>

	Use stream-x.el

2017-09-29  Michael Heerdegen  <michael_heerdegen@web.de>

	Narrow down the semantics of symbol LPATs

	Narrow down the semantics of symbol LPATs: Matching also the quoted and
	function-quoted symbol made the thing too slow.

2017-08-03  Michael Heerdegen  <michael_heerdegen@web.de>

	Some details

2017-08-02  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix el-search--change-p for atoms

	Factor out predicate `el-search--atomic-p'.

	Fix a bug in the implementation of `change': Count any 
	el-search--atomic-p thing (e.g. a large string spanning multiple lines)
	as a change even when not all of its lines have changed.

2017-08-01  Michael Heerdegen  <michael_heerdegen@web.de>

	Make the el-search-object struct contain an alist of properties

	Make the el-search-object struct contain a field "properties".	Use it 
	to store diverse metadata.  Remove the "command" field; instead, use the
	property "description" which can be bound to a string describing the
	search.

	Factor out `el-search--get-search-description-string' which can be 
	called to get a description text for the occur buffer or completion 
	annotation.

	Make `el-search-setup-search-1' accept an additional optional argument 
	SETUP-FUNCTION that can be used to manipulate the new "properties" field
	of newly created searches.  Use it.

2017-07-25  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix and speed up the `change' pattern type

2017-07-24  Michael Heerdegen  <michael_heerdegen@web.de>

	Implement multi-buffer query-replace

2017-07-02  Michael Heerdegen  <michael_heerdegen@web.de>

	Add new command `el-search-this-sexp'

2017-05-24  Michael Heerdegen  <michael_heerdegen@web.de>

	Handle read errors when reading and validating replacement

2017-05-17  Michael Heerdegen  <michael_heerdegen@web.de>

	Some details

2017-05-17  Michael Heerdegen  <michael_heerdegen@web.de>

	Extend heuristic matching to top-level sexps

	This speeds up searching in large files.

2017-05-11  Michael Heerdegen  <michael_heerdegen@web.de>

	Recompile search pattern when resuming searches

	When resuming a search, recompile the search pattern.  This is useful 
	when a pattern type has been redefined.

2017-05-11  Michael Heerdegen  <michael_heerdegen@web.de>

	Reset wrap flag even when no match

2017-04-28  Michael Heerdegen  <michael_heerdegen@web.de>

	Tweak el-search--pp-to-string

	Bind print-circle -> nil.

	When an object contains multiple occurrences of the empty string, all 
	but the last are printed as #N#.  We don't want this (especially when 
	printing a replacement).

	`string-trim-right' the result from pp which may end with a line break.

2017-04-23  Michael Heerdegen  <michael_heerdegen@web.de>

	Explicitly require pcase

	emacs -Q doesn't load pcase any more.

2017-04-15  Michael Heerdegen  <michael_heerdegen@web.de>

	Add new pattern type `de-morgan'

	Add pattern `de-morgan' which allows to simplify expressions by applying
	de Morgan's law.

2017-03-09  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search version 1.3: Lots of fixes and improvements

	This change mixes a bunch of new features and fixes:

	* It is now possible to execute a search as non-interactive occur.

	* Search patterns, matcher and the invoking command are now stored in 
	the search object instead of separate variables.

	* A search object doesn't use a stream of matches internally any more 
	but can still export a stream finding all positions of matches of this 
	search with the method `el-search-object-get-matches'.	This internal 
	change was a prerequisite to implement a real backward search, bound to
	C-R when using the default keys.

	* More careful buffer killing: avoid killing file buffers opened for 
	searching when they are still referenced by a search in the history.

	* When opening files for searching, avoid `find-file' for better 
	performance.

	* Displaying buffers has been made customizable by using dedicated
	`display-buffer' actions.

	* "Generalized" regexps have been renamed to "regexp-likes".  They 
	include function predicates now.

	* `el-search-jump-to-search-head' now restarts completed searches 
	automatically.

	* `el-search-forward' now accepts a BOUND argument to make the signature
	more similar to that of `search-forward'.

	* A new pattern `in-buffer' (and synonymous `in-file') has been defined
	that makes it possible to give the heuristic matcher explicit hints.

	* The `file' pattern has been renamed to `filename' and accepts multiple
	arguments now.

	* Searching directories dismisses subdirectories containing a file named
	".nosearch" now by default.

	* Key bindings have been cleaned up.  The suggested key bindings can be
	installed now by calling the new function
	`el-search-install-shift-bindings'.

	* `el-search-dired-marked-files' now accepts the list of marked files as
	an argument and computes the list in the interactive spec instead of the
	body so that repeating the command from the history works as expected
	(i.e. uses the same file list).

	* Improved introduction, lots of details and doc fixes.

2017-01-27  Michael Heerdegen  <michael_heerdegen@web.de>

	Add a FILE argument to `el-search-dired-marked-files'

	Make `el-search-dired-marked-files' accept the list of marked files as 
	an argument and compute the list in the interactive spec instead of the
	body so that repeating the command from the history works as expected
	(i.e. uses the same file list).

2017-01-26  Michael Heerdegen  <michael_heerdegen@web.de>

	Update some copyrights

2017-01-25  Michael Heerdegen  <michael_heerdegen@web.de>

	Use `read' to circumvent bug#24542

	Use `read' to jump over symbols starting with an "@" character.	 This 
	should fix the issues caused by bug#24542 completely instead of handling
	only special cases.

	Add some documentation for `el-search--end-of-sexp'.

2017-01-20  Michael Heerdegen  <michael_heerdegen@web.de>

	Improve half-baked introduction of key bindings

	Define a helper function installing the suggested key bindings.	 Don't 
	bind any keys by default, even not in `el-search-map'.

2017-01-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Improve summary message of `el-search-overview'

2017-01-18  Michael Heerdegen  <michael_heerdegen@web.de>

	New command `el-search-from-beginning'

2017-01-14  Michael Heerdegen  <michael_heerdegen@web.de>

	Also count pattern types starting with "_" as internal

2017-01-02  Michael Heerdegen  <michael_heerdegen@web.de>

	Work around more manifestations of Emacs bug #24542

	Not only the symbol `@' but all symbols with names of the form "@+" 
	cause trouble.	We need to avoid to call `scan-sexps' from the beginning
	of any of these symbols.

2016-12-31  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: bump version to 1.2.2

2016-12-31  Michael Heerdegen  <michael_heerdegen@web.de>

	Improve handling of reader errors in el-search-atom-list

2016-12-28  Michael Heerdegen  <michael_heerdegen@web.de>

	Avoid infinite recursion in circular programs

	Prevent heuristic matching go into an infinite recursion in circular 
	programs like '#1=(1 . #1#).

2016-12-27  Michael Heerdegen  <michael_heerdegen@web.de>

	Call `user-error' instead of `error' where appropriate

	Also improve some error messages.

2016-12-27  Michael Heerdegen  <michael_heerdegen@web.de>

	Use regexp-opt on suffixes in el-search--elisp-file-name-p

2016-12-21  Michael Heerdegen  <michael_heerdegen@web.de>

	Use jka-compr-load-suffixes instead of hardcoded suffixes

2016-12-20  Michael Heerdegen  <michael_heerdegen@web.de>

	Add a helpful comment; bump version to 1.2.1

2016-12-20  Michael Heerdegen  <michael_heerdegen@web.de>

	Explicitly `error' when trying to jump to invalid search head

	Give a meaningful error message when the user calls
	`el-search-jump-to-search-head' but the search head points to a killed 
	buffer.

2016-12-20  Michael Heerdegen  <michael_heerdegen@web.de>

	Set syntax table for temp buffers in el-search-atom-list

2016-12-20  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix disregarding compressed elisp files

2016-12-15  Michael Heerdegen  <michael_heerdegen@web.de>

	Extend the heuristic matching approach; complete review

2016-11-16  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix leaving behind helper buffers

2016-11-08  Michael Heerdegen  <michael_heerdegen@web.de>

	Don't use the non-word "heuristical"

2016-11-07  Michael Heerdegen  <michael_heerdegen@web.de>

	Some details

2016-11-06  Michael Heerdegen  <michael_heerdegen@web.de>

	Speed up multi searching; version 1.1

2016-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	New command `el-search-load-path'

2016-10-30  Michael Heerdegen  <michael_heerdegen@web.de>

	Document change-revision transformer function; make a defcustom

2016-10-30  Michael Heerdegen  <michael_heerdegen@web.de>

	Inhibit logging of some messages

2016-10-28  Michael Heerdegen  <michael_heerdegen@web.de>

	`change', `changed': make "HEAD" as default explicit

2016-10-17  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: more cleanup and minor tweaks; version 1.0.1

2016-10-17  Michael Heerdegen  <michael_heerdegen@web.de>

	Add missing settings of some vars when restoring a previous search

2016-10-17  Michael Heerdegen  <michael_heerdegen@web.de>

	Call el-search--wrap-pattern at better places

	Try to call `el-search--wrap-pattern' directly before compiling the 
	pattern to avoid that the wrapped pattern appears in the histories.

2016-10-15  Michael Heerdegen  <michael_heerdegen@web.de>

	Rewrite of el-search for version 1.0

	Big rewrite and cleanup.  Add multi-search support.  Update and improve 
	docs.

2016-10-15  Michael Heerdegen  <michael_heerdegen@web.de>

	Work around Emacs bug#24542

	Avoid calling `scan-sexps' directly before the symbol `@' since it may 
	error.

2016-10-07  Michael Heerdegen  <michael_heerdegen@web.de>

	Add section "Patterns for stylistic rewriting" and pattern `iffy-if'

2016-09-16  Michael Heerdegen  <michael_heerdegen@web.de>

	Make el-search--make-docstring require a NAME argument

2016-09-13  Michael Heerdegen  <michael_heerdegen@web.de>

	Add `el-search--macroexpand'

2016-09-07  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix replacement verification for splicing mode

2016-08-30  Michael Heerdegen  <michael_heerdegen@web.de>

	Some details

2016-08-16  Michael Heerdegen  <michael_heerdegen@web.de>

	Simplify `el-search--transform-nontrivial-lpat'

2016-08-16  Michael Heerdegen  <michael_heerdegen@web.de>

	Simplify nested backquotes

2016-08-11  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: bump version to 0.2.2

2016-08-11  Michael Heerdegen  <michael_heerdegen@web.de>

	Improve `change' and `changed'

	- Renew cache when saved file version has changed.

	- Use markers as region boundaries so that replacing inside changed 
	expressions works.

2016-08-11  Michael Heerdegen  <michael_heerdegen@web.de>

	Add calling convention to el-search-defpattern's docstring

2016-08-11  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search--make-docstring: exclude some specially named patterns

	Make patterns starting with a hyphen, or containing "--" not appear in 
	the generated docstring of `el-search-pattern': patterns with these 
	names are now considered internal.

2016-08-11  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix el-search-query-replace reindent wrongly in narrowed buffer

2016-08-10  Michael Heerdegen  <michael_heerdegen@web.de>

	Move some pattern definitions to new file "el-search-x"

2016-08-10  Michael Heerdegen  <michael_heerdegen@web.de>

	Update copyright

2016-08-03  Michael Heerdegen  <michael_heerdegen@web.de>

	Add comment about (pcase) backquote inside (real) backquote

2016-07-11  Paul Eggert	 <eggert@cs.ucla.edu>

	Fix some quoting problems in doc strings

	Most of these are minor issues involving, e.g., quoting `like this' 
	instead of 'like this'.	 A few involve escaping ` and ' with a preceding
	\= when the characters should not be turned into curved single quotes.

2016-05-28  Michael Heerdegen  <michael_heerdegen@web.de>

	Rewrite the `change' and `changed' patterns

	so that they don't rely on `diff-hl-mode's overlays.  Instead use the 
	output of `diff-hl-changes' directly (and cache it).

	Make both patterns accept an optional REVISION argument.

2016-05-21  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search version 0.2

2016-05-21  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search--ensure-sexp-start: don't assume point-min==1

	Thanks Stefan.

2016-05-21  Michael Heerdegen  <michael_heerdegen@web.de>

	Factor out `el-search--replace-hunk'

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Improve history handling

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Set initial input for replace when coming from el-search-pattern

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Clean up el-search-read-expression-map; add some doc

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Make sure not to lose the minibuffer-prompt face

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Reduce duration of a `sit-for'

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Rename a local variable

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Make query-replace accept FROM -> TO style input

	Use this format for history entries.

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Small fix in el-search--setup-minibuffer

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Use `pp-to-string' to print replacement expression

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Give el-search--s a more meaningful name

	Rename `el-search--s' to `el-search--transform-nontrivial-lpat'.

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Make el-search-pattern accept an optional NO-ERROR arg

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix el-search--ensure-sexp-start error at bob

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Clarify the operation scope of replacing

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Address compiler warnings

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Add patterns for character properties

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Rename two functions

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Handle replacements containing another match

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Improve documentation and argument names of el-search-query-replace

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Comment and whitespace changes only

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Replacing: make C-g an alternative key for quitting

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Rewrite replacement layout restoration

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search--check-pattern-args: make arg TYPE a string

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	Rewrite `string' pattern definition

2016-05-19  Michael Heerdegen  <michael_heerdegen@web.de>

	New user option: el-search-use-sloppy-strings

2016-03-11  Michael Heerdegen  <michael_heerdegen@web.de>

	New function el-search--macroexpand-1 for debugging

2016-03-04  Michael Heerdegen  <michael_heerdegen@web.de>

	Minor change in `string' pattern

2016-03-02  Michael Heerdegen  <michael_heerdegen@web.de>

	Fix for non-interactive calls of el-search-pattern

2016-03-02  Michael Heerdegen  <michael_heerdegen@web.de>

	Tweak docstring of el-search--ensure-sexp-start

2016-03-01  Michael Heerdegen  <michael_heerdegen@web.de>

	New user option: el-search-smart-case-fold-search

2016-02-15  Michael Heerdegen  <michael_heerdegen@web.de>

	factor out minibuffer setup hook fun; treat empty input

2016-02-14  Michael Heerdegen  <michael_heerdegen@web.de>

	Improve doc of el-search-this-expression-identifier.

2016-02-12  Michael Heerdegen  <michael_heerdegen@web.de>

	Complete and document what a SYMBOL in `l' matches

2016-02-12  Michael Heerdegen  <michael_heerdegen@web.de>

	use uninterned symbol in `el-search--matcher'

2016-02-09  Michael Heerdegen  <michael_heerdegen@web.de>

	Go to isearch left end when starting replace

	with el-search from isearch

	This partially reverts

	"When coming from isearch, don't move to other end".

2016-01-10  Michael Heerdegen  <michael_heerdegen@web.de>

	Support highlighting of all visible matches

2016-01-09  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: New pattern type `l'

2015-12-31  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: bump version to 0.1.3

2015-12-31  Michael Heerdegen  <michael_heerdegen@web.de>

	When coming from isearch, don't move to other end

	when at match end

2015-12-31  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: new pattern type `contains'

2015-12-31  Michael Heerdegen  <michael_heerdegen@web.de>

	use more newlines in `el-search--make-docstring'

2015-12-31  Michael Heerdegen  <michael_heerdegen@web.de>

	remove annoying message on how to repeat el-search

2015-12-31  Michael Heerdegen  <michael_heerdegen@web.de>

	factor out `el-search--search-pattern-1'

2015-12-31  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: new pattern type `not'

2015-12-31  Michael Heerdegen  <michael_heerdegen@web.de>

	remove example using `message' in a guard

2015-12-31  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: new pattern type `append'

2015-12-29  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: some cleanup

	- fix `help-fns--signature' call to make `el-search--make-docstring' 
	work when loading the library as non-compiled source code

	- refine definition of `kbd' pattern and documentation

	- move stuff for defining additional patterns to a separate section

	- add some commentaries

	- bump version to 0.1.2

2015-12-12  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search--matcher: refine when to warn or error

2015-11-27  Michael Heerdegen  <michael_heerdegen@web.de>

	bump version to 0.1.1

2015-11-27  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search-query-replace: add s (toggle splicing) and ? (help) keys

2015-11-18  Michael Heerdegen  <michael_heerdegen@web.de>

	prerequisites to allow replace with multiple expressions

2015-11-16  Michael Heerdegen  <michael_heerdegen@web.de>

	add a to do

2015-11-15  Michael Heerdegen  <michael_heerdegen@web.de>

	edit TODO list

2015-11-05  Michael Heerdegen  <michael_heerdegen@web.de>

	fix compiler errors and warnings

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: bump version to 0.1

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	simplify el-search-hl-post-command-fun

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	remove search wrapping functionality

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	improve docs; new: el-search-defpattern; add some pattern types

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	fix whitespace

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	spelling fixes

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search--read-pattern: fix default(s)

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	give feedback in the echo area again

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	fix whitespace

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	document el-search--do-subsexps

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	fix el-search-hl-post-command-fun auto-removal

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	fix el-search--repair-replacement-layout: don't move when replacing

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	rename a local variable

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	some doc tweaks

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	change a TODO entry; no code change

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	remove not so useful message of how to repeat search

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	allow search wrapping

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	arrange we can use `call-interactively' when coming from isearch

2015-10-31  Michael Heerdegen  <michael_heerdegen@web.de>

	call syntax functions less often for better efficiency

2015-10-11  Michael Heerdegen  <michael_heerdegen@web.de>

	whitespace clean up

2015-10-11  Michael Heerdegen  <michael_heerdegen@web.de>

	rename a local variable

2015-10-11  Michael Heerdegen  <michael_heerdegen@web.de>

	rename a function

2015-10-11  Michael Heerdegen  <michael_heerdegen@web.de>

	new function el-search--end-of-sexp; use it

2015-10-11  Michael Heerdegen  <michael_heerdegen@web.de>

	avoid repeated expansion of pcase forms

2015-10-11  Michael Heerdegen  <michael_heerdegen@web.de>

	rename a function

2015-10-11  Michael Heerdegen  <michael_heerdegen@web.de>

	drop el-search-expression-contains-match-p

	A correct implementation would have to be more complicated.  We didn't 
	recurse on arrays for example, or we didn't find (2 3) in (1 . (2 3)).

	And it wasn't that effective either, so I remove it.

2015-10-11  Michael Heerdegen  <michael_heerdegen@web.de>

	fix a condition in el-search--do-subsexps

2015-10-11  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: some comment changes

2015-10-11  Michael Heerdegen  <michael_heerdegen@web.de>

	rename a function

2015-10-11  Michael Heerdegen  <michael_heerdegen@web.de>

	change default of el-search-this-expression-identifier

2015-10-11  Michael Heerdegen  <michael_heerdegen@web.de>

	avoid looking-back in el-search--goto-next-sexp

	because it extremely slows it down

2015-09-22  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: bump version

2015-09-22  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: some comment changes

2015-09-22  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: add autoload cookies

2015-09-22  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: remove redundant :group specs from custom defs

2015-09-22  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: remove redundant package dependency on cl-lib

2015-09-22  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: fix two typos

2015-09-22  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: fix comment styles

2015-08-06  Stefan Monnier  <monnier@iro.umontreal.ca>

	* el-search.el: Add missing footer

2015-08-05  Stefan Monnier  <monnier@iro.umontreal.ca>

	* el-search.el: Fix first line convention

2015-08-05  Michael Heerdegen  <michael_heerdegen@web.de>

	el-search: some small improvements

2015-08-04  Michael Heerdegen  <michael_heerdegen@web.de>

	new package el-search for searching elisp

