(isearch-fallback): Don't call `isearch-process-search-char'.
(isearch-*-char, isearch-}-char, isearch-|-char): Remove functions.
(isearch-process-search-char): Call `isearch-fallback' for regexp chars * ? } |.
(isearch-return-char): Make obsolete with `make-obsolete' instead
of simply documenting it as obsolete in the docstring.
(isearch-fallback): Refill docstring.
minibuffer history commands.
(minibuffer-local-isearch-map): Remove bindings for M-p and M-n,
the default history commands now work just as well.
(isearch-ring-retreat-edit, isearch-ring-advance-edit): Remove.
Make arguments beg and end optional.
(isearch-update): Remove optional arguments nil from
isearch-lazy-highlight-new-loop.
(isearch-lazy-highlight-search): Let-bind case-fold-search to
isearch-lazy-highlight-case-fold-search instead of
isearch-case-fold-search, and let-bind isearch-regexp to
isearch-lazy-highlight-regexp. Use
isearch-lazy-highlight-last-string instead of isearch-string.
`isearch-lazy-highlight-cleanup', add alias to old name and
declare obsolete. Add release numbers to other obsolete vars.
(isearch-done, isearch-lazy-highlight-new-loop): Rename
`isearch-lazy-highlight-cleanup' to `lazy-highlight-cleanup'.
(lazy-highlight-cleanup) <variable>: Doc fix.
(isearch-lazy-highlight-update): Rename obsolete
`isearch-lazy-highlight-face' to `lazy-highlight-face'.
(isearch-invalid-regexp, isearch-within-brackets): Remove.
(isearch-error-state): Renamed from `isearch-invalid-regexp-state'.
(isearch-within-brackets-state): Remove.
(isearch-case-fold-search-state, isearch-pop-fun-state):
Decrease frame index.
(isearch-mode, isearch-top-state, isearch-push-state)
(isearch-edit-string, isearch-abort, isearch-search-and-update)
(isearch-fallback, isearch-message-prefix, isearch-message-suffix)
(isearch-search, isearch-lazy-highlight-new-loop):
Replace `isearch-invalid-regexp' with `isearch-error'.
Remove `isearch-within-brackets'.
(isearch-search): Add `search-failed' handler to `condition-case'.
(isearch-lazy-highlight-search): Add `condition-case' to catch
errors and allow `isearch-lazy-highlight-update' to try
highlighting from the beginning of the window.
(isearch-repeat): Move up code to set isearch-wrapped to t
before calling isearch-wrap-function.
(isearch-lazy-highlight-end-limit): New variables limit
the region for highlighting.
(isearch-lazy-highlight-new-loop): New args BEG and END.
(isearch-lazy-highlight-search): Use the new vars.
(isearch-lazy-highlight-update): Likewise.
Bring together isearch highlight related options.
(lazy-highlight): Replace group `replace' by `matching'.
(lazy-highlight-cleanup, lazy-highlight-initial-delay)
(lazy-highlight-interval, lazy-highlight-max-at-a-time)
(lazy-highlight): Add aliases to old names isearch-lazy-highlight-...
and declare them obsolete.
(lazy-highlight-face): Rename from isearch-lazy-highlight-face.
(isearch-faces): Remove defgroup.
(isearch-overlay, isearch-highlight, isearch-dehighlight):
Move isearch highlighting code closer to lazy highlighting code.
Remove "-face" suffix from lazy-highlight face name
2005-01-06 Miles Bader <miles@gnu.org>
* lisp/isearch.el (lazy-highlight): Renamed from `lazy-highlight-face'.
(isearch-lazy-highlight-face): Use new name.
(lazy-highlight-cleanup, lazy-highlight-initial-delay)
(lazy-highlight-interval, lazy-highlight-max-at-a-time)
(lazy-highlight-face): Renamed from isearch-lazy-...
Change all references to them.
`read-from-minibuffer' to `t' to inherit the current input
method (whose name is indicated by [IM] in the minibuffer prompt)
from the current buffer to the minibuffer.
(isearch-lazy-highlight-update): Put body to `with-local-quit'
to allow C-g quitting for lazy highlighting looping inside the
search with nested repetition operators. Add overlay to the list
before setting its face and other properties to avoid the case of
code quitting after placing the new overlay but before it's
recorded on the list. Select the window where isearch was
activated, to highlight matches in the right window when isearch
switches the current window to the minibuffer.
(isearch-mode-map): No special definition for space.
(isearch-whitespace-chars): Command deleted.
(isearch-forward-regexp): Doc fix.
(isearch-quote-char): When a space is not inside brackets,
use `[ ]' instead of just space.
(isearch-lazy-highlight-search): Bind search-spaces-regexp.
Merge from emacs--cvs-trunk--0
Patches applied:
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-594
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-598
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-599
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-600
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-602
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-603
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-604
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-609
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-610
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-611
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-614
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-615
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-42
Update from CVS
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-43
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-44
- miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-46
Update from CVS
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-47
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-48
Update from CVS
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-49
Add {arch}/=commit-merge-make-log
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-50
{arch}/=commit-merge-make-log: Don't die if there are no ChangeLog changes
(isearch-toggle-case-fold): Set `isearch-success' to `t'.
(isearch-message-prefix): Add "pending" for isearch-adjusted.
(isearch-other-meta-char): Restore isearch-point unconditionally.
(isearch-query-replace): Add new arg `regexp-flag' and use it.
Set point to start of match if region is not active in transient
mark mode (to include the current match to region boundaries).
Push the search string to `query-replace-from-history-variable'.
Add prompt "Query replace regexp" for isearch-regexp.
Add region beginning/end as last arguments of `perform-replace.'
(isearch-query-replace-regexp): Replace code by the call to
`isearch-query-replace' with arg `t'.
(isearch-push-state-function): New defvars.
(isearch-pop-fun-state): New defsubst.
(isearch-top-state): Call function saved in `isearch-pop-fun-state'.
(isearch-push-state): Set the result of calling
`isearch-push-state-function' to the `isearch-pop-fun-state' field.
(isearch-cancel): Call function saved in `isearch-pop-fun-state' to
restore the mode-specific starting point of terminated search.
(isearch-abort): Call `isearch-cancel' instead of its duplicated code.
(isearch-repeat): Call `isearch-wrap-function' if defined.
(isearch-message-prefix): Don't add prefix "over" to the message
for wrapped search if `isearch-wrap-function' is defined.
(isearch-search): Call function saved in `isearch-pop-fun-state' to
restore the mode-specific starting point of failed search.
(isearch-string, isearch-message-string, isearch-point)
(isearch-success, isearch-forward-flag, isearch-other-end)
(isearch-word, isearch-invalid-regexp, isearch-wrapped)
(isearch-barrier, isearch-within-brackets)
(isearch-case-fold-search): Add suffix `-state' to state-related
defsubsts to avoid name clashes with other function names.
up when a regexp isearch is made more general. Use symbolic
accessor functions for isearch stack frames to make usage clearer.
(search-whitespace-regexp): Made groups in documentation shy (as
is the group in the default value).
(isearch-fallback): New function, addresses problems with regexps
liberalized by `\|', adds support for liberalization by `\}' (the
general repetition construct), and incorporates behavior for
`*'/`?'.
(isearch-}-char): New command, calls `isearch-fallback' with
arguments appropriate to a typed `}'.
(isearch-*-char, isearch-|-char): Now just call `isearch-fallback'
appropriately.
(isearch-mode-map): Bind `}' to `isearch-}-char'.
(isearch-string, isearch-message,string, isearch-point,
isearch-success, isearch-forward-flag, isearch-other-end,
isearch-word, isearch-invalid-regexp, isearch-wrapped,
isearch-barrier, isearch-within-brackets,
isearch-case-fold-search):
New inline functions to read fields of a stack frame.
C-M-y to isearch-yank-char. Bind M-% to isearch-query-replace,
C-M-% to isearch-query-replace-regexp.
(minibuffer-local-isearch-map): Add arrow key bindings.
Bind C-f to isearch-yank-char-in-minibuffer.
(isearch-forward): Doc fix.
(isearch-edit-string): Doc fix.
(isearch-query-replace, isearch-query-replace-regexp): New funs.
(isearch-del-char): Add optional arg. Set isearch-yank-flag to t.
(isearch-yank-char): Add optional arg.
(isearch-yank-char-in-minibuffer): New fun.
Merge from emacs--cvs-trunk--0
Patches applied:
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-218
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-220
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-221
Restore deleted tagline in etc/TUTORIAL.ru
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-222
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-228
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-229
Remove TeX output files from the archive
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-230
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-247
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-248
src/lisp.h (CYCLE_CHECK): Macro moved from xfaces.c
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-249
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-256
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-258
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-263
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-264
Update from CVS: lispref/display.texi: emacs -> Emacs.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-265
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-274
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-275
Update from CVS: man/makefile.w32-in: Revert last change
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-276
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-295
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-296
Allow restarting an existing debugger session that's exited
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-297
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-299
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-300
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-327
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-328
Update from CVS: src/.gdbinit (xsymbol): Fix last change.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-329
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-344
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-345
Tweak source regexps so that building in place won't cause problems
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-346
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-351
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-352
Update from CVS: lisp/flymake.el: New file.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-353
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-361
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-362
Support " [...]" style defaults in minibuffer-electric-default-mode
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-363
(read-number): Use canonical format for default in prompt.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-364
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-367
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-368
Improve display-supports-face-attributes-p on non-ttys
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-369
Rewrite face-differs-from-default-p
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-370
Move `display-supports-face-attributes-p' entirely into C code
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-371
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-372
Simplify face-differs-from-default-p; don't consider :stipple.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-373
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-374
(tty_supports_face_attributes_p): Ensure attributes differ from default
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-375
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-376
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-377
(Fdisplay_supports_face_attributes_p): Work around bootstrapping problem
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-378
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-380
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-381
Face merging cleanups
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-382
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-384
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-385
src/xfaces.c (push_named_merge_point): Return 0 if a cycle is detected
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-386
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-395
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-396
Tweak arch tagging to make build/install-in-place less annoying
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-397
Work around vc-arch problems when building eshell
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-398
Tweak permissions
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-399
Tweak directory permissions
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-400
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-401
More build-in-place tweaking of arch tagging
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-402
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-403
Yet more build-in-place tweaking of arch tagging
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-404
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-409
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-410
Make sure image types are initialized for lookup too
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-411
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-416
Update from CVS
Add new key bindings for isearch-yank-char to \C-f, and isearch-del-char to \C-b.
(isearch-del-char): New fun.
(isearch-forward, isearch-edit-string): Update docstring.
(isearch-yank-char): Doc fix.
(isearch-other-meta-char): Restore point after scrolling.
isearch-other-meta-char.
(top level): (put 'foo 'isearch-scroll) on all Emacs's
"scrollable" standard functions.
(isearch-allow-scroll): New customizable variable.
(isearch-string-out-of-window, isearch-back-into-window)
(isearch-reread-key-sequence-naturally)
(isearch-lookup-scroll-key): New functions.
(isearch-other-meta-char): Doc string and functionality enhanced.
Now accepts a prefix argument.
(isearch-lazy-highlight-window-end): New variable.
(isearch-lazy-highlight-new-loop): Pay attention to the window's
end (thru isearch-lazy-highlight-window-end), not only its start.
(isearch-mouse-2): Lookup binding in the proper buffer.
Use call-interactively and remove the now useless `arg'.
(isearch-search-fun-function): New var.
(isearch-search-fun): New fun.
(isearch-search, isearch-lazy-highlight-search): Use it.
strings mention keybinding for `isearch-yank-word-or-char',
rather than `isearch-yank-word', since the former is bound now
and the latter is not.
(isearch-yank-word-or-char): Fix formatting.
(isearch-mode): Remember value of isearch-case-fold-search
in isearch-last-case-fold-search.
(isearch-done): Quote value of isearch-case-fold-search.
(isearch-repeat): When resuming a search, restore
isearch-case-fold-search from isearch-last-case-fold-search.
similar events for which fake prefix keys are generated. It's no
longer necessary since read_key_sequence doesn't modify these
events for internal purposes anymore.
(isearch-lazy-highlight-regexp): New variables.
(isearch-lazy-highlight-cleanup): Update lazy highlight if
case-fold search or regexp search has been toggled.
1 here rather than each time through
isearch-lazy-highlight-new-loop.
(isearch-lazy-highlight-max): Variable deleted.
(isearch-lazy-highlight-max-at-a-time): New user variable, like
isearch-lazy-highlight-max but controls a single invocation of
isearch-lazy-highlight-update.
(isearch-lazy-highlight-wrapped): Variable recreated.
(isearch-lazy-highlight-window-start): New variable.
(isearch-lazy-highlight-cleanup): Restored to behavior of
before 2-Jan.
(isearch-lazy-highlight-remove-overlays): Function deleted;
behavior folded into isearch-lazy-highlight-cleanup. "Keep"
behavior removed.
(isearch-lazy-highlight-new-loop): Restore old behavior of calling
isearch-lazy-highlight-update in a loop rather than just once.
Test isearch-invalid-regexp here and decide not to start a new
loop, rather than testing it each time through
isearch-lazy-highlight-update.
(isearch-lazy-highlight-search): Function restored.
(isearch-lazy-highlight-update): Get called in a timer loop again,
but this time highlight more than one match each time through.
Only highlight matches in the visible part of the window. Start
at point, move in the direction of the search, and wrap around at
the edge of the window. Use sit-for to force redisplay and ensure
window-start is credible. "Face suppressing" behavior removed;
overlay priorities should make it unnecessary, right?
(isearch-highlight): Face suppressing behavior removed.
(isearch-dehighlight): Face suppressing behavior removed.
(isearch-set-lazy-highlight-faces-at): Removed.
Don't look for more potential matches once maximum is exceeded.
Use overlays-in to check correctly for overlap with current match.
Ignore empty matches.
(isearch-mode): Add isearch-done to kbd-macro-termination-hook
instead of setting signal-hook-function.
(isearch-done): Remove isearch-done from kbd-macro-termination-hook.
but only do it in the text that's visible in the selected window.
(isearch-lazy-highlight-cleanup): Arg now says
to remove all the current alternative-match highlighting.
If nil, remove only what's outside the current window.
(isearch-lazy-highlight-remove-overlays): Take optional
region within which NOT to remove them.
(isearch-lazy-highlight-new-loop): Greatly simplified.
(isearch-lazy-highlight-update): Find all the other occurrences
visible in the window, in just one call.
(isearch-lazy-highlight-start): Now holds start of region to scan.
(isearch-lazy-highlight-end): Now holds end of region to scan.
(isearch-lazy-highlight-wrapped): Variable deleted.
(isearch-lazy-highlight-search): Function deleted.
(isearch-mode): Set `minibuffer-message-timeout' to nil, after
stashing away its original value.
(isearch-edit-string): Temporarily restore `minibuffer-message-timeout'
in the recursive edit.
Bind `isearch-original-minibuffer-message-timeout' to protect it.
(isearch-done): Restore `minibuffer-message-timeout'.
(minibuffer-local-isearch-map): Init in defvar. Use inheritance.
(isearch-clean-overlays, isearch-range-invisible, isearch-unread):
Use mapc rather than map.
(isearch-highlight): Restore lazy-isearch face properties at old
position, and suppress them at new position.
(isearch-dehighlight): Restore lazy-isearch face properties.
(isearch-lazy-highlight-update): Add lazy-isearch overlays even
over the real isearch overlay, but in that case, don't give it a
face property. Use `push'.
highlighting overlay with a different face over the overlay
isearch uses to highlight the current match because that can lead
to bad face combinations.
(isearch): New defface; was already tested for in the code.
(isearch-lazy-highlight-face): Changed to defface from defcustom.
(isearch-highlight): Always use face `isearch'.
(isearch-done): Add something to command-history to resume
the search.
(isearch-yank-line, isearch-yank-word): Use
buffer-substring-no-properties instead of buffer-substring.
to prevent the point moving to the end of a composition when a
part of a composition is searched.
(isearch-other-meta-char): If the key invoking this command can be
mapped by function-key-map to a printing char, call
isearch-process-search-char directly.
(isearch-mode-map): Bind mouse-2 to isearch-mouse-yank.
(isearch-switch-frame-handler): Comment out (unused).
(isearch-yank-x-selection, isearch-ring-advance-edit): Doc fix.
(isearch-ring-retreat-edit): Doc fix.
(isearch-mouse-yank): New command.
(isearch-last-command-char): Removed. Callers changed to use
last-command-char.
(isearch-char-to-string): Removed. Callers changed to use
char-to-string.
(isearch-input-method-local-p): New variable.
(isearch-mode): Setup the above two variable. Set
input-method-function to nil locally.
(isearch-done): Restore the previous value of
input-method-function.