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

New style completion bug when ctrl-C pressed



There appears to be a bug in the new style completion system whereby if you
abort the completion with Ctrl-C (as I often do if the machine is not
readily responding) it doesn't clear up after itself properly.

I have automenu disabled so the only time completion starts cycling through
a list of alternatives is if the approximate completer returns results.
However, sometimes after I've aborted a completion it somehow leaves
automenu on such that from then on all completions automatically cycle.

The cause would appear to be that a shell function is at some point
temporarily defined to override the builtin compadd - and this gets left
around. If I undefine it then normal service is resumed.

I've looked through the mailing lists, changelog, and even diffed the
completion functions against 4.0.1-pre-2 and didn't spot anything related
to this. I haven't tried running anything more recent than 3.1.9-dev-8
though (due to time).

I'm not on this list, so please CC me in any followups (especially fixes!).

Cheers,

Martin.

Possibly useful info:

% set | grep 'ZSH'

ZSH_NAME=zsh
ZSH_VERSION=3.1.9-dev-8

% uname -a

SunOS gdd-odybin2 5.6 Generic_105181-23 sun4u sparc SUNW,Ultra-Enterprise-10000

% zstyle

completer
        :completion:* _expand _complete _ignored _approximate _prefix
matcher-list
        :completion:* '' 'm:{a-zA-Z}={A-Za-z}'
list-colors
        :completion:*:default 'no=00' 'fi=38;5;11' 'di=38;5;14' 'ln=38;5;214' 'pi=38;5;218' 'so=38;5;218' 'bd=38;5;218' 'cd=38;5;218' 'ex=38;5;10' '
*.bat=38;5;10' '*.com=38;5;10' '*.cmd=38;5;10' '*.exe=38;5;10' '*.arj=38;5;15' '*.lzh=38;5;15' '*.tar=38;5;15' '*.tgz=38;5;15' '*.taz=38;5;15' '
*.Z=38;5;15' '*.z=38;5;15' '*.gz=38;5;15' '*.zip=38;5;15' '*.rpm=38;5;15' '*.deb=38;5;15' '*.a=38;5;12' '*.o=38;5;12' '*.d=38;5;12' '*.elc=38;5;12' '
*.zwc=38;5;12' '*core=01;38;5;9' '*~=38;5;245' '*.flc=38;5;245'
list-packed
        :completion:*:default true
glob
        :completion:*:expand:* 1
substitute
        :completion:*:expand:* 1
tag-order
        :completion:*:complete:cd:* '! path-directories'
        :completion:*:complete:-command-:* '! path-directories'
        :completion:*:expand:* all-expansions expansions original
        :completion:*:correct:* corrections original
add-space
        :completion:*:prefix:* true

% setopt

allexport             off
noalwayslastprompt    off
alwaystoend           off
noappendhistory       off
autocd                on
noautolist            off
noautomenu            on
autonamedirs          off
noautoparamkeys       off
noautoparamslash      off
autopushd             on
noautoremoveslash     off
autoresume            off
badpattern            on
banghist              on
bareglobqual          on
bashautolist          off
nobeep                off
bgnice                on
braceccl              off
bsdecho               off
cbases                off
cdablevars            on
chasedots             off
chaselinks            off
checkjobs             on
noclobber             off
completealiases       off
completeinword        on
correct               off
correctall            on
cshjunkiehistory      off
cshjunkieloops        off
cshjunkiequotes       off
cshnullcmd            off
cshnullglob           on
dvorak                off
equals                on
errexit               off
noexec                off
extendedglob          on
extendedhistory       on
noflowcontrol         off
functionargzero       on
noglob                off
globalexport          on
noglobalrcs           off
globassign            off
globcomplete          off
globdots              off
noglobsubst           on
nohashcmds            off
nohashdirs            off
nohashlistall         off
histallowclobber      off
nohistbeep            off
histexpiredupsfirst   off
histfindnodups        on
histignorealldups     on
histignoredups        on
histignorespace       off
histnofunctions       off
histnostore           on
histreduceblanks      off
histsavenodups        on
histverify            off
hup                   on
ignorebraces          off
ignoreeof             off
incappendhistory      off
interactive           on
nointeractivecomments off
noksharrays           on
nokshautoload         on
nokshglob             on
nokshoptionprint      off
nolistambiguous       off
nolistbeep            off
listpacked            on
listrowsfirst         off
nolisttypes           off
nolocaloptions        on
nolocaltraps          on
login                 off
longlistjobs          on
magicequalsubst       off
mailwarning           on
markdirs              on
menucomplete          off
monitor               on
multios               on
nomatch               on
notify                on
nullglob              off
numericglobsort       on
octalzeroes           off
overstrike            off
pathdirs              on
noposixbuiltins       on
printeightbit         off
printexitvalue        off
privileged            off
nopromptbang          on
nopromptcr            off
promptpercent         on
nopromptsubst         off
pushdignoredups       on
pushdminus            on
pushdsilent           off
pushdtohome           off
rcexpandparam         off
rcquotes              on
norcs                 off
recexact              off
restricted            off
normstarsilent        off
rmstarwait            off
nosharehistory        off
noshfileexpansion     on
noshglob              on
shinstdin             on
noshnullcmd           on
noshoptionletters     on
shortloops            on
noshwordsplit         on
singlecommand         off
nosinglelinezle       on
sunkeyboardhack       off
nounset               off
verbose               off
xtrace                off
zle                   on





This e-mail message is CONFIDENTIAL and may contain legally privileged
information.  If you are not the intended recipient you should not  read,
copy, distribute, disclose or otherwise use the information in this e-mail.
Please also telephone or fax us immediately and delete the message from
your system.  E-mail may be susceptible to data corruption, interception
and unauthorised amendment, and we do not accept liability for any such
corruption, interception or amendment or the consequences thereof.



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