Re: Use region as initial search regexp

Marco Wahl <[email protected]> Mon, 27 May 2019 00:05:03 +0200
Newsgroups gmane.emacs.bbdb.user
Organization Marco Wahl
Message-ID <[email protected]>
> How about the following so that the default is also spliced into the
> prompt?  (Also, I believe this makes sense only if the region is
> more than just an empty string.)
>
>
> (defun bbdb-search-read (&optional field)
>   "Read regexp to search FIELD values of records.
> When region is active make it the default."
>   (let ((default (if (and (region-active-p)
>                           (< (region-beginning) (region-end)))
>                      (buffer-substring-no-properties
>                       (region-beginning) (region-end)))))
>     (read-string (format "Search records%s %smatching regexp: %s"
>                          (if field (concat " with " field) "")
>                          (if bbdb-search-invert "not " "")
>                          (if default (format "(default %s) " default) ""))
>                  nil nil default)))

This looks good to me.  I like the display of the region in the prompt.
This way the user is not obliged to recall the M-n keybinding.


Best regards