zsh-workers
 help / color / mirror / code / Atom feed
From: Sven Wischnowsky <wischnow@informatik.hu-berlin.de>
To: zsh-workers@sunsite.auc.dk
Subject: Re: Question
Date: Wed, 12 Apr 2000 10:51:55 +0200 (MET DST)	[thread overview]
Message-ID: <200004120851.KAA07258@beta.informatik.hu-berlin.de> (raw)
In-Reply-To: "Bart Schaefer"'s message of Tue, 11 Apr 2000 15:45:16 +0000


Bart Schaefer wrote:

> ...
> 
> I was going to reply to a lot more of the remarks in this thread, but I
> think it comes down to:  I don't think we should be "in the business" of
> implementing pagers, but some alternate ideas come to mind ...
> 
> ...
> 
> Here are two possible suggestions; I haven't actually attempted either
> of them.
> 
> (1)  Format up the completion listing as if it were going to shout, but
> stuff it all into a string instead.  (That's probably happening already,
> I didn't look.)  Then point a parameter at that string and invoke vared.
> ZLE already takes care of paging up and down.
> 
> With some diddling of key-bindings, you can move around on the current
> "screen" just as in menu-selection and arrange to exit from vared with
> the parameter set to the substring the cursor was over when accept-line
> was pressed.

I agree that this sounds very interesting, but there are two things
I'm worried about:

The first one is a real problem that can't be avoided with this
solution: the colouring that's possible with complist would be lost. I 
guess you don't use it, but I at least have become quite fond of it. I 
especially like the look of a process listing in menu-selection with
the `cursor' in red, spanning the whole line. Much better `readable'
then the typical single-character cursor on a all black-on-white (grey 
for me) style vared could give us.

The second one is mostly a fear, I haven't fully checked: the
completion listing code is currently a bit like a separate system,
separated from the sorroundings, that is. I'm not sure what could
happen when we allow something like vared (with possible user defined
widgets being called) while the completion list is displayed.
Especially for menu-selection, I think. Maybe that isn't really a
problem, though. But it would also mean that the prompt wouldn't be
visible during a menu-selection.

And then: all the changes needed to build the string (which may also
get pretty large). Urgh.

> (2) Use a "select x in ..." loop over the values.  As of some while ago,
> select already knows how to page through screenfuls of choices.  You
> can't go backwards, but it cycles to the top after reaching the bottom.

I never liked select and fiddling with numbers in completion lists
seems weird to me. But then: `select already knows how to page' and `I
don't think we should be "in the business" of implementing pagers'.

If select does pages, why shouldn't the completion code do that,
too. There were times when they were implemented by the same function, 
almost.


I've played with implementing some of the stuff yesterday evening and
it's surprisingly small and menu-selection with scrolling looks funny.
Can't show you the patch yet, though, because it's incompatible with
the current CVS and there are some things missing/untested.

And never fear: I certainly won't commit the patch without showing it
to the list first.

A final thought: complist is intended as the module to allow fancy
completion list handling... would it be acceptable to add this
scrolling stuff only to it? Well, some basic functions would need to
be in the complete module...

Bye
 Sven


--
Sven Wischnowsky                         wischnow@informatik.hu-berlin.de


             reply	other threads:[~2000-04-12  8:52 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-04-12  8:51 Sven Wischnowsky [this message]
2000-04-12  8:56 ` Question Andrej Borsenkow
2000-04-12 16:06 ` Question Bart Schaefer
  -- strict thread matches above, loose matches on Subject: below --
2000-04-11  8:13 Question Sven Wischnowsky
2000-04-11  8:22 ` Question Andrej Borsenkow
2000-04-11  8:36   ` Question Sven Wischnowsky
2000-04-11  9:51     ` Question Sven Wischnowsky
2000-04-11 10:03       ` Question Andrej Borsenkow
2000-04-11 15:45         ` Question Bart Schaefer
2000-04-10  8:24 Question Sven Wischnowsky
2000-04-10 16:49 ` Question Oliver Kiddle
2000-04-10  8:05 Question Sven Wischnowsky
2000-04-10  8:09 ` Question Andrej Borsenkow
2000-04-11 20:19 ` Question Peter Stephenson

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=200004120851.KAA07258@beta.informatik.hu-berlin.de \
    --to=wischnow@informatik.hu-berlin.de \
    --cc=zsh-workers@sunsite.auc.dk \
    /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.vuxu.org/mirror/zsh/

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).