Покажите внутри себя круглые скобки - Emacs

В Emacs есть режим show-paren-mode который окрашивает противоположные круглые скобки, когда курсор находится на другом. Я написал пример, объясняющий show-paren-mode:

( <-colored colored-> )| <-cursor 

Однако это не работает, когда курсор находится не в скобках:

( <-not colored    cursor inside->|    not colored ->)

Как я могу включить это? Я обнаружил, что при выполнении slurpage и barfage в paredit я не могу очень хорошо следить за круглыми скобками, потому что они не окрашены, если я не на них.

( <-colored     cursor->|     colored-> ) This is optimal

Изменить: Благодаря комментарию @lawlist я решил эту проблему.

2 ответа

Решение

Благодаря комментарию lawlist, я добавил код из его ответа на другой вопрос в мой файл инициализации.

Он окрашивает каждый набор соответствующих скобок в радугу.

Это хорошо работает для меня (более поздняя версия Emacs (чем 25?) Может потребоваться для реализации новой рекомендации):

(define-advice show-paren-function (:around (fn) fix)
  "Highlight enclosing parens."
  (cond ((looking-at-p "\\s(") (funcall fn))
        (t (save-excursion
             (ignore-errors (backward-up-list))
             (funcall fn)))))
Другие вопросы по тегам