diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | Completion/Core/_main_complete | 4 | ||||
-rw-r--r-- | Doc/Zsh/compsys.yo | 7 |
3 files changed, 14 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog index e9be943e3..197a00ea5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2000-07-27 Sven Wischnowsky <wischnow@zsh.org> + + * 12405: Completion/Core/_main_complete, Doc/Zsh/compsys.yo: fix a + bug that started menu selection too often; fix bug for `yes=long' + and documentit + 2000-07-27 Bart Schaefer <schaefer@zsh.org> * 12396: Functions/Misc/zed: The value of `$(functions $1)' for diff --git a/Completion/Core/_main_complete b/Completion/Core/_main_complete index 9b0972ca2..7f0e94358 100644 --- a/Completion/Core/_main_complete +++ b/Completion/Core/_main_complete @@ -177,7 +177,8 @@ if [[ $compstate[old_list] = keep || nm -gt 1 ]]; then -n "$_menu_style[(r)(yes|true|on|1)=long-list]" ) ]]; then compstate[insert]=menu elif [[ "$compstate[insert]" = "$_saved_insert" ]]; then - if [[ -n "$_menu_style[(r)(yes|true|1|on)=long]" && tmp -gt LINES ]]; then + if [[ -n "$compstate[insert]" && + -n "$_menu_style[(r)(yes|true|1|on)=long]" && tmp -gt LINES ]]; then compstate[insert]=menu else sel=( "${(@M)_menu_style:#(yes|true|1|on)*}" ) @@ -230,6 +231,7 @@ if [[ $compstate[old_list] = keep || nm -gt 1 ]]; then fi if [[ "$compstate[insert]" = *menu* ]]; then + [[ "$MENUSELECT" = 00 ]] && MENUSELECT=0 if [[ -n "$_menu_style[(r)no-select*]" ]]; then unset MENUSELECT elif [[ -n "$_menu_style[(r)select=long*]" ]]; then diff --git a/Doc/Zsh/compsys.yo b/Doc/Zsh/compsys.yo index 76840e129..d6a796f67 100644 --- a/Doc/Zsh/compsys.yo +++ b/Doc/Zsh/compsys.yo @@ -1628,8 +1628,11 @@ of the `false' values (as in `tt(no=10)') makes menu completion em(not) be used if there are var(num) or more matches. Of course, this is only useful when menu completion is normally used, e.g. by setting the tt(MENU_COMPLETE) option. The `true' values may also be -used in the form `tt(yes=long-list)' to turn on menu completion -whenever listing is done and the list does not fit onto the screen. +used in the form `tt(yes=long)' to turn on menu completion +if the list does not fit onto the screen. This will start menu +completion only if normal completion was attempted, not when only the +list of possible completions was requested. To start menu completion +even then, the value `tt(yes=long-list)' can be used. In addition to (or instead of) the above possibilities, the value may contain the string `tt(select)', optionally followed by an equal sign and a |