zsh-workers
 help / color / mirror / code / Atom feed
* Re: 6-pws-2
@ 1999-08-31 12:38 Sven Wischnowsky
  1999-08-31 16:19 ` 6-pws-2 Tanaka Akira
  0 siblings, 1 reply; 14+ messages in thread
From: Sven Wischnowsky @ 1999-08-31 12:38 UTC (permalink / raw)
  To: zsh-workers


Tanaka Akira wrote:

> In article <9908301600.AA12634@ibmth.df.unipi.it>,
>   Peter Stephenson <pws@ibmth.df.unipi.it> writes:
> > - Personally, I prefer one single completion function for a suite of
> >   related commands like cvs or pbm, since the accumulated clutter (and
> >   added time to process completion files the first time) is large.  If it
> >   stays the way it is I will change the default for function installation
> >   to keep the subdirectories.
> 
> The separation is sometimes useful for custumizations because we can
> override each function individually. These functions behaves like `hook'.
> I think it is useful that making hooks more easily without adding new files.

Hm. How about making it a bit like a state machine:

In functions like `_cvs' we make (some of) the actions look like
`state=command'. After return from `_arguments' we first look if
there is a user-supplied function, probably using a convenience
function like:

   call() {
    local ret
     if functions "$1" > /dev/null 2>&1; then
      "$1"
      ret=$?
      [[ $# -gt 1 ]] && eval "${2}=$ret"
      return 0
    fi
    return 1
  }

(Defined in `compinit' or in a file `_call' and probably with a better 
name, of course.)

So we would have:

  #compdef cvs

  local state ret

  _arguments ... '*::cvs command:state=command'

  call _cvs_$state ret && return ret

  case $state in
  ...
  command) ...
  esac

Depending on the complexity of the command we would probably have a
loop which steps through several states, probably calling `_arguments' 
again and so on.

If we want to be lazy we could also easily add a new action syntax
that stores a state name in a global (if not made local in a calling
function) parameter with a fixed name.

Would that be acceptable to everyone? Can anyone think of ways to help 
users write such state-machine functions?

Bye
 Sven


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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: 6-pws-2
  1999-08-31 12:38 6-pws-2 Sven Wischnowsky
@ 1999-08-31 16:19 ` Tanaka Akira
  0 siblings, 0 replies; 14+ messages in thread
From: Tanaka Akira @ 1999-08-31 16:19 UTC (permalink / raw)
  To: zsh-workers

In article <199908311238.OAA29874@beta.informatik.hu-berlin.de>,
  Sven Wischnowsky <wischnow@informatik.hu-berlin.de> writes:

> > In article <9908301600.AA12634@ibmth.df.unipi.it>,
> >   Peter Stephenson <pws@ibmth.df.unipi.it> writes:
> > > - Personally, I prefer one single completion function for a suite of
> > >   related commands like cvs or pbm, since the accumulated clutter (and
> > >   added time to process completion files the first time) is large.  If it
> > >   stays the way it is I will change the default for function installation
> > >   to keep the subdirectories.

I think making cache file for each directory in fpath reduce start
time. Because the directory that contains many files
--- /usr/local/share/zsh/functions --- is stable in many case (except
for some zsh developpers).

> > 
> > The separation is sometimes useful for custumizations because we can
> > override each function individually. These functions behaves like `hook'.
> > I think it is useful that making hooks more easily without adding new files.
> 
> Hm. How about making it a bit like a state machine:

I feel that a state machine is the good abstraction for command line
parsing.

# I suspect that most command line structures can be represented by
# regex.

> Would that be acceptable to everyone? Can anyone think of ways to help 
> users write such state-machine functions?

Hm. I think it is reasonable to implement a state as a function.
A state transition can be represented as return from the function with
next state.
-- 
Tanaka Akira


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: 6-pws-2
@ 1999-09-01  8:46 Sven Wischnowsky
  0 siblings, 0 replies; 14+ messages in thread
From: Sven Wischnowsky @ 1999-09-01  8:46 UTC (permalink / raw)
  To: zsh-workers


Bart Schaefer wrote:

> Here's a radical suggestion:  Let's convert _arguments back into C code,
> as a module.  It could work rather like getopts (which it resembles in
> syntax already), it would improve performance, and it would permit us to
> use arbitrarily complex caching schemes without worrying about nested
> associative array syntax at the interpreter level.
> 
> We might also consider looking at any of the functions in Core and Base
> that are very heavily used, and turn those into C modules as well.  If
> the interfaces were properly documented, anyone who wanted to could still
> override them with a shell function.

This sounds like a idea I can easily start to like ;-) I think I would 
prefer to put it all into one module, though. And we don't necessarily 
have to work only on the shell function level. Maybe we can find
constructs that are used (or useful) in several functions and add
builtins for those (or all the other things modules can do now or in
the future).

We could also hack something to help `compinit' do its job.

> After all, part of the reason for breaking completion out into this kind
> of function interface was to identify useful primitives.  As quickly as
> nearly everything has been converted to using _arguments, it would seem
> that we've identified at least one.

Right.

> Here's yet another radical suggestion:  Let's package the bulk of the
> completion system separately from the main zsh distribution, and maybe
> recruit a volunteer (Sven?  Tanaka?) to keep track of the completion
> shell function patches so that Peter can concentrate on the shell proper.
> Peter can still handle the actual releases, but he won't for example have
> to hold off making a base release for serious problems like the killjb()
> bug just because the rest of us are busily creating completers for every
> program on the planet.

Since I like working with completion shell functions very much, I
would even volunteer for that. But of course, I would need support
from people know those commands which I know nothing or only very
little of.

This could also be one more step towards something I like thinking
about: some sort of very light-weight package system: completion would 
be one package with some sub-packages and we would change/replace
compinit/dump and friends with a somewhat more generalised package
control system (this sounds big, but currently I'm only thinking about
one function plus package-supplied init/dump/install code).

> The question then would be, what does belong in the main dist ... Core,
> Base, Builtins, and Commands, perhaps?  A few things from User?

I think it'll be hard to decide which ones from User if we don't use
them all (current state, without things like `cvs' and `pbm'). Some of
them probably simplified to `standard' versions (e.g. `_find') and
then put special version in the package (or whatever we want to call
it).

Bye
 Sven


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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: 6-pws-2
  1999-08-31  8:22 6-pws-2 Sven Wischnowsky
  1999-08-31 11:28 ` 6-pws-2 Andrej Borsenkow
  1999-08-31 17:10 ` 6-pws-2 Bart Schaefer
@ 1999-09-01  8:24 ` Peter Stephenson
  2 siblings, 0 replies; 14+ messages in thread
From: Peter Stephenson @ 1999-09-01  8:24 UTC (permalink / raw)
  To: zsh-workers

Sven Wischnowsky wrote:
> I think we could
> 
> 1) come back to my old suggestion to optimise some common patterns
>    (like *str, str*, *str*, s1|s2|s3) in the same way non-pattern
>    strings are already optimised

The trouble here is that this makes the compilation time longer, which is
probably(?) the main bottleneck in cases like case where the pattern is
executed only once (I haven't done any profiling).  str* is already
(supposedly) quite well optimised at run time; in the next set of tweaks,
*str should be, too.  I imagine the pure string optimisation could be
extended to alternatives of pure strings, but I'm not sure of the gain.

> 3) store compiled patterns in the execution tree (for now I'm only
>    thinking about `case', `[[ .. = .. ]]' and `[[ .. != .. ]]' if the
>    patterns don't need to be singsub()ed, which could be checked at
>    parse time)

This ought to be possible, although it'll take a certain amount of
rearranging of structures to be able to flag whether something is a
compiled regexp.  Or maybe a new token could do that.

Bart Schaefer wrote:
> ... but even there it'll mostly help loops, not one-pass sorts of things
> like sourcing init files.

This is true, it won't help the case statements in question.

> The ideal thing might be to "incrementally" compile the pattern; do just
> enough to start discarding strings that can't possibly match, then do a
> bit more upon finding one that might, etc., so parsing and compiling the
> full pattern requires encountering the first successful match (unless it's
> a really intractible pattern).

This will have to live alongside the current structure, for cases where the
pattern is going to be used more than once, so the code could get large and
complicated.  But it could probably be done to some extent.

> Master's theses have been written on less
> interesting problems ... you aren't looking to get a paper out of this,
> are you, Peter?

:-) Well, it looks like I'm giving up physics at the end of the month, so I
need something else to write papers on.  But I just don't know enough of
the theory, anyway.

-- 
Peter Stephenson <pws@ibmth.df.unipi.it>       Tel: +39 050 844536
WWW:  http://www.ifh.de/~pws/
Dipartimento di Fisica, Via Buonarroti 2, 56127 Pisa, Italy


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: 6-pws-2
  1999-08-30 21:03 ` 6-pws-2 Bart Schaefer
@ 1999-09-01  8:09   ` Peter Stephenson
  0 siblings, 0 replies; 14+ messages in thread
From: Peter Stephenson @ 1999-09-01  8:09 UTC (permalink / raw)
  To: Zsh hackers list

"Bart Schaefer" wrote:
> Wow, good job, Peter!  The only ones you seem to have missed are:
> 
> 7414, fix info doc for makeinfo 3.12f

I didn't get that for some reason (or deleted it without applying it).

> 7436, change the way the last command in a pipeline is exec'd
> 
> Unless of course I missed the same ones you did, which is possible.  Truth
> to tell, I "missed" 7436 on purpose and was watching for whether you would
> include it -- did you intentionally leave it out?

See below.

> There does appear to be one other problem -- there is a complete copy of
> each of two versions of the _xterm completer in Completion/X/_xterm.  I
> think the top one is the one to keep.

This was fixed by Sven's patch, too.

Tanaka Akira wrote:
> > - There's an exec.c patch from Tanaka Akira, 7436, left out, because it was
> >   followed by an inconclusive discussion.  It's supposed to fix exec'ing
> >   the last element of the last pipeline.  I have not looked at the problem.
> 
> I think 7436 is the correct fix to the problem.

I finally looked at it and it seems fine.  I don't understand why it wasn't
working that way before.  Probably it was overlooked in some other changed.

> > - Personally, I prefer one single completion function for a suite of
> >   related commands
> 
> The separation is sometimes useful for custumizations because we can
> override each function individually. These functions behaves like `hook'.
> I think it is useful that making hooks more easily without adding new files.

This is a good point, maybe Sven's idea can help with this.  It would be
nice to keep it as function-based as possible.  Simplifying the initial
implementation (where you could define variables as well as functions) was
a big step to making the whole thing more usable.

-- 
Peter Stephenson <pws@ibmth.df.unipi.it>       Tel: +39 050 844536
WWW:  http://www.ifh.de/~pws/
Dipartimento di Fisica, Via Buonarroti 2, 56127 Pisa, Italy


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: 6-pws-2
  1999-08-31  8:15 6-pws-2 Sven Wischnowsky
@ 1999-08-31 21:05 ` Bart Schaefer
  0 siblings, 0 replies; 14+ messages in thread
From: Bart Schaefer @ 1999-08-31 21:05 UTC (permalink / raw)
  To: zsh-workers; +Cc: pws

On Aug 31, 10:15am, Sven Wischnowsky wrote:
> Subject: Re: 6-pws-2
> 
> Peter Stephenson wrote:
> > - Personally, I prefer one single completion function for a suite of
> >   related commands like cvs or pbm, since the accumulated clutter (and
> >   added time to process completion files the first time) is large.  If it
> >   stays the way it is I will change the default for function installation
> >   to keep the subdirectories.
> 
> I agree that the increase in processing time is very ugly but I don't
> have a problem with the many functions. However, you won't find it
> hard to convince to support any attempt to clean this up. The
> increasing use of `_arguments' already made me wish to find a better
> way to give descriptions to it then by writing lots of functions that
> just call `_arguments'. I don't have any ideas about this yet, though.

Here's a radical suggestion:  Let's convert _arguments back into C code,
as a module.  It could work rather like getopts (which it resembles in
syntax already), it would improve performance, and it would permit us to
use arbitrarily complex caching schemes without worrying about nested
associative array syntax at the interpreter level.

We might also consider looking at any of the functions in Core and Base
that are very heavily used, and turn those into C modules as well.  If
the interfaces were properly documented, anyone who wanted to could still
override them with a shell function.

After all, part of the reason for breaking completion out into this kind
of function interface was to identify useful primitives.  As quickly as
nearly everything has been converted to using _arguments, it would seem
that we've identified at least one.

Here's yet another radical suggestion:  Let's package the bulk of the
completion system separately from the main zsh distribution, and maybe
recruit a volunteer (Sven?  Tanaka?) to keep track of the completion
shell function patches so that Peter can concentrate on the shell proper.
Peter can still handle the actual releases, but he won't for example have
to hold off making a base release for serious problems like the killjb()
bug just because the rest of us are busily creating completers for every
program on the planet.

The question then would be, what does belong in the main dist ... Core,
Base, Builtins, and Commands, perhaps?  A few things from User?


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: 6-pws-2
  1999-08-31  8:22 6-pws-2 Sven Wischnowsky
  1999-08-31 11:28 ` 6-pws-2 Andrej Borsenkow
@ 1999-08-31 17:10 ` Bart Schaefer
  1999-09-01  8:24 ` 6-pws-2 Peter Stephenson
  2 siblings, 0 replies; 14+ messages in thread
From: Bart Schaefer @ 1999-08-31 17:10 UTC (permalink / raw)
  To: zsh-workers

On Aug 31, 10:22am, Sven Wischnowsky wrote:
} Subject: Re: 6-pws-2
}
} 2) probably add caches for parsed patterns (e.g. give patcompile() an
}    optional pointer to a patcache struct which would contain the
}    strings and compiled pattern of the last few patterns used at the
}    call site and make patcompile() first look there)

The cache lookup would have to be awfully fast to make it worthwhile.
I think we'd get a lot more benefit from this:

} 3) store compiled patterns in the execution tree (for now I'm only
}    thinking about `case', `[[ .. = .. ]]' and `[[ .. != .. ]]' if the
}    patterns don't need to be singsub()ed, which could be checked at
}    parse time)

... but even there it'll mostly help loops, not one-pass sorts of things
like sourcing init files.

The ideal thing might be to "incrementally" compile the pattern; do just
enough to start discarding strings that can't possibly match, then do a
bit more upon finding one that might, etc., so parsing and compiling the
full pattern requires encountering the first successful match (unless it's
a really intractible pattern).  Master's theses have been written on less
interesting problems ... you aren't looking to get a paper out of this,
are you, Peter?

-- 
Bart Schaefer                                 Brass Lantern Enterprises
http://www.well.com/user/barts              http://www.brasslantern.com


^ permalink raw reply	[flat|nested] 14+ messages in thread

* RE: 6-pws-2
  1999-08-31  8:22 6-pws-2 Sven Wischnowsky
@ 1999-08-31 11:28 ` Andrej Borsenkow
  1999-08-31 17:10 ` 6-pws-2 Bart Schaefer
  1999-09-01  8:24 ` 6-pws-2 Peter Stephenson
  2 siblings, 0 replies; 14+ messages in thread
From: Andrej Borsenkow @ 1999-08-31 11:28 UTC (permalink / raw)
  To: Sven Wischnowsky, zsh-workers

> 3) store compiled patterns in the execution tree (for now I'm only
>    thinking about `case', `[[ .. = .. ]]' and `[[ .. != .. ]]' if the
>    patterns don't need to be singsub()ed, which could be checked at
>    parse time)
>


Yes, that is what I was thinking about, too. Patterns and parameter expansions.
Both are parsed every time the code is executed. If we could do it only once, it
should gain us some speed.

/andrej


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: 6-pws-2
  1999-08-30 16:00 6-pws-2 Peter Stephenson
  1999-08-30 21:03 ` 6-pws-2 Bart Schaefer
  1999-08-31  3:37 ` 6-pws-2 Tanaka Akira
@ 1999-08-31  9:27 ` Ollivier Robert
  2 siblings, 0 replies; 14+ messages in thread
From: Ollivier Robert @ 1999-08-31  9:27 UTC (permalink / raw)
  To: Zsh hackers list

According to Peter Stephenson:
> - Personally, I prefer one single completion function for a suite of
>   related commands like cvs or pbm, since the accumulated clutter (and
>   added time to process completion files the first time) is large.  If it

I do heartily agree to that, I'd hate to see zsh going into the path of
"let's read a zillion files on startup", first experienced by Perl and its
module syndrom...
-- 
Ollivier ROBERT -=- Eurocontrol EEC/TEC -=- roberto@eurocontrol.fr
The Postman hits! The Postman hits! You have new mail.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: 6-pws-2
@ 1999-08-31  8:22 Sven Wischnowsky
  1999-08-31 11:28 ` 6-pws-2 Andrej Borsenkow
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Sven Wischnowsky @ 1999-08-31  8:22 UTC (permalink / raw)
  To: zsh-workers


Peter Stephenson wrote:

> - I haven't looked at the speed of the new pattern matching code.  If case
>   statements with *only* simple strings are slower, there's not much I can
>   do since it's already optimised to a strcmp(), though I think I can speed
>   up the string-building loop in patcompatom().  In other cases I can think
>   of a few tweaks.

I think we could

1) come back to my old suggestion to optimise some common patterns
   (like *str, str*, *str*, s1|s2|s3) in the same way non-pattern
   strings are already optimised
2) probably add caches for parsed patterns (e.g. give patcompile() an
   optional pointer to a patcache struct which would contain the
   strings and compiled pattern of the last few patterns used at the
   call site and make patcompile() first look there)
3) store compiled patterns in the execution tree (for now I'm only
   thinking about `case', `[[ .. = .. ]]' and `[[ .. != .. ]]' if the
   patterns don't need to be singsub()ed, which could be checked at
   parse time)

I haven't tried any of these so I'm not sure if they are worthwhile
and easy (and small) enough to implement. Just some thoughts.

Bye
 Sven


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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: 6-pws-2
@ 1999-08-31  8:15 Sven Wischnowsky
  1999-08-31 21:05 ` 6-pws-2 Bart Schaefer
  0 siblings, 1 reply; 14+ messages in thread
From: Sven Wischnowsky @ 1999-08-31  8:15 UTC (permalink / raw)
  To: zsh-workers; +Cc: pws


Peter Stephenson wrote:

> I have probably uploaded
> http://www.ifh.de/~pws/computing/zsh-3.1.6-pws-2.tar.gz
> 
> - This covers patches to 7551 with exceptions noted

Impressive. Everything is there. Thanks! (And sorry for the turmoil of 
patches.)

> - Updates to the completion system may be bungled.  I received some of the
>   patches in random order and could have skipped others because there were
>   many similar.

So far I've only seen the problem mentioned by Bart. The first hunk of 
the patch below fixes this (just for everyones convenience).

> - I only deleted Completion/User/_cvs after making 6-pws-2, delete it
>   by hand for now.  Let me know of other completion functions which are
>   now redundant.

It goes like this:

  cd Completion
  rm User/_{pbm,cvs} Base/_complete_opts
  mv User/_colors X/_x_color
  mv User/_cursors X/_x_cursor
  mv X/_x_options X/_x_arguments

... plus the second to n'th hunk from the patch below.

> - Personally, I prefer one single completion function for a suite of
>   related commands like cvs or pbm, since the accumulated clutter (and
>   added time to process completion files the first time) is large.  If it
>   stays the way it is I will change the default for function installation
>   to keep the subdirectories.

I agree that the increase in processing time is very ugly but I don't
have a problem with the many functions. However, you won't find it
hard to convince to support any attempt to clean this up. The
increasing use of `_arguments' already made me wish to find a better
way to give descriptions to it then by writing lots of functions that
just call `_arguments'. I don't have any ideas about this yet, though.

> - I still feel the new glob qualifiers for calling code to decide on files
>   to include may be overcomplicated.

Hm, I thought it is quite simple now... suggestions?

> - I've moved some files around and corrected a small typo (_arguements) in
>   _tar.

Thanks!


Bye
 Sven

diff -u oc/X/_xterm Completion/X/_xterm
--- oc/X/_xterm	Tue Aug 31 09:11:43 1999
+++ Completion/X/_xterm	Tue Aug 31 09:13:43 1999
@@ -22,75 +22,3 @@
   '-ziconbeep:iconbeep (percent):' \
   '-C' \
   '-S-:pseudo-terminal and file descriptor:'
-#compdef xterm
-
-_arguments \
-  '-version' \
-  '-help' \
-  '-132' \
-  '-ah' '+ah' \
-  '-ai' '+ai' \
-  '-aw' '+aw' \
-  '-b:inner border size:' \
-  '-bc' '+bc' \
-  '-bcf:time text cursor is off when blinking (milliseconds):' \
-  '-bcn:time text cursor is on when blinking (milliseconds):' \
-  '-bdc' '+bdc' \
-  '-cb' '+cb' \
-  '-cc:character class:' \
-  '-cm' '+cm' \
-  '-cn' '+cn' \
-  '-cr:text cursor color:_color' \
-  '-cu' '+cu' \
-  '-dc' '+dc' \
-  '-e:*::program: _normal' \
-  '-fb:bold font:' \
-  '-fi:icon font:' \
-  '-hc:background color for highlighted text:_color' \
-  '-hf' '+hf' \
-  '-ie' '+ie' \
-  '-im' '+im' \
-  '-j' '+j' \
-  '-leftbar' \
-  '-ls' '+ls' \
-  '-mb' '+mb' \
-  '-mc:multi-click threshold (milliseconds):' \
-  '-ms:pointer cursor color:_color' \
-  '-nb:margin bell number:' \
-  '-nul' '+nul' \
-  '-pc' '+pc' \
-  '-rightbar' \
-  '-rw' '+rw' \
-  '-s' '+s' \
-  '-samename' '+samename' \
-  '-sb' '+sb' \
-  '-sf' '+sf' \
-  '-si' '+si' \
-  '-sk' '+sk' \
-  '-sl:save lines:' \
-  '-sp' '+sp' \
-  '-t' '+t' \
-  '-ti:terminal ID:(vt52 vt100 vt101 vt102 vt220)' \
-  '-tm:terminal setting:' \
-  '-tn:terminal type:' \
-  '-u8' '+u8' \
-  '-ulc' '+ulc' \
-  '-ut' '+ut' \
-  '-vb' '+vb' \
-  '-wc' '+wc' \
-  '-wf' '+wf' \
-  '-ziconbeep:iconbeep (percent):' \
-  '-C' \
-  '-S-:pseudo-terminal and file descriptor:' \
-  '-bd:border color:_color' \
-  '-bg:background color:_color' \
-  '-bw:border width:' \
-  '-display:display:' \
-  '-fg:foreground color:_color' \
-  '-fn:font:' \
-  '-geometry:geometry:' \
-  '-iconic' \
-  '-name:name:' \
-  '-rv' \
-  '-title:title:' \
-  '-xrm:resource:'
diff -u -r oc/Pbmplus/_pgmtoppm Completion/Pbmplus/_pgmtoppm
--- oc/Pbmplus/_pgmtoppm	Tue Aug 31 09:11:33 1999
+++ Completion/Pbmplus/_pgmtoppm	Tue Aug 31 09:24:07 1999
@@ -4,10 +4,10 @@
 
 if [[ CURRENT -eq 2 ]]; then
   if compset -P '?*-'; then
-    _colors
+    _x_color
     return
   fi
-  _colors && ret=0
+  _x_color && ret=0
 
   _description expl option
   compadd "$expl[@]" - -map && ret=0
diff -u -r oc/Pbmplus/_pnmalias Completion/Pbmplus/_pnmalias
--- oc/Pbmplus/_pnmalias	Tue Aug 31 09:11:33 1999
+++ Completion/Pbmplus/_pnmalias	Tue Aug 31 09:24:21 1999
@@ -1,6 +1,6 @@
 #compdef pnmalias
 
-_arguments '-bgcolor:background color:_colors' \
-           '-fgcolor:foreground color:_colors' \
+_arguments '-bgcolor:background color:_x_color' \
+           '-fgcolor:foreground color:_x_color' \
 	   '-bonly' '-fonly' '-balias' '-falias' \
 	   '-weight:central aliasing weight:' ':file: _pbm_file'
diff -u -r oc/Pbmplus/_pnmmargin Completion/Pbmplus/_pnmmargin
--- oc/Pbmplus/_pnmmargin	Tue Aug 31 09:11:34 1999
+++ Completion/Pbmplus/_pnmmargin	Tue Aug 31 09:24:39 1999
@@ -1,4 +1,4 @@
 #compdef pnmmargin
 
-_arguments '-white' '-black' '-color:color: _colors' \
+_arguments '-white' '-black' '-color:color: _x_color' \
            ':border width:' ':file: _pbm_file'
diff -u -r oc/Pbmplus/_ppmchange Completion/Pbmplus/_ppmchange
--- oc/Pbmplus/_ppmchange	Tue Aug 31 09:11:35 1999
+++ Completion/Pbmplus/_ppmchange	Tue Aug 31 09:24:53 1999
@@ -10,6 +10,6 @@
   _description expl 'old color'
 fi
 
-_colors "$expl[@]" && ret=0
+_x_color "$expl[@]" && ret=0
 
 return ret
diff -u -r oc/Pbmplus/_ppmmake Completion/Pbmplus/_ppmmake
--- oc/Pbmplus/_ppmmake	Tue Aug 31 09:11:35 1999
+++ Completion/Pbmplus/_ppmmake	Tue Aug 31 09:25:03 1999
@@ -1,3 +1,3 @@
 #compdef ppmmake
 
-_arguments ':color: _colors' ':width:' ':height:'
+_arguments ':color: _x_color' ':width:' ':height:'
diff -u -r oc/Pbmplus/_ppmtoacad Completion/Pbmplus/_ppmtoacad
--- oc/Pbmplus/_ppmtoacad	Tue Aug 31 09:11:36 1999
+++ Completion/Pbmplus/_ppmtoacad	Tue Aug 31 09:25:15 1999
@@ -1,4 +1,4 @@
 #compdef ppmtoacad
 
-_arguments '-dxb' '-poly' '-background:background color:_colors' \
+_arguments '-dxb' '-poly' '-background:background color:_x_color' \
            '-white' '-aspect:pixel aspect ratio:' '-8' ':file: _pbm_file'
diff -u -r oc/User/_gs Completion/User/_gs
--- oc/User/_gs	Tue Aug 31 09:11:40 1999
+++ Completion/User/_gs	Tue Aug 31 10:01:34 1999
@@ -8,7 +8,7 @@
     return 1
   fi
 else
-  _x_options \
+  _x_arguments \
     -q \
     '-g-:device size (<width>x<height>):' \
     '-r-:resolution (<val> or <x>x<y>):' \
diff -u -r oc/X/_xdvi Completion/X/_xdvi
--- oc/X/_xdvi	Tue Aug 31 09:11:43 1999
+++ Completion/X/_xdvi	Tue Aug 31 10:02:09 1999
@@ -6,13 +6,13 @@
   '-altfont:default font:' \
   '-base:base URL:' \
   '-browser:WWW browser:_command_names -e' \
-  '-cr:cursor color:_colors' \
+  '-cr:cursor color:_x_color' \
   '-debug:debugging bitmask:((1\:bitmaps 2\:dvi\ translation 4\:pk\ reading 8\:batch\ operation 16\:events 32\:file\ opening 64\:PostScript\ communication 128\:Kpathsea\ statistics 256\:Kpathsea\ hash\ table\ lookups 512\:Kpathsea\ path\ definitions 1024\:Kpathsea\ path\ expansion 2048\:Kpathsea\ searches))' \
   '-density:font shrink density:' \
   '-gamma:anti-aliasing factor (default 1.0):' \
-  -grid{1,2,3}':grid color:_colors' \
+  -grid{1,2,3}':grid color:_x_color' \
   '-gspalette:Ghostscript palette:(Color Greyscale Monochrome)' \
-  '-hl:page highlight color:_colors' \
+  '-hl:page highlight color:_x_color' \
   '-icongeometry:icon geometry:_x_geometry' \
   '-interpreter:Ghostscript program:_command_names -e' \
   '-margin:margin size:' \
diff -u -r oc/X/_xfig Completion/X/_xfig
--- oc/X/_xfig	Tue Aug 31 09:11:43 1999
+++ Completion/X/_xfig	Tue Aug 31 10:02:32 1999
@@ -1,12 +1,12 @@
 #compdef xfig
 
-_x_options \
+_x_arguments \
   -{help,Landscape,Portrait,debug,dontswitchcmap,flushleft,inches,inverse,latexfonts,left,metric,monochrome,multiple,noscalablefonts,notrack,right,scalablefonts,showallbuttons,single,specialtext,tablet,track} \
   '-bold:bold font:_x_font' \
   '-button:button font:_x_font' \
   '-but_per_row:number of buttons:' \
-  '-cbg:canvas background color:_colors' \
-  '-cfg:canvas foreground color:_colors' \
+  '-cbg:canvas background color:_x_color' \
+  '-cfg:canvas foreground color:_x_color' \
   '-depth:visual depth:_x_visdepth' \
   '-exportlanguage:export language:(box latex epic eepic eepicemu pictex ibmgl eps ps pstex textyl tpic pic mf acad pcx png gif jpeg tiff ppm xbm xpm)' \
   '-iconGeometry:icon geometry:_x_geometry' \
diff -u -r oc/X/_xsetroot Completion/X/_xsetroot
--- oc/X/_xsetroot	Tue Aug 31 09:11:43 1999
+++ Completion/X/_xsetroot	Tue Aug 31 10:05:26 1999
@@ -1,12 +1,12 @@
 #compdef xsetroot
 
-_x_options \
+_x_arguments \
   -{help,def,gray,grey,rv} \
   '-cursor:cursor file:_files -g \*.\(\#i\)\(xbm\|curs\(\|or\)\):mask file:_files -g \*.\(\#i\)\(xbm\|curs\(\|or\)\|mask\)' \
-  '-cursor_name:cursor name:_cursors' \
+  '-cursor_name:cursor name:_x_cursor' \
   '-bitmap:bitmap file:_files -g \*.\(\#i\)xbm' \
   '-mod:x grid distance (1-16): :y grid distance (1-16):' \
-  '-fg:foreground color:_colors' \
-  '-bg:background color:_colors' \
-  '-solid:screen solid color:_colors' \
+  '-fg:foreground color:_x_color' \
+  '-bg:background color:_x_color' \
+  '-solid:screen solid color:_x_color' \
   '-name:root window name:'
diff -u -r oc/X/_xt_arguments Completion/X/_xt_arguments
--- oc/X/_xt_arguments	Tue Aug 31 09:11:43 1999
+++ Completion/X/_xt_arguments	Tue Aug 31 10:03:22 1999
@@ -23,17 +23,17 @@
 _arguments \
   -+{rv,synchronous} \
   -{reverse,iconic} \
-  '-background:background color:_colors' \
-  '-bd:border color:_colors' \
-  '-bg:background color:_colors' \
-  '-bordercolor:border color:_colors' \
+  '-background:background color:_x_color' \
+  '-bd:border color:_x_color' \
+  '-bg:background color:_x_color' \
+  '-bordercolor:border color:_x_color' \
   '-borderwidth:border width:_x_borderwidth' \
   '-bw:border width:_x_borderwidth' \
   '-display:display:_x_display' \
-  '-fg:foreground color:_colors' \
+  '-fg:foreground color:_x_color' \
   '-font:font:_x_font' \
   '-fn:font:_x_font' \
-  '-foreground:foreground color:_colors' \
+  '-foreground:foreground color:_x_color' \
   '-geometry:geometry:_x_geometry' \
   '-name:name:_x_name' \
   '-selectionTimeout:selection timeout (milliseconds):_x_selection_timeout' \
diff -u -r oc/X/_xterm Completion/X/_xterm
--- oc/X/_xterm	Tue Aug 31 10:01:12 1999
+++ Completion/X/_xterm	Tue Aug 31 10:03:50 1999
@@ -7,13 +7,13 @@
   '-bcf:time text cursor is off when blinking (milliseconds):' \
   '-bcn:time text cursor is on when blinking (milliseconds):' \
   '-cc:character class:' \
-  '-cr:text cursor color:_colors' \
+  '-cr:text cursor color:_x_color' \
   '-e:program: _command_names -e:*::program arguments: _normal' \
   '-fb:bold font:_x_font' \
   '-fi:icon font:_x_font' \
-  '-hc:background color for highlighted text:_colors' \
+  '-hc:background color for highlighted text:_x_color' \
   '-mc:multi-click threshold (milliseconds):' \
-  '-ms:pointer cursor color:_colors' \
+  '-ms:pointer cursor color:_x_color' \
   '-nb:margin bell number:' \
   '-sl:save lines:' \
   '-ti:terminal ID:(vt52 vt100 vt101 vt102 vt220)' \
diff -u -r oc/X/_xv Completion/X/_xv
--- oc/X/_xv	Tue Aug 31 09:11:44 1999
+++ Completion/X/_xv	Tue Aug 31 10:06:06 1999
@@ -1,20 +1,20 @@
 #compdef xv
 
-_x_options \
+_x_arguments \
   -{help,quick24,slow24,best24,noqcheck,pkludge,RM} \
   -+{fixed,rw,perfect,owncmap,stdcmap,cecmap,ninstall,8,24,root,noresetroot,max,maxpect,quit,clear,cmap,imap,cemap,cmtmap,vsmap,nopos,dither,smooth,raw,acrop,4x3,hflip,vflip,norm,hist,mono,rv,wloop,random,loadclear,nofreecols,rgb,hsv,lbrowse,nostat,2xlimit,nolimits,close,iconic,viewonly,poll,vsperfect,vsdisable,nodecor} \
-  '-fg:foreground color:_colors' \
-  '-bg:background color:_colors' \
-  '-hi:top left shadow color:_colors' \
-  '-lo:bottom right shadow color:_colors' \
+  '-fg:foreground color:_x_color' \
+  '-bg:background color:_x_color' \
+  '-hi:top left shadow color:_x_color' \
+  '-lo:bottom right shadow color:_x_color' \
   '-bw:border width:' \
   '-geometry:geometry:_x_geometry' \
   '-expand:expansion factor:' \
   '-aspect:aspect ratio (e.g. 4:3):' \
   '-ncols:maximum number of colors used:' \
   '-rmode:root display mode:((0\:tiling 1\:integer\ tiling 2\:mirrored\ tiling 3\:integer\ mirrored\ tiling 4\:centered\ tiling 5\:centered\ tiling\ on\ solid\ background 6\:centered\ tiling\ on\ '\\\''warp'\\\''\ background 7\:centered\ tiling\ on\ '\\\''brick'\\\''\ background 8\:symmetrical\ tiling 9\:symmetrical\ mirrored\ tiling))' \
-  '-rfg:root foreground color:_colors' \
-  '-rbg:root background color:_colors' \
+  '-rfg:root foreground color:_x_color' \
+  '-rbg:root background color:_x_color' \
   '-cgeom:control window geometry:_x_geometry' \
   '-igeom:info window geometry:_x_geometry' \
   '-cegeom:color editor window geometry:_x_geometry' \
@@ -26,8 +26,8 @@
   '-gamma:gamma value:' \
   '-cgamma:red gamma value: :green gamma value: :blue gamma value:' \
   '-preset:default preset (1-4):(1 2 3 4)' \
-  '-white:'"'"'white'"'"' color:_colors' \
-  '-black:'"'"'black'"'"' color:_colors' \
+  '-white:'"'"'white'"'"' color:_x_color' \
+  '-black:'"'"'black'"'"' color:_x_color' \
   '-wait:seconds to wait:' \
   '-visual:visual:(TrueColor StaticColor DirectColor StaticGray GrayScale PseudoColor)' \
   '-cursor:cursor character number:' \

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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: 6-pws-2
  1999-08-30 16:00 6-pws-2 Peter Stephenson
  1999-08-30 21:03 ` 6-pws-2 Bart Schaefer
@ 1999-08-31  3:37 ` Tanaka Akira
  1999-08-31  9:27 ` 6-pws-2 Ollivier Robert
  2 siblings, 0 replies; 14+ messages in thread
From: Tanaka Akira @ 1999-08-31  3:37 UTC (permalink / raw)
  To: Peter Stephenson; +Cc: Zsh hackers list

In article <9908301600.AA12634@ibmth.df.unipi.it>,
  Peter Stephenson <pws@ibmth.df.unipi.it> writes:

> - There's an exec.c patch from Tanaka Akira, 7436, left out, because it was
>   followed by an inconclusive discussion.  It's supposed to fix exec'ing
>   the last element of the last pipeline.  I have not looked at the problem.

I think 7436 is the correct fix to the problem.

> - I only deleted Completion/User/_cvs after making 6-pws-2, delete it
>   by hand for now.  Let me know of other completion functions which are
>   now redundant.

Base/_complete_opts should be removed. Because there are no completion
function which use it (except old _cvs) and it has very poor
name/implementation/document.

> - Personally, I prefer one single completion function for a suite of
>   related commands like cvs or pbm, since the accumulated clutter (and
>   added time to process completion files the first time) is large.  If it
>   stays the way it is I will change the default for function installation
>   to keep the subdirectories.

The separation is sometimes useful for custumizations because we can
override each function individually. These functions behaves like `hook'.
I think it is useful that making hooks more easily without adding new files.
-- 
Tanaka Akira


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: 6-pws-2
  1999-08-30 16:00 6-pws-2 Peter Stephenson
@ 1999-08-30 21:03 ` Bart Schaefer
  1999-09-01  8:09   ` 6-pws-2 Peter Stephenson
  1999-08-31  3:37 ` 6-pws-2 Tanaka Akira
  1999-08-31  9:27 ` 6-pws-2 Ollivier Robert
  2 siblings, 1 reply; 14+ messages in thread
From: Bart Schaefer @ 1999-08-30 21:03 UTC (permalink / raw)
  To: Peter Stephenson, Zsh hackers list

On Aug 30,  6:00pm, Peter Stephenson wrote:
> Subject: 6-pws-2
> I have probably uploaded
> http://www.ifh.de/~pws/computing/zsh-3.1.6-pws-2.tar.gz
> 
> - This covers patches to 7551 with exceptions noted

Wow, good job, Peter!  The only ones you seem to have missed are:

7414, fix info doc for makeinfo 3.12f
7436, change the way the last command in a pipeline is exec'd

Unless of course I missed the same ones you did, which is possible.  Truth
to tell, I "missed" 7436 on purpose and was watching for whether you would
include it -- did you intentionally leave it out?

There does appear to be one other problem -- there is a complete copy of
each of two versions of the _xterm completer in Completion/X/_xterm.  I
think the top one is the one to keep.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* 6-pws-2
@ 1999-08-30 16:00 Peter Stephenson
  1999-08-30 21:03 ` 6-pws-2 Bart Schaefer
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Peter Stephenson @ 1999-08-30 16:00 UTC (permalink / raw)
  To: Zsh hackers list

I have probably uploaded
http://www.ifh.de/~pws/computing/zsh-3.1.6-pws-2.tar.gz

- This covers patches to 7551 with exceptions noted

- As I just mentioned, email to here isn't working, use pws@ifh.de if rnsr is
  requid.

- There's an exec.c patch from Tanaka Akira, 7436, left out, because it was
  followed by an inconclusive discussion.  It's supposed to fix exec'ing
  the last element of the last pipeline.  I have not looked at the problem.

- Updates to the completion system may be bungled.  I received some of the
  patches in random order and could have skipped others because there were
  many similar.

- I only deleted Completion/User/_cvs after making 6-pws-2, delete it
  by hand for now.  Let me know of other completion functions which are
  now redundant.

- Personally, I prefer one single completion function for a suite of
  related commands like cvs or pbm, since the accumulated clutter (and
  added time to process completion files the first time) is large.  If it
  stays the way it is I will change the default for function installation
  to keep the subdirectories.

- I haven't looked at the speed of the new pattern matching code.  If case
  statements with *only* simple strings are slower, there's not much I can
  do since it's already optimised to a strcmp(), though I think I can speed
  up the string-building loop in patcompatom().  In other cases I can think
  of a few tweaks.

- If there are any firm suggestions on how pattern matching in ${...},
  particularly substrings, should be changed, please post a summary.

- I still feel the new glob qualifiers for calling code to decide on files
  to include may be overcomplicated.

- Telling me it's time to put together a new development version while I'm
  away may not be a very productive exercise.

- I've moved some files around and corrected a small typo (_arguements) in
  _tar.

- There are lots of things I've probably forgotten; it's taken me most of
  the day just to catch up with the patches.  If you submitted a suggestion
  (rather than a patch) for something like a configuration change then it's
  probably gone in one ear and out the other.

Changes supposedly included:

1999-08-30  Peter Stephenson  <pws@ibmth.df.unipi.it>

	* Tanaka Akira: 7551: Doc/Zsh/expn.yo: mismatched parenthesis.

	* Sven: 7549: Src/hist.c: shell wouldn't exit if writing history
	  file failed.

	* Sven: 7548: Completion/User/_xargs: new.

	* Sven: 7541: Completion/Base/_arguments: fix.

	* Sven: 7540: Src/subst.c, Doc/Zsh/expn.yo: ${name^pat^then^else}
	  tests string and substitutes appropriately.

	* Sven: 7539: Src/subst.c, Doc/Zsh/expn.yo: % parameter flag does
	  prompt escapes.

	* Sven: 7538: Completion/Base/_arguments: completion of trailing
	  non-option arguments.

	* Sven: 7535: Src/glob.c: don't restore badcshglob.

	* Sven: 7533: Completion/Rpm/*, Completion/Base/_arguments,
	  Completion/User/_a2ps, Completion/User/_configure,
	  Completion/User/_dvi, Completion/User/_gdb, Completion/User/_gs,
	  Completion/User/_gs_name, Completion/User/_patch,
	  Completion/User/_pspdf, Completion/User/_tar,
	  Completion/User/_use_lo, Completion/User/_xfig,
	  Completion/User/_xsetroot, Completion/User/_xterm,
	  Completion/X/_gv, Completion/X/_xdvi,
	  Completion/X/_xt_arguments, Completion/X/_xv,
	  Doc/Zsh/compsys.yo: argument handling; new rpm functions.

	* Sven: 7532: Src/Zle/zle_tricky.c: completion bug.

	* Bart, Sven: 7529, 7530: process groups not continued properly.

	* Bart: 7527: KSH_ARRAYS messed up assignment to a
	  hash, plus 7521 typo.

	* Bart: 7521: Src/init.c: replace 7472 and 7490 with thing that
	  tests if hashed command is really there.

	* Sven: 7517: Completion/Base/_arguments,
	  Completion/Pbmplus/_pbmtext, Completion/Pbmplus/_pbmtopk,
	  Completion/Pbmplus/_pktopbm, Completion/Pbmplus/_pnmcomp,
	  Completion/Pbmplus/_pnmtoddif, Completion/Pbmplus/_psidtopgm,
	  Completion/Pbmplus/_pstopnm, Completion/User/_gdb,
	  Completion/User/_gprof, Completion/User/_x_options,
	  Completion/User/_xfig, Completion/User/_xsetroot,
	  Completion/X/_x_borderwidth, Completion/X/_x_geometry,
	  Completion/X/_x_locale, Completion/X/_x_name,
	  Completion/X/_x_resource, Completion/X/_x_selection_timeout,
	  Completion/X/_x_title, Completion/X/_xv: use _arguments more.

	* Tanaka Akira: 7516: Completion/Base/_arguments,
	  Completion/Cvs/_cvs, Completion/Cvs/_cvs_command: fixes.

	* Sven: 7515: Doc/Zsh/compsys.yo, Completion/Base/_arguments,
	  Completion/Pbmplus/_pnmtotiff, Completion/Pbmplus/_ppmtomitsu,
	  Completion/User/_find: _arguments allows descriptions in list of
	  possibilities.

	* Sven: 7514: Src/glob.c, Doc/Zsh/expn.yo: use REPLY to set
	  filename.

	* Bart: 7510: Src/init.c: zsh -ce interprets e as option, not
	  command.

	* Sven: 7512: Completion/Base/_arguments: complete function.

	* Sven: 7500: Completion/Base/_arguments,
	  Completion/Cvs/_cvs_command, Completion/User/_find:
	  word-splitting in _arguments.

	* Tanaka Akira: 7495: Completion/Cvs/_cvs*: new cvs functions.

	* Sven: 7496: Src/glob.c, Src/zsh.h, Doc/Zsh/expn.yo: glob
	  qualifier e:string: with $_ set to filename.

	* Sven: 7492: Completion/Base/_arguments, Completion/User/_find,
	  Completion/X/_x_font: speed up _arguments.

	* Sven: 7490: Src/exec.c: change 7472 not to try test on hashed
	  command.

	* Sven: zsh-users/2511: Src/Zle/zle_tricky.c: bad (old) completion
	  after `$(<'.

	* Sven: 7482: Src/exec.c, Src/glob.c, Src/zsh.h, Doc/Zsh/expn.yo:
	  F:func: glob qualifier calls func to determine whether to
	  include file.

	* Sven: 7480: Src/Zle/zle_tricky.c, Completion/Core/_multi_parts,
	  Completion/User/_xterm, Completion/X/_x_font,
	  Completion/X/_xt_arguments: matching bug.

	* Sven: 7478: Doc/Zsh/compsys.yo, Completion/Base/_arguments,
	  Completion/Builtins/_vars_eq: handling of :: in _arguments.

	* Tanaka Akira: 7477: Completion/User/_xterm,
	  Completion/X/_x_borderwidth, Completion/X/_x_font,
	  Completion/X/_x_geometry, Completion/X/_x_locale,
	  Completion/X/_x_name, Completion/X/_x_resource,
	  Completion/X/_x_selection_timeout, Completion/X/_x_title,
	  Completion/X/_xt_arguments, Completion/X/_xt_session_id:
	  use standard XToolkit arguments.

	* Sven: 7472: Src/exec.c: crash in isreallycom().

	* Sven: 7469: Completion/Base/_arguments,
	  Completion/Base/_command_names, Completion/Builtins/_zftp,
	  Completion/Core/_complete, Completion/Core/_main_complete,
	  Completion/Core/_normal, Completion/User/_x_display,
	  Completion/User/_x_options, Completion/User/_xterm: fix
	  word-splitting for _arguments.

	* Sven: zsh-users/2505: parameter with non-empty prefix.

	* Tanaka Akira: 7468: Completion/User/_xterm: xterm argument
	  completion.

	* Sven: zsh-users/2502: completing '=$' erased word.

	* Sven: 7467: Doc/Zsh/compsys.yo, Completion/Base/_arguments,
	  Completion/Base/_long_options: allow an _arguments option to
	  swallow everything to end of line.

	* Sven: 7465: Src/params.c: reverse indexing of associative
	  arrays.

	* Sven: 7463: Src/Zle/compctl.c, Doc/Zsh/compsys.yo,
	  Completion/Base/_arguments, Completion/Base/_brace_parameter,
	  Completion/Base/_condition, Completion/Base/_long_options,
	  Completion/Base/_math, Completion/Base/_parameter,
	  Completion/Base/_tilde, Completion/Base/_vars,
	  Completion/Builtins/_vars_eq, Completion/Builtins/_zftp,
	  Completion/Commands/_correct_filename,
	  Completion/Commands/_correct_word,
	  Completion/Commands/_expand_word,
	  Completion/Commands/_history_complete_word,
	  Completion/Commands/_most_recent_file,
	  Completion/Commands/_read_comp, Completion/Core/_parameters,
	  Completion/Core/compinit, Completion/User/_chown,
	  Completion/User/_dir_list, Completion/User/_exec_funcs,
	  Completion/User/_find, Completion/User/_gprof,
	  Completion/User/_rlogin, Completion/User/_su,
	  Completion/User/_tar, Completion/User/_users,
	  Util/completion-style-guide: miscellaneous completion fixes.

	* Tanaka Akira: 7460. 7461: Completion/Base/_arguments,
	  Completion/User/_patch: _arguments -s handling with --.

	* Clint Adams: 7459: Config/funcinst.mk, Config/installfns.sh,
	  Doc/Makefile.in, Src/Makefile.in, Src/Makemod.in.in: can set
	  DESTDIR to specify install prefix.

	* Tanaka Akira: 7458: Completion/Base/_arguments,
	  Completion/Base/_long_options, Completion/User/_patch:
	  _patch function and required fixes.

	* Sven: 7457: Doc/Zsh/compsys.yo, Completion/Base/_arguments:
	  handle short options.

	* Sven: 7455: Src/Zle/complist.c: handle lengths of capabilities.

	* Sven: 7454: Doc/Zsh/compsys.yo, Completion/Base/_arguments,
	  Completion/Core/_message: option prefix configuration.

	* Sven: 7429: _pbm: more stuff

	* Tanaka Akira: 7451: Completion/Core/_message,
	  Completion/Pbmplus/_pbmtoepsi, Completion/Pbmplus/_pktopbm,
	  Completion/Pbmplus/_yuvtoppm, Doc/Zsh/compsys.yo: some small
	  mistakes.

	* Sven: 7441: Src/Zle/zle_tricky.c: matching control bug.

	* Sven: 7450: Completion/Base/_arguments,
	  Completion/Base/_long_options, Completion/Base/_subscript,
	  Completion/Builtins/_zmodload, Completion/User/_colors,
	  Completion/User/_cvs, Completion/User/_gdb: explanations and
	  arguments.

	* Tanaka Akira: 7431: Completion/User/_colors: null glob.

	* Tanaka Akira: 7432: Completion/User/_cvs: update.

	* Sven: 7449: Src/module.c, Src/params.c: better errors for failed
	  autoloading; 

	* Sven: 7448: too many files under Completion to list, including
	  new Pbmplus directory: revised pbm completion; pattern completion
	  only if no specific completion; descriptions for completions;
	  better handling for command line arguments.

	* Tanaka Akira: 7417: Completion/User/_pdf, Completion/User/_ps,
	  Completion/User/_pspdf: more programs that take ps or pdf files.

	* Sven: 7430: matching control bug: Src/Zle/zle_tricky.c,
	  Completion/User/_colors, Completion/User/_cursors,
	  Completion/User/_x_options, Completion/User/_xsetroot:
	  bug in matching control.

	* Tanaka Akira: 7428: Completion/User/_pbm,
	  Completion/User/_colors: fix some problems.

	* Sven: 7420: Src/Zle/zle_tricky.c, Doc/Zsh/compsys.yo,
	  Completion/Base/_first, Completion/Builtins/_zftp,
	  Completion/Core/_complete, Completion/Core/_main_complete,
	  Completion/Core/_normal, Completion/User/_colors,
	  Completion/User/_pbm, Completion/User/_x_options: _compskip
	  extended to allow choice of what to skip.

	* Sven: 7418: Completion/User/_pbm: new

	* Sven: 7446: print -P %s didn't work.

	* Bart: 7410: parameter flags doc for M.

	* Sven: 7404: Src/glob.c: repeatedly matching empty string
	  (somehow).

1999-08-06  Peter Stephenson  <pws@ibmth.df.unipi.it>

	* pws: Config/version.mk: 3.1.6-pws-1 made available.

	* Sven: 7386: Src/subst.c: Order of q and Q parameter flags matters.

1999-08-05  Peter Stephenson  <pws@ibmth.df.unipi.it>

	* Sven: 7380: Src/hist.c, Src/subst.c, Doc/Zsh/expn.yo: flag X for
	  reporting errors de-quoting.

	* Sven: 7374: Src/subst.c, Doc/Zsh/expn.yo: modifier to remove one
	  level of quotation, corresponding flags.

	* Sven: 7373: Src/Zle/comp.h, Src/Zle/zle_tricky.c,
	  Completion/Base/_brace_parameter:  support nested parameter
	  expansion type of deal.

1999-08-04  Peter Stephenson  <pws@ibmth.df.unipi.it>

	* Sven: 7355: Src/Zle/compctl.c, Src/Zle/zle_tricky.c: make
	  compadd quoting consistent with compgen.	

1999-08-02  Peter Stephenson  <pws@ibmth.df.unipi.it>

	* Sven: 7349: Src/loop.c, Src/signals.c:  restore errflags in
	  select after a zleread; fix problem restoring function-style trap
	  after a function set it to something else.

	* Sven: 7348: Completion/Core/_path_files, Doc/Zsh/compsys.yo:
	  remove path_keepdir configuration key but don't do keepdir
	  trick unless _files had no type arguments.

	* Sven: 7345, 7346, 7347: Src/Zle/zle_tricky.c: match control
	  problems.

	* Sven: 7344, 7353: Src/cond.c, Src/Modules/example.c,
	  Src/Zle/compctl.c, Util/zsh-development-guide:  conditions can
	  get the tokenized string; better quoting behaviour in
	  IPREFIX/ISUFFIX.

	* Sven: 7343: Src/Zle/zle_tricky.c: quote path prefix and suffix
	  earlier.

	* pws: 7342: Doc/Makfile.in: use makeinfo ... || exit 0 to
	  ignore result of makeinfo.

	* Irving Wolfe: 7336: utils.c: same fcntl() change.

	* Geoff: 7335: init.c: third argument for fcntl().

-- 
Peter Stephenson <pws@ibmth.df.unipi.it>       Tel: +39 050 844536
WWW:  http://www.ifh.de/~pws/
Dipartimento di Fisica, Via Buonarroti 2, 56127 Pisa, Italy


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~1999-09-01  8:59 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-08-31 12:38 6-pws-2 Sven Wischnowsky
1999-08-31 16:19 ` 6-pws-2 Tanaka Akira
  -- strict thread matches above, loose matches on Subject: below --
1999-09-01  8:46 6-pws-2 Sven Wischnowsky
1999-08-31  8:22 6-pws-2 Sven Wischnowsky
1999-08-31 11:28 ` 6-pws-2 Andrej Borsenkow
1999-08-31 17:10 ` 6-pws-2 Bart Schaefer
1999-09-01  8:24 ` 6-pws-2 Peter Stephenson
1999-08-31  8:15 6-pws-2 Sven Wischnowsky
1999-08-31 21:05 ` 6-pws-2 Bart Schaefer
1999-08-30 16:00 6-pws-2 Peter Stephenson
1999-08-30 21:03 ` 6-pws-2 Bart Schaefer
1999-09-01  8:09   ` 6-pws-2 Peter Stephenson
1999-08-31  3:37 ` 6-pws-2 Tanaka Akira
1999-08-31  9:27 ` 6-pws-2 Ollivier Robert

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