diff options
author | Bart Schaefer <barts@users.sourceforge.net> | 2000-05-06 18:48:26 +0000 |
---|---|---|
committer | Bart Schaefer <barts@users.sourceforge.net> | 2000-05-06 18:48:26 +0000 |
commit | c15091b7d196c8fcc15bf8f13f8c7ccf62479b85 (patch) | |
tree | d6d2070110accd3434aab51133a7d3b7bcfcdfbc /Completion/Base | |
parent | bec1ee9e6ac04ccc34d0c83b3cf0dc1a88dafdc6 (diff) | |
download | zsh-c15091b7d196c8fcc15bf8f13f8c7ccf62479b85.tar.gz zsh-c15091b7d196c8fcc15bf8f13f8c7ccf62479b85.tar.xz zsh-c15091b7d196c8fcc15bf8f13f8c7ccf62479b85.zip |
11236: Handle tabs between options and their descriptions when parsing --help.
Diffstat (limited to 'Completion/Base')
-rw-r--r-- | Completion/Base/_arguments | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/Completion/Base/_arguments b/Completion/Base/_arguments index cab1f778a..68f187af4 100644 --- a/Completion/Base/_arguments +++ b/Completion/Base/_arguments @@ -60,16 +60,16 @@ if (( long )); then # The parameter expansion trickery first gets the lines as separate # array elements. Then we select all lines whose first non-blank # character is a hyphen. Since some commands document more than one - # option per line, separated by commas, we convert commas int + # option per line, separated by commas, we convert commas into # newlines and then split the result again at newlines after joining # the old array elements with newlines between them. Then we select # those elements that start with two hyphens, remove anything up to - # those hyphens and anything from the space or comma after the - # option up to the end. + # those hyphens and anything from the space or tab after the + # option up to the end. lopts=("--${(@)^${(@)${(@)${(@M)${(@ps:\n:j:\n:)${(@)${(@M)${(@f)$(_call options ${~words[1]} --help 2>&1)//\[--/ --}:#[ ]#-*}//,/ -}}:#[ ]#--*}#*--}%%[], ]*}:#}") +}}:#[ ]#--*}#*--}%%[] ]*}:#}") lopts=( "${(@)lopts:#--}" ) # Now remove all ignored options ... |