all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Juri Linkov <juri@jurta.org>
To: David Koppelman <koppel@ece.lsu.edu>
Cc: "Lennart Borgman \(gmail\)" <lennart.borgman@gmail.com>,
	emacs-devel@gnu.org
Subject: Re: Yanking isearch to highlight-regexp
Date: Wed, 25 Jun 2008 02:09:36 +0300	[thread overview]
Message-ID: <87y74ubfnc.fsf@jurta.org> (raw)
In-Reply-To: <yg5skvbq4k0.fsf@nested.ece.lsu.edu> (David Koppelman's message of "Tue, 17 Jun 2008 13:50:23 -0500")

> That sounds good.

I'd like to submit a series of patches instead of lumping all changes
together in one patch.  The first patch below adds a new global prefix
key M-s for search related commands.  It provides global bindings for
the often used command `occur' and a set of hi-lock commands with the
mnemonic subprefix key `h'.

But I'm not sure if a better way to do this is to define a new key map
explicitly, e.g. with the name like "search-map"?

Index: lisp/bindings.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/bindings.el,v
retrieving revision 1.207
diff -c -r1.207 bindings.el
*** lisp/bindings.el	5 Jun 2008 19:59:15 -0000	1.207
--- lisp/bindings.el	24 Jun 2008 23:00:45 -0000
***************
*** 815,820 ****
--- 815,828 ----
  (define-key esc-map "gp" 'previous-error)
  (define-key esc-map "g\M-p" 'previous-error)
  
+ (define-key esc-map "so" 'occur)
+ (define-key esc-map "shr" 'highlight-regexp)
+ (define-key esc-map "shp" 'highlight-phrase)
+ (define-key esc-map "shl" 'highlight-lines-matching-regexp)
+ (define-key esc-map "shu" 'unhighlight-regexp)
+ (define-key esc-map "shf" 'hi-lock-find-patterns)
+ (define-key esc-map "shw" 'hi-lock-write-interactive-patterns)
+ 
  ;;(defun function-key-error ()
  ;;  (interactive)
  ;;  (error "That function key is not bound to anything"))

Index: lisp/isearch.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/isearch.el,v
retrieving revision 1.321
diff -c -r1.321 isearch.el
*** lisp/isearch.el	11 May 2008 20:30:27 -0000	1.321
--- lisp/isearch.el	24 Jun 2008 23:00:38 -0000
***************
*** 494,499 ****
--- 494,500 ----
      (define-key map [?\M-%] 'isearch-query-replace)
      (define-key map [?\C-\M-%] 'isearch-query-replace-regexp)
      (define-key map "\M-so" 'isearch-occur)
+     (define-key map "\M-shr" 'isearch-highlight-regexp)
  
      map)
    "Keymap for `isearch-mode'.")
***************
*** 1364,1369 ****
--- 1365,1385 ----
  	(search-upper-case nil))
      (occur regexp nlines)))
  
+ (defun isearch-highlight-regexp (regexp &optional face)
+   "Run `highlight-regexp' with regexp from the current search string.
+ Interactively, REGEXP is the current search regexp or a quoted search
+ string.  FACE has the same meaning as in `highlight-regexp'."
+   (interactive
+    (list
+     (hi-lock-regexp-okay
+      (if isearch-regexp isearch-string (regexp-quote isearch-string)))
+     (hi-lock-read-face-name)))
+   (isearch-done)
+   (isearch-clean-overlays)
+   ;; (add-to-history 'hi-lock-regexp-history regexp)
+   (let ((case-fold-search isearch-case-fold-search))
+     (hi-lock-face-buffer regexp face)))
+ 
  \f
  (defun isearch-delete-char ()
    "Discard last input item and move point back.

-- 
Juri Linkov
http://www.jurta.org/emacs/




  reply	other threads:[~2008-06-24 23:09 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-14 16:57 Yanking isearch to highlight-regexp Lennart Borgman (gmail)
2008-06-14 21:42 ` Mathias Dahl
2008-06-14 21:50   ` Stefan Monnier
2008-06-14 21:54     ` Mathias Dahl
2008-06-15  0:32       ` Juri Linkov
2008-06-15  0:08     ` Lennart Borgman (gmail)
2008-06-15  0:33       ` Juri Linkov
2008-06-15  1:48       ` Stefan Monnier
2008-06-15  9:47         ` Lennart Borgman (gmail)
2008-06-15 20:48           ` Juri Linkov
2008-06-15 21:10             ` Lennart Borgman (gmail)
2008-06-15 22:54               ` Juri Linkov
2008-06-15 23:09                 ` Lennart Borgman (gmail)
2008-06-16  9:34                   ` Juri Linkov
2008-06-16 11:13                     ` Lennart Borgman
2008-06-16 21:48                       ` Juri Linkov
2008-06-16 18:50             ` David Koppelman
2008-06-16 19:08               ` Lennart Borgman (gmail)
2008-06-16 21:50               ` Juri Linkov
2008-06-17 18:50                 ` David Koppelman
2008-06-24 23:09                   ` Juri Linkov [this message]
2008-06-25  1:43                     ` Stefan Monnier
2008-06-25 20:32                       ` Juri Linkov
2008-06-25 22:16                         ` Miles Bader
2008-06-25 22:22                           ` Lennart Borgman (gmail)
2008-06-25 22:58                             ` Miles Bader
2008-06-27 23:15                           ` Global keymaps [was: Yanking isearch to highlight-regexp] Juri Linkov
2008-06-27 23:20                             ` Lennart Borgman (gmail)
2008-06-27 23:32                               ` Juri Linkov
2008-06-28  0:28                             ` Global keymaps Miles Bader
2008-06-28  1:25                               ` Stefan Monnier
2008-06-28 19:45                               ` Juri Linkov
2008-06-28 22:51                                 ` Stefan Monnier
2008-06-29 16:17                                   ` Juri Linkov
2008-06-29 18:03                                     ` Stefan Monnier
2008-06-29 19:28                                       ` Juri Linkov
2008-06-29 20:03                                         ` Stefan Monnier
2008-06-29 20:52                                           ` Juri Linkov
2008-06-29 21:24                                             ` Lennart Borgman (gmail)
2008-06-30  1:00                                               ` Stefan Monnier
2008-06-28 22:02             ` Yanking isearch to highlight-regexp Juri Linkov
2008-06-28 22:23               ` Stefan Monnier
2008-06-29 16:19                 ` Juri Linkov
2008-06-29 18:07                   ` Stefan Monnier
2008-06-29 19:29                     ` Juri Linkov
2008-06-29 20:05                       ` Stefan Monnier
2008-06-29 20:55                         ` Juri Linkov
2008-06-30  1:01                           ` Stefan Monnier
2008-06-30 19:59                             ` Juri Linkov
2008-07-01 21:34                               ` Grep key bindings (was: Yanking isearch to highlight-regexp) Juri Linkov
2008-07-01 21:44                                 ` Grep key bindings Miles Bader
2008-07-01 21:54                                   ` Juri Linkov
2008-07-01 22:11                                     ` Miles Bader
2008-07-02 22:42                                       ` Juri Linkov
2008-07-03  6:53                                         ` joakim
2008-07-03  7:07                                           ` Miles Bader
2008-07-03 13:18                                         ` Ted Zlatanov
2008-07-03 22:06                                           ` Stefan Monnier
2008-07-03 14:50                                         ` Dan Nicolaescu
2008-07-03 15:37                                       ` Phil Jackson
2008-07-03 16:59                                         ` Drew Adams
2008-07-04 10:46                                       ` Eli Zaretskii
2008-07-04 10:59                                         ` Miles Bader
2008-07-30 17:49                               ` Yanking isearch to highlight-regexp Juri Linkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87y74ubfnc.fsf@jurta.org \
    --to=juri@jurta.org \
    --cc=emacs-devel@gnu.org \
    --cc=koppel@ece.lsu.edu \
    --cc=lennart.borgman@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.