Mercurial > emacs
comparison lisp/progmodes/compile.el @ 2472:f911936cec3f
(compilation-filter): New function.
(compile-internal): Make it the process's filter.
author | Roland McGrath <roland@gnu.org> |
---|---|
date | Wed, 07 Apr 1993 18:34:17 +0000 |
parents | c5e43751f9aa |
children | 57e371b49128 |
comparison
equal
deleted
inserted
replaced
2471:c5e43751f9aa | 2472:f911936cec3f |
---|---|
319 ;; Start the compilation. | 319 ;; Start the compilation. |
320 (let ((proc (start-process-shell-command (downcase mode-name) | 320 (let ((proc (start-process-shell-command (downcase mode-name) |
321 outbuf | 321 outbuf |
322 command))) | 322 command))) |
323 (set-process-sentinel proc 'compilation-sentinel) | 323 (set-process-sentinel proc 'compilation-sentinel) |
324 (set-process-filter proc 'compilation-filter) | |
324 (setq compilation-in-progress (cons proc compilation-in-progress)))) | 325 (setq compilation-in-progress (cons proc compilation-in-progress)))) |
325 ;; Make it so the next C-x ` will use this buffer. | 326 ;; Make it so the next C-x ` will use this buffer. |
326 (setq compilation-last-buffer outbuf))) | 327 (setq compilation-last-buffer outbuf))) |
327 | 328 |
328 (defvar compilation-mode-map | 329 (defvar compilation-mode-map |
401 (if compilation-finish-function | 402 (if compilation-finish-function |
402 (funcall compilation-finish-function buffer msg))) | 403 (funcall compilation-finish-function buffer msg))) |
403 (set-buffer obuf)))) | 404 (set-buffer obuf)))) |
404 (setq compilation-in-progress (delq proc compilation-in-progress)) | 405 (setq compilation-in-progress (delq proc compilation-in-progress)) |
405 )))) | 406 )))) |
407 | |
408 (defun compilation-filter (proc string) | |
409 "Process filter for compilation buffers. | |
410 Just inserts the text, but uses insert-before-markers." | |
411 (save-excursion | |
412 (set-buffer (process-buffer proc)) | |
413 (let ((buffer-read-only nil)) | |
414 (save-excursion | |
415 (goto-char (process-mark proc)) | |
416 (insert-before-markers string) | |
417 (set-marker (process-mark proc) (point)))))) | |
406 | 418 |
407 ;; Return the cdr of compilation-old-error-list for the error containing point. | 419 ;; Return the cdr of compilation-old-error-list for the error containing point. |
408 (defun compile-error-at-point () | 420 (defun compile-error-at-point () |
409 (compile-reinitialize-errors nil (point)) | 421 (compile-reinitialize-errors nil (point)) |
410 (let ((errors compilation-old-error-list)) | 422 (let ((errors compilation-old-error-list)) |