Phi-search by Zk-Phi
https://github.com/zk-phi/phi-search
The name Phi is not related to Greek letter π
Features
Provides an enhanced incremental search experience with features that make searching in the buffer more intuitive, particularly in conjunction with multiple-cursors.
As you type your search query, phi-search highlights matches in the buffer.
You have commands like phi-search-again-or-next and phi-search-again-or-previous to cycle through matches. Additionally, there are commands to scroll the buffer, recenter, and toggle case sensitivity.
If there is an active region when phi-search is invoked, it is used as the default search query.
To achieve this with default isearch one uses C-s w
A standout features of phi-search
is its integration with the multiple-cursors
package. If you have multiple cursors active, you can use phi-search to concurrently search from each cursor's position.
The multiple-cursors package is a great tool in Emacs. Users love the power of multiple-cursors combined with phi-search. With phi-search, navigating through text using multiple-cursors becomes even more dynamic. Searching with multiple cursors active is a standout feature of phi-search. Both multiple-cursors and phi-search are must-haves for advanced Emacs users.
With phi-replace.el, the package also offers search and replace functionality that leverages the same interface as phi-search.
Usage
(require 'phi-search) (global-set-key (kbd "C-s") 'phi-search) (global-set-key (kbd "C-r") 'phi-search-backward)
Main commands
[C-s] phi-search-again-or-next
[C-r] phi-search-again-or-previous
[C-v] phi-search-scroll-up
[M-v] phi-search-scroll-down
[C-l] phi-search-recenter
[M-c] phi-search-case-toggle
[C-w] phi-search-yank-word – useful when you want to extend your search query with adjacent words or terms without having to manually type them
[RET] phi-search-complete – end search
[C-RET] phi-search-complete-at-beginning –end search, place cursor at beginning
[C-c C-c] phi-search-unlimit – forces the search to update results without being constrained by the setting phi-search-limit.
(setq phi-search-limit 3)
[C-g] phi-search-abort