Isearch + делает то, что вы просите (как и Сосульки --- см. прочееответ , выше).
Вы можете определить контексты , которые ищет Isearch, используя любое из следующего:
- Регулярное выражение для сопоставления.
- Заданное свойство текста или наложения --- Контексты поиска - это текстовые зоны, у которых есть свойство (например, конкретное значение "face" или комбинация значений)
- Заданный Emacs
THING
(sexp, defun, list, string, comment и т. Д.) --- Контексты поиска - это текстовые зоны данного типа THING
.
Определив контексты поиска, вы также можете искать дополнение : non -контексты.Вы можете переключаться между контекстами поиска и не-контекстами в любое время в Isearch, используя C-M-~
.
При поиске по умолчанию зоны, в которых не выполняется поиск, слегка тускнеют, чтобы выделить области поиска.
Для поиска по контексту с помощью Isearch вам понадобятся две библиотеки: