1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-11 09:20:51 +00:00
Commit Graph

320 Commits

Author SHA1 Message Date
Chong Yidong
8c0f49f09c * lisp/replace.el (occur-mode-map): Rebind occur-edit-mode to "e".
(occur-edit-mode-map): Bind C-c C-c to occur-cease-edit and C-o to
occur-mode-display-occurrence.
(occur-edit-mode): Add usage message.
(occur-cease-edit): New command.
(occur-after-change-function): Use text properties to find the
position of the prefix text.
(occur-engine): Set stickiness of prefix text properties.

Fixes: debbugs:8463
2011-09-17 17:28:17 -04:00
Chong Yidong
17bb0a2d83 * replace.el (occur-mode-goto-occurrence): Don't force using other window.
Fixes: debbugs:9499
2011-09-14 11:14:34 -04:00
Chong Yidong
3199b96fc5 Fix various uses of display-buffer and pop-to-buffer
to avoid using special-display-* and same-window-* variables.

* lisp/buff-menu.el (Buffer-menu-switch-other-window): Use second arg
of display-buffer.
(Buffer-menu-2-window): Use switch-to-buffer-other-window.

* lisp/replace.el (occur-mode-goto-occurrence)
(occur-mode-display-occurrence) Use second arg of pop-to-buffer
and display-buffer.

* lisp/window.el (display-buffer-alist): Add *Python*.

* lisp/mail/reporter.el (reporter-submit-bug-report): Use second arg of
display-buffer.

* lisp/mail/sendmail.el (sendmail-user-agent-compose): Don't bind the
special-display and same-window variables.
(mail-other-window): Use switch-to-buffer-other-window.
(mail-other-frame): USe switch-to-buffer-other-frame.

* lisp/progmodes/gdb-mi.el (gdb-frame-gdb-buffer): Use
display-buffer-other-frame.
(gdb-display-gdb-buffer): Use pop-to-buffer.

* lisp/progmodes/gud.el (gud-goto-info): Use info-other-window.

* lisp/progmodes/python.el: Don't set same-window-buffer-names.

* lisp/textmodes/bibtex.el (bibtex-search-entry): Use switch-to-buffer.
2011-09-10 17:15:28 -04:00
Lars Magne Ingebrigtsen
5cf5614360 * replace.el (multi-occur): Mention
`multi-occur-in-matching-buffers' in the doc string.

Fixes: debbugs:7566
2011-07-02 15:53:53 +02:00
Leo Liu
60e5652346 New major mode: Occur Edit mode.
* lisp/replace.el (occur-menu-map, occur-edit-mode-map): New vars.
(occur-mode-map): Bind occur-edit-mode.  Use occur-menu-map.
(occur-edit-mode): New major mode (Bug#8463).
(occur-after-change-function): New function.
(occur-engine): Give Occur tags a read-only property.
2011-05-28 18:56:14 -04:00
Juanma Barranquero
06b605171f lisp/*.el: Lexical-binding cleanup. 2011-04-19 15:44:55 +02:00
Glenn Morris
12544bbe75 * lisp/replace.el (occur-mode-map): Some fixes for menu items. 2011-04-07 20:05:58 -07:00
Glenn Morris
2b0c733045 Merge from emacs-23; up to 2010-06-03T05:41:49Z!rgm@gnu.org. 2011-02-27 17:07:29 -08:00
Glenn Morris
97610156f4 Fix spelling of "precede". 2011-02-22 23:08:12 -08:00
Stefan Monnier
b016851cb1 Move keymap initialization into declaration.
* lisp/textmodes/enriched.el (enriched-mode-map):
* lisp/textmodes/bib-mode.el (bib-mode-map):
* lisp/term/lk201.el (lk201-function-map):
* lisp/tar-mode.el (tar-mode-map):
* lisp/replace.el (occur-mode-map):
* lisp/progmodes/idlwave.el (idlwave-rinfo-mouse-map, idlwave-rinfo-map):
* lisp/progmodes/idlw-help.el (idlwave-help-mode-map):
* lisp/progmodes/gdb-mi.el (gdb-memory-format-menu, gdb-memory-unit-menu):
* lisp/play/solitaire.el (solitaire-mode-map):
* lisp/play/snake.el (snake-mode-map, snake-null-map):
* lisp/play/pong.el (pong-mode-map):
* lisp/play/handwrite.el (menu-bar-handwrite-map):
* lisp/play/gametree.el (gametree-mode-map):
* lisp/net/rcirc.el (rcirc-mode-map, rcirc-browse-url-map
(rcirc-multiline-minor-mode-map, rcirc-track-minor-mode-map):
* lisp/net/newst-plainview.el (newsticker-menu, newsticker-mode-map)
(newsticker--url-keymap):
* lisp/net/net-utils.el (nslookup-mode-map, ftp-mode-map):
* lisp/menu-bar.el (menu-bar-file-menu, menu-bar-i-search-menu)
(menu-bar-search-menu, menu-bar-replace-menu, menu-bar-goto-menu)
(menu-bar-edit-menu, menu-bar-custom-menu)
(menu-bar-showhide-fringe-ind-menu, menu-bar-showhide-fringe-menu)
(menu-bar-showhide-scroll-bar-menu, menu-bar-showhide-menu)
(menu-bar-line-wrapping-menu, menu-bar-options-menu)
(menu-bar-games-menu, menu-bar-encryption-decryption-menu)
(menu-bar-tools-menu, menu-bar-describe-menu)
(menu-bar-search-documentation-menu, menu-bar-manuals-menu)
(menu-bar-help-menu):
* lisp/mail/rmailsum.el (rmail-summary-mode-map):
* lisp/kmacro.el (kmacro-step-edit-map):
* lisp/ibuffer.el (ibuffer-mode-groups-popup, ibuffer-mode-map)
(ibuffer-mode-operate-map):
* lisp/hi-lock.el (hi-lock-menu, hi-lock-map):
* lisp/emulation/vip.el (vip-mode-map):
* lisp/emacs-lisp/re-builder.el (reb-lisp-mode-map):
* lisp/bookmark.el (bookmark-bmenu-mode-map):
* lisp/help-mode.el (help-mode-map):
* lisp/erc/erc-list.el (erc-list-menu-mode-map):
* lisp/org/org-remember.el (org-remember-mode-map):
* lisp/org/org-src.el (org-src-mode-map): Move initialization into declaration.
2011-02-10 11:56:00 -05:00
Sam Steingold
abef340a0c * lisp/simple.el (special-mode-map): Bind "h" to `describe-mode';
bind "z" to `kill-this-buffer'.
(completion-list-mode-map): Bind "z" to `kill-this-buffer'.
* lisp/apropos.el (apropos-mode-map): Inherit from `special-mode-map'.
(apropos-mode): Inherit from `special-mode'.
* lisp/arc-mode.el (archive-mode-map): Inherit from `special-mode-map'.
* lisp/bookmark.el (bookmark-bmenu-mode): Define using
`define-derived-mode' inheriting from `special-mode'.
* lisp/dired.el (dired-mode-map): Inherit from `special-mode-map'.
* lisp/image-mode.el (image-mode-map): Ditto.
* lisp/replace.el (occur-mode): Define using
`define-derived-mode' inheriting from `special-mode'.
* lisp/tar-mode.el (tar-mode): Inherit from `special-mode'.
* lisp/calendar/diary-lib.el (diary-fancy-display-mode):
Inherit from `special-mode-map'.
* lisp/emacs-lisp/ert.el (ert-simple-view-mode, ert-results-mode):
Inherit from `special-mode'.
* lisp/emacs-lisp/package.el (package-menu-mode-map): Copy from
`special-mode-map'.
(package-menu-mode): Define using `define-derived-mode'
inheriting from `special-mode'.
* erc/erc-list.el (erc-list-menu-mode): Inherit from `special-mode'.
* lisp/net/xesam.el (xesam-mode): Inherit from `special-mode'.
(xesam-mode-map): Define separately.
* lisp/play/solitaire.el (solitaire-mode): Inherit from `special-mode'.
* lisp/progmodes/compile.el (compilation-minor-mode-map)
(compilation-mode-map): Inherit from `special-mode-map'.
* lisp/vc/diff-mode.el (diff-mode-shared-map):
Inherit from `special-mode-map'.
* lisp/vc/log-view.el (log-view-mode-map): Add a comment.
2011-02-01 16:22:21 -05:00
Glenn Morris
73b0cd5003 Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
Glenn Morris
0d9f702fd0 Nuke arch-tags. 2011-01-15 15:16:57 -08:00
Stefan Monnier
77ab81d054 Merge from emacs-23 2011-01-14 12:18:41 -05:00
Glenn Morris
5df4f04cd3 Add 2011 to FSF/AIST copyright years. 2011-01-02 15:50:46 -08:00
Tak Ota
15af15e549 * lisp/replace.el: Add "collect" feature to occur.
(occur-collect-regexp-history): New var.
(occur-read-primary-args): Return a replace string for nlines, if needed.
(occur): Extend the meaning of nlines.
2010-12-03 20:58:06 -05:00
Chong Yidong
bd78fa1d54 Add "Package:" file headers to denote built-in packages. 2010-08-29 12:17:13 -04:00
Chong Yidong
7815fe1985 Merge changes from emacs-23 branch 2010-08-08 17:12:29 -04:00
Johan Bockgård
e54a107503 Fix query-replace-regexp incomplete highlighting (Bug#6808).
* replace.el (replace-highlight): Bind isearch-forward and
isearch-error, ensuring that highlighting is updated if the user
switches the search direction (Bug#6808).

* isearch.el (isearch-lazy-highlight-forward): New var.
(isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
(isearch-lazy-highlight-update): Use it.
2010-08-08 16:55:52 -04:00
Juri Linkov
201d895a4a * replace.el (replace-highlight): Fix lazy-highlighting
for `M-s w str M-% str RET'.
2010-05-21 01:49:53 +03:00
Juri Linkov
0ef84fc806 * replace.el (occur-accumulate-lines): Move occur-engine related
functions `occur-accumulate-lines' and `occur-engine-add-prefix'
to be located after `occur-engine'.
2010-03-30 19:38:45 +03:00
Juri Linkov
dc2d2590b2 Make occur handle multi-line matches cleanly with context.
http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01280.html

* replace.el (occur-accumulate-lines): Add optional arg `pt'.
(occur-engine): Add local variables `ret', `prev-after-lines',
`prev-lines'.  Use more arguments for `occur-context-lines'.
Set first elem of its returned list to `data', and the second elem
to `prev-after-lines'.  Don't print the separator line.
In the end, print remaining context after-lines.
(occur-context-lines): Add new arguments `begpt', `endpt',
`lines', `prev-lines', `prev-after-lines'.  Rewrite to combine
after-lines of the previous match with before-lines of the
current match and not overlap them.  Return a list with two
values: the output line and the list of context after-lines.

* search.texi (Other Repeating Search): Remove line that `occur'
can not handle multiline matches.

* occur-testsuite.el (occur-tests): Add tests for context lines.
2010-03-30 19:03:08 +03:00
Juri Linkov
47c88c067f * replace.el (occur-accumulate-lines): Fix a bug where the first
context line at the beginning of the buffer was missing.
2010-03-30 18:44:50 +03:00
Juri Linkov
774642e549 Implement Occur multi-line matches.
http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01044.html

* replace.el (occur): Doc fix.
(occur-engine): Set `begpt' to the beginning of the first line.
Set `endpt' to the end of the last match line.  At first, count
line numbers between `origpt' and `begpt'.  Split out code from
`out-line' variable to new let-bindings `match-prefix' and
`match-str'.  In `out-line' add non-numeric prefix to all
non-first lines of multi-line matches.  Finally, count lines
between `begpt' and `endpt' and add to `lines'.
2010-03-23 18:09:45 +02:00
Juri Linkov
53e87c57be * replace.el (occur-engine-line): Add optional arg `keep-props'.
(occur-accumulate-lines, occur-engine): Add arg `keep-props'.
2010-03-23 17:48:09 +02:00
Juri Linkov
f14d1172a2 * replace.el (occur-accumulate-lines, occur-engine):
Use `occur-engine-line' instead of duplicate code.
(occur-engine-line): New function created from duplicate code
in `occur-accumulate-lines' and `occur-engine'.
2010-03-23 09:16:57 +02:00
Juri Linkov
d66ecdbb4a Fix message of multi-line occur regexps and multi-buffer header lines.
http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg00457.html

* replace.el (occur-1): Don't display regexp if it is longer
than window-width.  Use `query-replace-descr' to display regexp.
(occur-engine): Don't display regexp in the buffer header for
multi-buffer occur.  Display a separate header line with total
match count and regexp for multi-buffer occur.
Use `query-replace-descr' to display regexp.
2010-03-21 12:52:51 +02:00
Glenn Morris
84d0a5f881 Use query-replace-{from,to}-history-variable in more places.
* replace.el (query-replace-history): Give it a doc string.
(map-query-replace-regexp): Use query-replace-from-history-variable
and query-replace-to-history-variable.
2010-03-17 23:44:36 -07:00
Glenn Morris
114f9c9679 Add 2010 to copyright years. 2010-01-13 00:35:10 -08:00
Juri Linkov
2952b1ae04 (perform-replace): Let-bind recenter-last-op to nil.
For def=recenter, replace `recenter' with `recenter-top-bottom'
that is called with `this-command' and `last-command' let-bound
to `recenter-top-bottom'.  When the last `def' was not `recenter',
set `recenter-last-op' to nil.  (Bug#4981)
2009-11-30 16:05:47 +00:00
Dan Nicolaescu
6d341a2a09 * textmodes/ispell.el (ispell-skip-region-alist):
* textmodes/css-mode.el (auto-mode-alist):
* progmodes/compile.el (auto-mode-alist):
* international/mule.el (ctext-non-standard-encodings-alist)
(ctext-non-standard-encodings-regexp):
* simple.el (shell-command-switch, text-read-only):
* replace.el (occur-mode-map):
* paths.el (rmail-file-name):
* jka-cmpr-hook.el (jka-compr-build-file-regexp):
* find-file.el (ff-special-constructs):
* files.el (file-name-handler-alist):
* composite.el: Purecopy strings.
2009-11-12 06:55:39 +00:00
Dan Nicolaescu
a3c20c832c * subr.el (menu-bar-separator): New defconst.
* replace.el (occur-mode-map):
* menu-bar.el (menu-bar-file-menu, menu-bar-search-menu)
(menu-bar-edit-menu, menu-bar-goto-menu, menu-bar-edit-menu)
(menu-bar-custom-menu, menu-bar-showhide-menu)
(menu-bar-options-menu, menu-bar-tools-menu)
(menu-bar-encryption-decryption-menu, menu-bar-describe-menu)
(menu-bar-search-documentation-menu, menu-bar-manuals-menu)
(menu-bar-help-menu):
* ediff-hook.el (menu-bar-ediff-menu, menu-bar-ediff-merge-menu):
* buff-menu.el (Buffer-menu-mode-map): Use menu-bar-separator.
2009-11-11 05:57:51 +00:00
Dan Nicolaescu
8f43cbf352 * puresize.h (BASE_PURESIZE): Increase to 1430000.
* term/tty-colors.el (msdos-color-values): Remove declaration, unused.
(color-name-rgb-alist, tty-standard-colors)
(tty-color-mode-alist): Change to defconst.

* simple.el (mark-inactive): Purecopy message.

* menu-bar.el (menu-bar-make-mm-toggle, menu-bar-make-toggle): Fix macro.
(global-map, yank-menu):
* textmodes/ispell.el (ispell-menu-map):
* net/eudc.el (eudc-tools-menu):
* international/mule-cmds.el (describe-language-environment-map)
(setup-language-environment-map, set-coding-system-map)
(mule-menu-keymap):
* vc-hooks.el (vc-menu-entry, vc-menu-map):
* replace.el (occur-mode-map):
* pcvs-defs.el (cvs-global-menu): Purecopy names and tooltips.

* bindings.el (propertized-buffer-identification): Purecopy
tooltip text.
2009-10-23 05:15:26 +00:00
Juri Linkov
99910cf46a (read-regexp): Return empty string when `default-value' is nil.
(keep-lines-read-args): Don't use empty string as the
default value for `read-regexp'.  (Bug#2495)
2009-08-12 20:56:25 +00:00
Chong Yidong
c4bf8039f5 (keep-lines-read-args): Use empty string as default (Bug#2495). 2009-02-27 15:31:36 +00:00
Glenn Morris
1e4bd40da2 Replace last-input-char with last-input-event. 2009-01-09 05:00:56 +00:00
Glenn Morris
ae940284fa Add 2009 to copyright years. 2009-01-05 03:18:22 +00:00
Lute Kamstra
9201cc281b * align.el:
* allout.el:
* apropos.el:
* arc-mode.el:
* autoinsert.el:
* avoid.el:
* battery.el:
* bookmark.el:
* buff-menu.el:
* calculator.el:
* chistory.el:
* cmuscheme.el:
* comint.el:
* compare-w.el:
* dabbrev.el:
* delim-col.el:
* desktop.el:
* diff-mode.el:
* diff.el:
* dired-aux.el:
* dired-x.el:
* dired.el:
* dos-vars.el:
* ediff-diff.el:
* ediff-help.el:
* ediff-init.el:
* ediff-merg.el:
* ediff-mult.el:
* ediff-ptch.el:
* ediff-vers.el:
* ediff-wind.el:
* ediff.el:
* emerge.el:
* facemenu.el:
* faces.el:
* ffap.el:
* filecache.el:
* find-dired.el:
* font-core.el:
* font-lock.el:
* forms.el:
* fringe.el:
* help-at-pt.el:
* hippie-exp.el:
* ido.el:
* image-file.el:
* imenu.el:
* indent.el:
* info.el:
* isearchb.el:
* iswitchb.el:
* jit-lock.el:
* jka-compr.el:
* log-edit.el:
* lpr.el:
* ls-lisp.el:
* man.el:
* menu-bar.el:
* midnight.el:
* mouse-sel.el:
* mouse.el:
* msb.el:
* outline.el:
* paren.el:
* pcmpl-cvs.el:
* pcmpl-gnu.el:
* pcomplete.el:
* pcvs-info.el:
* pcvs-parse.el:
* printing.el:
* ps-mule.el:
* ps-print.el:
* replace.el:
* ruler-mode.el:
* saveplace.el:
* sb-image.el:
* scroll-bar.el:
* sha1.el:
* shadowfile.el:
* shell.el:
* sort.el:
* speedbar.el:
* strokes.el:
* tempo.el:
* term.el:
* terminal.el:
* time-stamp.el:
* time.el:
* tree-widget.el:
* type-break.el:
* vc-cvs.el:
* vc-hg.el:
* vc-mcvs.el:
* vc-rcs.el:
* vc-sccs.el:
* vc.el:
* view.el:
* w32-vars.el:
* whitespace.el:
* wid-edit.el: Remove leading * from docstrings of defcustoms,
deffaces, defconsts and defuns.
2008-12-03 05:48:14 +00:00
Juanma Barranquero
3f2372cbcb * replace.el (how-many): Fix typo in docstring.
Reported by Leo Liu <sdl.web@gmail.com>.
2008-10-22 11:11:01 +00:00
Juri Linkov
04ff2deeb3 (query-replace, query-replace-regexp)
(replace-string, replace-regexp, perform-replace): Add "word"
indicatiors to the prompt for word delimited replacements.
2008-10-19 22:34:35 +00:00
Juri Linkov
10965505b4 (read-regexp): Rename arg default' to default-value'. Doc fix. 2008-10-19 22:04:59 +00:00
Chong Yidong
f2e7b9ef88 (perform-replace): Don't set inhibit-read-only using
query-replace-skip-read-only (bug#956).
2008-09-12 00:37:41 +00:00
Juri Linkov
714da75728 (read-regexp): Add second arg `default'. Doc fix.
(occur-read-primary-args): Use `(car regexp-history)'
as the second arg of `read-regexp'.
2008-07-29 14:44:35 +00:00
Juri Linkov
b591f3387a (multi-query-replace-map): New variable.
(perform-replace): Add processing of new multi-buffer keys bound
to `automatic-all' and `exit-current'.  Set `query-flag' to nil
if last input char was `automatic-all'.  Set new local variable
`multi-buffer' to t when one of new two keys were typed.  Return
non-nil value of `multi-buffer' that tells to calling functions
to continue replacement on the next file.
2008-07-23 01:18:39 +00:00
Juri Linkov
96f606c5e6 (read-regexp): New function.
(keep-lines-read-args, occur-read-primary-args):
Call `read-regexp' instead of code moved to new function.
(keep-lines, flush-lines, how-many): Remove parenthesis and colon
from the end of prompt.
(replace-re-search-function): Doc fix.
2008-06-29 16:10:11 +00:00
Chong Yidong
c35a09fc44 (replace-search-function, replace-re-search-function): New vars.
(perform-replace): Use them.
2008-06-06 20:32:11 +00:00
Glenn Morris
eb3fa2cfcf Switch to recommended form of GPLv3 permissions notice. 2008-05-06 08:06:51 +00:00
Juri Linkov
360289a661 (occur-read-primary-args): Set default to the car of
regexp-history and display it in the prompt, but don't add to the
list of minibuffer defaults.  Bind history-add-new-input to nil to
not add automatically `default'.  For empty input return `default'.
Otherwise, add `input' to regexp-history and return it.
(occur-1): Signal an error for the empty regexp.
2008-05-01 23:55:44 +00:00
Dan Nicolaescu
a22f42ace8 (occur-mode-map): Add :help. 2008-03-21 06:12:35 +00:00
Carsten Dominik
8e62d5e855 * replace.el (occur-mode-find-occurrence-hook): New hook that can
be used to reveal or highlight the location of a match.
	(occur-mode-goto-occurrence)
	(occur-mode-goto-occurrence-other-window)
	(occur-mode-display-occurrence): Run
	`occur-mode-find-occurrence-hook'.
2008-01-23 10:49:31 +00:00