에코 영역에서 오프닝 패런을 인쇄하는 마이너 모드는 무엇입니까?


10

이것은 정말 좋은 기능이지만 커서 위치로 변경할 때가 아니라 파렌을 삽입 할 때만 표시됩니다. 이것을 표시하기 위해 호출 할 수있는 대화식 명령이 있습니까? 커서 이동시 표시되도록 구성 할 수 있습니까?

여기에 이미지 설명을 입력하십시오

답변:


6

이 메시지는 sexp의 시작이 창에 보이지 않을 때 인쇄됩니다. 그렇지 않으면 오프닝 패런이 일시적으로 강조 표시됩니다.

이 동작은 simple.el마이너 모드 에서 구현되며 연결되지 않습니다. 문자가 삽입 될 때 실행되는 후크를 사용하여 구현됩니다.

실제 깜박임 / 메시지는 command blink-matching-open에서 가져 오며 직접 호출 할 수 있습니다. 예를 들어, 닫는 Paren에서 잠시 일시 중지 할 때마다이 명령을 호출하는 유휴 타이머를 시작할 수 있습니다. 이것이 내장 show-paren-mode작동 방식입니다.

(defvar match-paren--idle-timer nil)
(defvar match-paren--delay 0.5)
(setq match-paren--idle-timer (run-with-idle-timer match-paren--delay t #'blink-matching-open))

나도 이것을 원하지만 어떻게 일시적이 아닌가? 즉, 커서가 움직일 때까지 메시지가 미니 버퍼에 유지되기를 원합니다.
Faheem Mitha

4

당신 M-x blink-matching-open RET이 paren 직후에 메시지를 표시하는 데 사용할 수 있습니다 . 더 "즉시"수행하기 위해 시도 M-x show-paren-mode하고 싶을 수도 있지만 실제로이 메시지를 제공하지는 않습니다.

그렇지 않으면 다음과 같은 것을 사용할 수 있습니다

(add-hook 'post-command-hook
          (lambda ()
            (if (and (not (bobp))
                     (eq ?\) (char-syntax (char-before))))
                (blink-matching-open))))
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.