unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* compile.el underlining
@ 2005-06-17 14:58 Richard Stallman
  2005-06-17 15:41 ` Stefan Monnier
  0 siblings, 1 reply; 4+ messages in thread
From: Richard Stallman @ 2005-06-17 14:58 UTC (permalink / raw)


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)

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2005-06-18  2:20 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-06-17 14:58 compile.el underlining Richard Stallman
2005-06-17 15:41 ` Stefan Monnier
2005-06-17 15:42   ` Stefan Monnier
2005-06-18  2:20   ` Richard Stallman

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).