Я пытаюсь создать функцию в моем .emacs для привязки к kbd "*" в злом режиме, чтобы выделить слово под курсором в дополнение к обычным поискам, как в vim.emacs выделить слово под курсором
Я изменил сценарий из: http://www.emacswiki.org/emacs/SearchAtPoint
Это то, что у меня есть:
(defun isearch-yank-regexp (regexp)
"Pull REGEXP into search regexp."
(let ((isearch-regexp nil)) ;; Dynamic binding of global.
(isearch-yank-string regexp))
(if (not isearch-regexp)
(isearch-toggle-regexp))
(isearch-search-and-update))
(defun isearch-yank-symbol()
"Put symbol at current point into search string."
(interactive)
(let ((sym (highlight-regexp)))
(if (null sym)
(message "No symbol at point")
(isearch-yank-regexp
(concat "\\_<" (regexp-quote sym) "\\_>")) 'hi-yellow)))
Там, кажется, какая-то ошибка здесь:
let: Wrong number of arguments: #[(regexp &optional face)
Я сюсюкать новичку.
Не могли бы вы помочь исправить это?
Вы вызываете 'highlight-regexp' с 0 args, а для этого требуется по крайней мере 1. Используйте' f1 f' для чтения функции doc для 'highlight-regexp' –
Можете ли вы объяснить, почему значение по умолчанию * во зле «В соответствии с вашими потребностями? Он уже подчеркивает слово под точкой и ищет его вперед. Кроме того, вы можете увеличить время его выделения (setq evil-flash-delay 10). – Ehvince
Я думаю, это похоже на [это] (http://stackoverflow.com/a/387877/4247851). Оформить заказ :) –