mirror of
https://github.com/neovim/neovim.git
synced 2024-12-24 13:15:09 -07:00
vim-patch:7.4.686 #3629
Problem: "zr" and "zm" do not take a count.
Solution: Implement the count, restrict the fold level to the maximum
nesting depth. (Marcin Szamotulski)
7d2757a472
This commit is contained in:
parent
cbb7044878
commit
f65e7bf30c
@ -362,7 +362,7 @@ zX Undo manually opened and closed folds: re-apply 'foldlevel'.
|
|||||||
Also forces recomputing folds, like |zx|.
|
Also forces recomputing folds, like |zx|.
|
||||||
|
|
||||||
*zm*
|
*zm*
|
||||||
zm Fold more: Subtract one from 'foldlevel'. If 'foldlevel' was
|
zm Fold more: Subtract |v:count1| from 'foldlevel'. If 'foldlevel' was
|
||||||
already zero nothing happens.
|
already zero nothing happens.
|
||||||
'foldenable' will be set.
|
'foldenable' will be set.
|
||||||
|
|
||||||
@ -371,7 +371,7 @@ zM Close all folds: set 'foldlevel' to 0.
|
|||||||
'foldenable' will be set.
|
'foldenable' will be set.
|
||||||
|
|
||||||
*zr*
|
*zr*
|
||||||
zr Reduce folding: Add one to 'foldlevel'.
|
zr Reduce folding: Add |v:count1| to 'foldlevel'.
|
||||||
|
|
||||||
*zR*
|
*zR*
|
||||||
zR Open all folds. This sets 'foldlevel' to highest fold level.
|
zR Open all folds. This sets 'foldlevel' to highest fold level.
|
||||||
|
@ -4253,8 +4253,13 @@ dozet:
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
/* "zm": fold more */
|
/* "zm": fold more */
|
||||||
case 'm': if (curwin->w_p_fdl > 0)
|
case 'm':
|
||||||
--curwin->w_p_fdl;
|
if (curwin->w_p_fdl > 0) {
|
||||||
|
curwin->w_p_fdl -= cap->count1;
|
||||||
|
if (curwin->w_p_fdl < 0) {
|
||||||
|
curwin->w_p_fdl = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
old_fdl = -1; /* force an update */
|
old_fdl = -1; /* force an update */
|
||||||
curwin->w_p_fen = true;
|
curwin->w_p_fen = true;
|
||||||
break;
|
break;
|
||||||
@ -4266,7 +4271,14 @@ dozet:
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
/* "zr": reduce folding */
|
/* "zr": reduce folding */
|
||||||
case 'r': ++curwin->w_p_fdl;
|
case 'r':
|
||||||
|
curwin->w_p_fdl += cap->count1;
|
||||||
|
{
|
||||||
|
int d = getDeepestNesting();
|
||||||
|
if (curwin->w_p_fdl >= d) {
|
||||||
|
curwin->w_p_fdl = d;
|
||||||
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
/* "zR": open all folds */
|
/* "zR": open all folds */
|
||||||
|
@ -238,7 +238,7 @@ static int included_patches[] = {
|
|||||||
// 689,
|
// 689,
|
||||||
// 688,
|
// 688,
|
||||||
// 687 NA
|
// 687 NA
|
||||||
// 686,
|
686,
|
||||||
// 685,
|
// 685,
|
||||||
// 684,
|
// 684,
|
||||||
// 683 NA
|
// 683 NA
|
||||||
|
Loading…
Reference in New Issue
Block a user