Here's a patch to make compile.el underline the file names and line numbers and column numbers. Please try this and tell me what you think.
There is surely a more elegant way to do this which does not involve making so many new faces; someone who knows better how to set up font-lock-keywords, might give that a try. *** compile.el 12 Jun 2005 06:10:07 -0400 1.362 --- compile.el 16 Jun 2005 22:04:13 -0400 *************** *** 493,517 **** ;; backward-compatibility alias (put 'compilation-info-face 'face-alias 'compilation-info) (defvar compilation-message-face nil "Face name to use for whole messages. Faces `compilation-error-face', `compilation-warning-face', `compilation-info-face', `compilation-line-face' and `compilation-column-face' get prepended to this, when applicable.") ! (defvar compilation-error-face 'font-lock-warning-face "Face name to use for file name in error messages.") ! (defvar compilation-warning-face 'compilation-warning "Face name to use for file name in warning messages.") ! (defvar compilation-info-face 'compilation-info "Face name to use for file name in informational messages.") ! (defvar compilation-line-face 'font-lock-variable-name-face "Face name to use for line number in message.") ! (defvar compilation-column-face 'font-lock-type-face "Face name to use for column number in message.") ;; same faces as dired uses --- 493,552 ---- ;; backward-compatibility alias (put 'compilation-info-face 'face-alias 'compilation-info) + (defface compilation-error-file-name + '((default :inherit font-lock-warning-face) + (((supports :underline t)) :underline t)) + "Face for displaying file names in compilation errors." + :group 'font-lock-highlighting-faces + :version "22.1") + + (defface compilation-warning-file-name + '((default :inherit font-lock-warning-face) + (((supports :underline t)) :underline t)) + "Face for displaying file names in compilation errors." + :group 'font-lock-highlighting-faces + :version "22.1") + + (defface compilation-info-file-name + '((default :inherit compilation-info) + (((supports :underline t)) :underline t)) + "Face for displaying file names in compilation errors." + :group 'font-lock-highlighting-faces + :version "22.1") + + (defface compilation-line-number + '((default :inherit font-lock-variable-name-face) + (((supports :underline t)) :underline t)) + "Face for displaying file names in compilation errors." + :group 'font-lock-highlighting-faces + :version "22.1") + + (defface compilation-column-number + '((default :inherit font-lock-type-face) + (((supports :underline t)) :underline t)) + "Face for displaying file names in compilation errors." + :group 'font-lock-highlighting-faces + :version "22.1") + (defvar compilation-message-face nil "Face name to use for whole messages. Faces `compilation-error-face', `compilation-warning-face', `compilation-info-face', `compilation-line-face' and `compilation-column-face' get prepended to this, when applicable.") ! (defvar compilation-error-face 'compilation-error-file-name "Face name to use for file name in error messages.") ! (defvar compilation-warning-face 'compilation-warning-file-name "Face name to use for file name in warning messages.") ! (defvar compilation-info-face 'compilation-info-file-name "Face name to use for file name in informational messages.") ! (defvar compilation-line-face 'compilation-line-number "Face name to use for line number in message.") ! (defvar compilation-column-face 'compilation-column-number "Face name to use for column number in message.") ;; same faces as dired uses *************** *** 1342,1349 **** (force-mode-line-update) (if (and opoint (< opoint omax)) (goto-char opoint)) ! (if compilation-finish-function ! (funcall compilation-finish-function (current-buffer) msg)) (let ((functions compilation-finish-functions)) (while functions (funcall (car functions) (current-buffer) msg) --- 1377,1385 ---- (force-mode-line-update) (if (and opoint (< opoint omax)) (goto-char opoint)) ! (with-no-warnings ! (if compilation-finish-function ! (funcall compilation-finish-function (current-buffer) msg))) (let ((functions compilation-finish-functions)) (while functions (funcall (car functions) (current-buffer) msg) _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel