에코 영역에서만 메시지를 표시하는 방법


11

버퍼에 메시지를 기록하지 않고 에코 영역에 메시지를 표시 할 수 *Messages*있습니까?

답변:


12

바인딩 message-log-maxnil:

(defun foo ()
  (interactive)
  (let ((message-log-max nil))
    (message "EEEEEEEEEEEEEEEEEE")))

M-x foo RET

[PS sexp 를 평가하는 것의 메시지가에 의해 출력 된 메시지라고 M-: (let ((message-log-max nil)) (message "EEEEEEEEEEEEEEEEEE"))생각하는 것과 같은 것을 사용하는 테스트에 의해 오도되지 않습니다 . 대신 해당 평가에서 반환 된 값입니다. is 인 경우 아무것도 기록하지 않습니다 .]EEEEEEEEEEEEEEEEEE let messagemessage*Messages*message-log-maxnil


1

그것을 할 수있는 방법을 찾을 수 없었기 때문에이 이상한 기능을 해킹했습니다.

(defun echo-and-ignore-message-buffer (message)
  (let ((prev-msg-log-max message-log-max))
    (unwind-protect
        (progn (setq message-log-max nil)
               (message message))
      (setq message-log-max prev-msg-log-max))))

에 대한 설명서를 확인하십시오 message-log-max.


죄송합니다, Renan, Drew가 답변을 가장 먼저 게시했습니다 (1 분 전). 답변 주셔서 감사합니다 :-)
syl20bnr
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.