Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: prompt themes

Dirus wrote:
> I had been playing around with prompt themes a bit and I noticed a couple 
> of things.
> prompt_X_preview doesn't print the first or last blank line.  This means 
> the person writing the prompt theme would have to print the blank lines 
> between sample settings without printing the first or last.  Whoever is 

I'm not quite sure which blank lines you're talking about.

> writing the function also has to check "if (( ! $#* ));" to see if the user 
> passed in any parameters himself.  Each prompt_X_preview function will have 
> a lot of duplicate code.

I agree. It would probably be sensible if the theme system automatically
checked that and ran prompt_preview_theme with the parameters. It should
probably also do a preview even if there isn't a prompt_X_preview function
- there isn't for most.

> In the interest of consolidating all of the code and logic to one place and 
> also to make it easier for a person to set up a preview for their theme, 
> I'd like to create a patch for the prompt theming (and it's themes) that 
> that causes prompt_X_preview to return a list of settings in $reply (or 
> $REPLY).  (Is the lowercase preferred for an array of values?)

Yes, $reply for array values.

> Ideally prompt_X_preview would look like this:
> prompt_X_preview() {
>    reply=' singleparameter "param1 param2" "param1 param2" '
> }

Or, since it is an array,
  reply=( singleparameter "param1 param2" "param1 param2" )

> Also prompt_X_help could also be changed to set $reply for consistency sake.

I'm less convinced by that idea. There's not really any code that can
be factored out and it wouldn't make the functions any simpler.

> Anyone interested in seeing this?  Is it best to just send the diffs to the 
> mailing list?  There would be a lot of them, one for each prompt theme and 
> one for promptinit.

Just send a diff.

There's probably quite a few aspects of the prompt theming that could
be improved. Making colour schemes independent of specific fonts would
be one example. Perhaps sorting through the distributed themes too: it
isn't ideal that many don't work right unless your use some peculiar
font and terminal emulator.


PS. If anyone wants it, I have an MH prompt theme which sticks the
current folder and message number in the prompt.

Messages sorted by: Reverse Date, Date, Thread, Author