Mercurial > vim
changeset 6838:0229cfffc560 v7.4.740
patch 7.4.740
Problem: ":1quit" works like ":.quit". (Bohr Shaw)
Solution: Don't exit Vim when a range is specified. (Christian Brabandt)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Fri, 19 Jun 2015 12:43:07 +0200 |
parents | 1b360286379d |
children | ef1bb1f160c5 |
files | src/ex_docmd.c src/testdir/test13.in src/testdir/test13.ok src/version.c |
diffstat | 4 files changed, 17 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -7092,7 +7092,14 @@ ex_quit(eap) else { #ifdef FEAT_WINDOWS - if (only_one_window()) /* quit last window */ + /* quit last window + * Note: only_one_window() returns true, even so a help window is + * still open. In that case only quit, if no address has been + * specified. Example: + * :h|wincmd w|1q - don't quit + * :h|wincmd w|q - quit + */ + if (only_one_window() && (firstwin == lastwin || eap->addr_count == 0)) #endif getout(0); #ifdef FEAT_WINDOWS
--- a/src/testdir/test13.in +++ b/src/testdir/test13.in @@ -48,6 +48,12 @@ otestje3 :au BufWipeout Xtestje1 buf Xtestje1 :bwipe :w >>test.out +:only +:help +:wincmd w +:1quit +:$put ='Final line' +:$w >>test.out :qa! ENDTEST