0
0
mirror of https://github.com/vim/vim.git synced 2025-09-04 21:33:48 -04:00

patch 7.4.1035

Problem:    An Ex range gets adjusted for folded lines even when the range is
            not using line numbers.
Solution:   Only adjust line numbers for folding. (Christian Brabandt)
This commit is contained in:
Bram Moolenaar 2016-01-02 21:41:06 +01:00
parent 27a82e31ee
commit a3306958dc
3 changed files with 8 additions and 4 deletions

View File

@ -1,4 +1,4 @@
*fold.txt* For Vim version 7.4. Last change: 2015 Nov 24 *fold.txt* For Vim version 7.4. Last change: 2016 Jan 02
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -585,8 +585,9 @@ what you type!
When using an operator, a closed fold is included as a whole. Thus "dl" When using an operator, a closed fold is included as a whole. Thus "dl"
deletes the whole closed fold under the cursor. deletes the whole closed fold under the cursor.
For Ex commands the range is adjusted to always start at the first line of a For Ex commands that work on buffer lines the range is adjusted to always
closed fold and end at the last line of a closed fold. Thus this command: > start at the first line of a closed fold and end at the last line of a closed
fold. Thus this command: >
:s/foo/bar/g :s/foo/bar/g
when used with the cursor on a closed fold, will replace "foo" with "bar" in when used with the cursor on a closed fold, will replace "foo" with "bar" in
all lines of the fold. all lines of the fold.

View File

@ -2543,7 +2543,8 @@ do_one_cmd(cmdlinep, sourcing,
correct_range(&ea); correct_range(&ea);
#ifdef FEAT_FOLDING #ifdef FEAT_FOLDING
if (((ea.argt & WHOLEFOLD) || ea.addr_count >= 2) && !global_busy) if (((ea.argt & WHOLEFOLD) || ea.addr_count >= 2) && !global_busy
&& ea.addr_type == ADDR_LINES)
{ {
/* Put the first line at the start of a closed fold, put the last line /* Put the first line at the start of a closed fold, put the last line
* at the end of a closed fold. */ * at the end of a closed fold. */

View File

@ -741,6 +741,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
1035,
/**/ /**/
1034, 1034,
/**/ /**/