Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: read timeout argument || completion of a function
- X-seq: zsh-workers 17529
- From: "Bart Schaefer" <schaefer@xxxxxxxxxxxxxxxx>
- To: Bruno Bonfils <asyd@xxxxxxxxxxxxx>, zsh-workers@xxxxxxxxxx
- Subject: Re: read timeout argument || completion of a function
- Date: Mon, 12 Aug 2002 05:45:20 +0000
- In-reply-to: <87znvt15hr.fsf@xxxxxxxxxxxxxxxxxxx>
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
- References: <87znvt15hr.fsf@xxxxxxxxxxxxxxxxxxx>
On Aug 11, 10:54pm, Bruno Bonfils wrote:
}
} i'm very surprised to observe there isn't timeout argument for read
} builtin function.
There are certain aspects of the arms race in which ksh is currently
ahead. I suppose when it gets a builtin to launch satellites we'll have
to start working on moon landers.
Meanwhile, if you install 4.1.0-dev-5 you can use the zselect builtin.
} Moreover, i'm looking the way for provide completion for a function :
This has nothing to do with wanting read to time out, right?
} First of all, i want to be sure i _can't_ define the default
} completion tag with zstyle for a command which don't have
} _command completion function (default tag called is _files isn't it
} ?).
You seem to be a bit confused about what's a tag and what's a completion
function. The default completion is what is called when there isn't any
other completion defined, and it is implemented by a function that is
named _default, which happens to call another function named _files.
The _files function looks for zstyles using several different tags; the
most general of these is "all-files", which is effectively the default
tag used for completion in the absence of any other configuration.
} I have also try to write a just little function _myping which contains
}
} #compdef myping
}
} _arguments '*:hostname:_hosts'
}
} but myping <tab> provide file completion, and _myping <tab> hosts
} completion.
One doesn't normally type the name of a completion function on the command
line; it's meant to be called only by the completion system (that's why it
has a leading underscore in the name). If `_myping <TAB>' gives host
completion, you've somehow gotten _myping set up to complete for itself,
or some such. Are you certain that the _myping file has `#compdef myping'
and not `#compdef _myping'?
You could get rid of your _myping function and instead use the command
`compdef myping=ping' which says to complete for myping the same way as
for ping ...
--
Bart Schaefer Brass Lantern Enterprises
http://www.well.com/user/barts http://www.brasslantern.com
Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net
Messages sorted by:
Reverse Date,
Date,
Thread,
Author