From: Jeff King <peff@peff.net>
To: Junio C Hamano <gitster@pobox.com>
Cc: David Kastrup <dak@gnu.org>, d9ba@mailtor.net, git@vger.kernel.org
Subject: Re: Harmful LESS flags
Date: Thu, 24 Apr 2014 17:35:29 -0400 [thread overview]
Message-ID: <20140424213529.GB7815@sigill.intra.peff.net> (raw)
In-Reply-To: <xmqq8uquv84u.fsf@gitster.dls.corp.google.com>
On Thu, Apr 24, 2014 at 12:29:21PM -0700, Junio C Hamano wrote:
> David Kastrup <dak@gnu.org> writes:
>
> > Junio C Hamano <gitster@pobox.com> writes:
> >
> >> Traditionally, because the tool grew in a context of being used in a
> >> project whose participants are at least not malicious, always having
> >> to be on the lookout for fear of middle-of-line tabs hiding bad
> >> contents near the right edges of lines has never been an issue.
> >
> > My beef is not with "hiding bad contents" but with "hiding contents".
> > It makes the output useless for seeing what is actually happening as
> > soon as the option starts having an effect.
>
> My suspicion is that one of the reasons why S was chosen to be in
> the default was to mildly discourage people from busting the usual
> line-length limit, but I am not Linus ;-)
I would think it's the opposite. Long lines look _horrible_ without
"-S", as they get wrapped at awkward points. Using "-S" means that long
lines don't bug you, unless you really want to scroll over and see the
content.
I really think the right solution here is to teach less to make it more
obvious that there is something worth scrolling over to. Here's a very
rough patch for less, if you want to see what I'm thinking of.
diff --git a/input.c b/input.c
index b211323..01aa411 100755
--- a/input.c
+++ b/input.c
@@ -178,6 +178,7 @@ get_forw_line:
*/
if (chopline || hshift > 0)
{
+ set_chopped_marker(ch_tell()-1);
do
{
if (ABORT_SIGS())
diff --git a/line.c b/line.c
index 1eb3914..b3358a0 100755
--- a/line.c
+++ b/line.c
@@ -1080,6 +1080,20 @@ set_status_col(c)
attr[0] = AT_NORMAL|AT_HILITE;
}
+ public void
+set_chopped_marker(pos)
+ POSITION pos;
+{
+ /*
+ * Roll back output by one character; probably
+ * we need to actually walk curr back further
+ * for multibyte characters?
+ */
+ column--;
+ curr--;
+ store_char('>', AT_NORMAL|AT_HILITE, NULL, pos);
+}
+
/*
* Get a character from the current line.
* Return the character as the function return value,
-Peff
next prev parent reply other threads:[~2014-04-24 21:35 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-23 23:46 Harmful LESS flags d9ba
2014-04-24 0:11 ` Jonathan Nieder
2014-04-28 21:38 ` Mark Nudelman
2014-04-24 5:06 ` David Kastrup
2014-04-24 19:02 ` Junio C Hamano
2014-04-24 19:21 ` David Kastrup
2014-04-24 19:29 ` Junio C Hamano
2014-04-24 19:50 ` David Kastrup
2014-04-24 21:35 ` Jeff King [this message]
2014-04-24 21:47 ` Junio C Hamano
2014-04-24 22:02 ` Jeff King
2014-04-24 21:48 ` David Kastrup
2014-04-24 22:13 ` Jeff King
2014-04-24 22:44 ` David Kastrup
2014-04-24 23:08 ` Jonathan Nieder
2014-04-25 6:56 ` Matthieu Moy
2014-04-25 15:11 ` Jonathan Nieder
2014-04-25 15:32 ` David Kastrup
2014-04-25 15:47 ` Jonathan Nieder
2014-04-28 8:34 ` [PATCH] PAGER_ENV: remove 'S' from $LESS by default Matthieu Moy
2014-04-28 8:43 ` David Kastrup
2014-04-28 8:59 ` Matthieu Moy
2014-04-28 9:14 ` David Kastrup
2014-04-28 12:22 ` Matthieu Moy
2014-04-28 16:24 ` Jeff King
2014-04-28 18:48 ` Junio C Hamano
2014-04-29 12:29 ` Matthieu Moy
2014-04-29 17:01 ` Junio C Hamano
2014-04-30 7:35 ` [PATCH v2] pager: " Matthieu Moy
2014-04-30 15:38 ` Junio C Hamano
2014-04-30 15:49 ` Matthieu Moy
2014-04-30 17:34 ` Junio C Hamano
2014-05-05 18:44 ` Jonathan Nieder
2014-05-05 20:10 ` Matthieu Moy
2014-05-06 17:34 ` Junio C Hamano
2014-05-06 18:00 ` David Kastrup
2014-05-06 18:49 ` Matthieu Moy
2014-05-06 21:55 ` Jeff King
2014-05-07 17:07 ` Junio C Hamano
2014-05-07 17:54 ` Matthieu Moy
2014-05-07 20:42 ` Junio C Hamano
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140424213529.GB7815@sigill.intra.peff.net \
--to=peff@peff.net \
--cc=d9ba@mailtor.net \
--cc=dak@gnu.org \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
/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.
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 NNTP newsgroup(s).