emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

compile.el underlining


From: Richard Stallman
Subject: compile.el underlining
Date: Fri, 17 Jun 2005 10:58:38 -0400

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)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]