]> code.delx.au - gnu-emacs/commitdiff
(compilation-setup): Set local value of
authorNick Roberts <nickrob@snap.net.nz>
Mon, 16 May 2005 00:01:46 +0000 (00:01 +0000)
committerNick Roberts <nickrob@snap.net.nz>
Mon, 16 May 2005 00:01:46 +0000 (00:01 +0000)
overlay-arrow-string to "" always.
(compilation-set-window): Left fringe then don't scroll. No left
fringe then no arrow and scroll message to top.
(compilation-context-lines): Adjust doc string accordingly.

lisp/progmodes/compile.el

index f5180b1fb4824d42658db05b1e11b79f6c45caed..d08766f5a350d78ec473620c60965dd380f8bbae 100644 (file)
@@ -1247,8 +1247,7 @@ Optional argument MINOR indicates this is called from
   (make-local-variable 'compilation-messages-start)
   (make-local-variable 'compilation-error-screen-columns)
   (make-local-variable 'overlay-arrow-position)
-  (set (make-local-variable 'overlay-arrow-string)
-       (if (display-graphic-p) "=>" ""))
+  (set (make-local-variable 'overlay-arrow-string) "")
   (setq next-error-overlay-arrow-position nil)
   (add-hook 'kill-buffer-hook
            (lambda () (setq next-error-overlay-arrow-position nil)) nil t)
@@ -1575,9 +1574,12 @@ region and the first line of the next region."
       (setcdr loc (list line file marker)))
     loc))
 
-(defcustom compilation-context-lines 0
-  "*Display this many lines of leading context before message.
-If nil, don't scroll the compilation output window."
+(defcustom compilation-context-lines nil
+  "Display this many lines of leading context before the current message.
+If nil and the left fringe is displayed, don't scroll the
+compilation output window; an arrow in the left fringe points to
+the current message.  If nil and there is no left fringe, the message
+displays at the top of the window; there is no arrow."
   :type '(choice integer (const :tag "No window scrolling" nil))
   :group 'compilation
   :version "22.1")
@@ -1586,10 +1588,16 @@ If nil, don't scroll the compilation output window."
   "Align the compilation output window W with marker MK near top."
   (if (integerp compilation-context-lines)
       (set-window-start w (save-excursion
-                            (goto-char mk)
-                            (beginning-of-line (- 1 compilation-context-lines))
-                            (point))))
-  (set-window-point w mk))
+                           (goto-char mk)
+                           (beginning-of-line
+                            (- 1 compilation-context-lines))
+                           (point)))
+    (if (left-fringe-p)
+       (set-window-start w (save-excursion
+                             (goto-char mk)
+                           (beginning-of-line 1)
+                           (point)))))
+    (set-window-point w mk))
 
 (defvar next-error-highlight-timer)