È possibile inviare l'output da un filtro di processo al *Messages*
buffer e sopprimere l'output del messaggio dall'area di eco, in modo tale da poter utilizzare simultaneamente i comandi interattivi senza minibuffer-prompt
essere cancellato dall'output del filtro di subpress in corso?
(defun rsync-process-filter (proc string)
(when (not (or
(string-match "files...\r" string)
(string-match "files to consider\n" string)))
(message "%s" string)))
EDIT (3 gennaio 2015): Il seguente è un collegamento a una domanda simile, tuttavia, non sono ancora stato in grado di farlo funzionare con una stringa di processo in cui la stringa esatta non è nota - il titolo del thread è: Emacs - Disabilita alcuni messaggi del Minibuffer :
*Messages*
buffer - i progetti relativi alla sincronizzazione sono uno di questi. Ci sono ancora un paio di cose che non ho provato ( perché pensavo che ci potesse essere una soluzione integrata ), come rendere il *Messages*
buffer temporaneamente scrivibile inhibit-read-only
e usare insert
at point-max
- Non so se verrà visualizzato in anche l'area dell'eco. Ci lavorerò di nuovo stasera. . .
M-x report-emacs-bug
e richiederlo come funzionalità?
(let ((inhibit-read-only t)) (with-current-buffer (get-buffer-create "*Messages*") (goto-char (point-max)) (insert string)))
e ho pubblicato una bozza di risposta, che sarà ammissibile per l'accettazione dopo che è scaduto il periodo di attesa obbligatorio sulla domanda di un utente. Ho presentato una richiesta di funzione con report-emacs-bug
: debbugs.gnu.org/cgi/bugreport.cgi?bug=19495
(messages-buffer)
per ottenere il buffer , se segui questo metodo e noti che (point-max)
non sarà sempre l'inizio di una nuova riga (ad esempio, usa C-g
).