unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Eli Zaretskii" <eliz@gnu.org>
Cc: Juri Linkov <juri@jurta.org>
Subject: Overlay arrow in *compilation* and *grep* buffers
Date: Sun, 24 Apr 2005 13:45:35 +0300	[thread overview]
Message-ID: <01c548ba$Blat.v2.4$e4827900@zahav.net.il> (raw)

A couple of weeks ago, a change to compile.el introduced an overlay
arrow into buffers created by compile.el: the overlay arrow now marks
the current line in the compilation buffer.  (Here, ``current line''
means the line whose locus is displayed in the other window;
next-error and mouse-1 change that line.)

At least on a text terminal, this feature is problematic.

First, suppose that "M-x compile" produced the following *compilation*
buffer (I indent the buffer contents 2 columns to the right to make it
stand out):

  -*- mode: compilation; default-directory: "~/" -*-
  gcc -Wall -O -c tfwd.c
  tfwd.c: In function `foo':
  tfwd.c:5: warning: implicit declaration of function `bar'
  tfwd.c: At top level:
  tfwd.c:11: warning: type mismatch with previous implicit declaration
  tfwd.c:5: warning: previous implicit declaration of `bar'
  tfwd.c:11: warning: `bar' was previously implicitly declared to return `int'
  tfwd.c: In function `bar':
  tfwd.c:13: warning: implicit declaration of function `callme'
  tfwd.c: At top level:
  tfwd.c:4: warning: `foo' defined but not used

  Compilation finished at Sun Apr 24 06:01:25

Now, if I type "C-x `", the window that displays the compilation
buffer looks like this:

  =>wd.c:5: warning: implicit declaration of function `bar'
  tfwd.c: At top level:
  tfwd.c:11: warning: type mismatch with previous implicit declaration
  tfwd.c:5: warning: previous implicit declaration of `bar'
  tfwd.c:11: warning: `bar' was previously implicitly declared to return `int'
  tfwd.c: In function `bar':
  tfwd.c:13: warning: implicit declaration of function `callme'
  tfwd.c: At top level:
  tfwd.c:4: warning: `foo' defined but not used

  Compilation finished at Sun Apr 24 06:01:25

Notice the overlay arrow that covered part of the file name: this is a
bug, IMHO.  If we want to have an arrow pointing out the current line,
we should indent the buffer text to the right as many columns as the
arrow string takes.

Moreover, next-error scrolls the display to keep the current line at
the top of the window.  I think it's a bit silly to mark the with an
arrow a line that is always at the top of its window; such an arrow
might make sense if we do not scroll the window except when the
current line is no longer visible.  Perhaps we need a user option to
control these two features (scrolling and arrow) in a way that would
by default prevent scrolling when the arrow is used to show the
current line.

Also, the arrow feature is not customizable.  What about users who
will dislike it and would wish to turn it off?

Finally, I don't really understand why new features such as this one
get installed while we are in a feature freeze.  At the very least, it
should have been discussed (such a discussion could also lead to
better design decisions wrt scrolling).  However, I couldn't find
anything related in emacs-devel archives (sorry if I missed
something).

             reply	other threads:[~2005-04-24 10:45 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-24 10:45 Eli Zaretskii [this message]
2005-04-24 18:42 ` Overlay arrow in *compilation* and *grep* buffers Kim F. Storm
2005-04-24 20:04   ` Eli Zaretskii
2005-04-27 13:10     ` Kim F. Storm
2005-04-27 14:39       ` Eli Zaretskii
2005-04-28 11:01       ` Richard Stallman
2005-04-28 19:51         ` Eli Zaretskii
2005-04-28 20:54           ` Nick Roberts
2005-04-29  7:08             ` Eli Zaretskii
2005-04-29  8:52               ` Nick Roberts
2005-05-09 20:55                 ` Juri Linkov
2005-05-10  6:40                   ` David Kastrup
2005-05-12 11:38                   ` Nick Roberts
2005-05-13  1:34                     ` Richard Stallman
2005-05-13  5:03                     ` Juri Linkov
2005-05-13  6:08                       ` Eli Zaretskii
2005-05-13  7:18                         ` Nick Roberts
2005-05-13 13:28                           ` Eli Zaretskii
2005-05-14  0:26                             ` Richard Stallman
2005-05-14  7:17                               ` Eli Zaretskii
2005-05-14 22:20                                 ` Kim F. Storm
2005-05-15 15:58                                   ` Richard Stallman
2005-05-13 13:02                       ` Nick Roberts
2005-05-14  0:25                         ` Richard Stallman
2005-05-15  2:44                           ` Nick Roberts
2005-05-15  4:12                             ` Eli Zaretskii
2005-05-15  4:21                             ` Eli Zaretskii
2005-05-15 22:39                             ` Richard Stallman
2005-05-16  1:20                               ` Nick Roberts
2005-05-16 19:28                                 ` Richard Stallman
2005-05-16 19:28                                 ` Richard Stallman
2005-05-16 22:16                                   ` Nick Roberts
2005-05-17 13:23                                     ` Richard Stallman
2005-04-29 10:49         ` Nick Roberts
2005-05-07 16:20         ` Eli Zaretskii
2005-05-07 21:10           ` Kim F. Storm
2005-05-08  0:41             ` Nick Roberts
2005-05-08  4:21               ` Eli Zaretskii
2005-05-08  5:49                 ` Nick Roberts
2005-05-08 16:12                 ` Richard Stallman
2005-05-08 19:37                   ` Eli Zaretskii
2005-04-25 16:05 ` Richard Stallman
2005-04-25 16:46   ` Eli Zaretskii
2005-04-26 14:33     ` Richard Stallman
2005-04-28 11:34 ` Nick Roberts
2005-04-28 19:50   ` Eli Zaretskii
2005-04-28 21:16     ` Nick Roberts
2005-04-29 10:15   ` Richard Stallman
2005-04-29 12:19     ` Nick Roberts

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='01c548ba$Blat.v2.4$e4827900@zahav.net.il' \
    --to=eliz@gnu.org \
    --cc=juri@jurta.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).