diff options
author | Bram Moolenaar <Bram@vim.org> | 2005-05-22 22:09:40 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2005-05-22 22:09:40 +0000 |
commit | de934d77b1623f08fc1a30d91f7b58f6630dd1d1 (patch) | |
tree | 8651c674f15fdfb6bfc90de24746b2c0b79c3348 | |
parent | 2389c3c6402fedaa5b198a7bed04daabc2939e7b (diff) | |
download | vim-git-de934d77b1623f08fc1a30d91f7b58f6630dd1d1.tar.gz |
updated for version 7.0075
-rw-r--r-- | runtime/doc/pattern.txt | 6 | ||||
-rw-r--r-- | src/globals.h | 4 | ||||
-rw-r--r-- | src/ops.c | 20 | ||||
-rw-r--r-- | src/testdir/test55.in | 9 |
4 files changed, 34 insertions, 5 deletions
diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt index ba35a0470..b99b0d7ab 100644 --- a/runtime/doc/pattern.txt +++ b/runtime/doc/pattern.txt @@ -1,4 +1,4 @@ -*pattern.txt* For Vim version 7.0aa. Last change: 2005 Mar 29 +*pattern.txt* For Vim version 7.0aa. Last change: 2005 May 22 VIM REFERENCE MANUAL by Bram Moolenaar @@ -835,8 +835,8 @@ $ At end of pattern or in front of "\|" or "\)" ("|" or ")" after "\v"): are halfway a Tab or other character that occupies more than one screen character. {not in Vi} WARNING: When inserting or deleting text Vim does not automatically - update the matches. This means Syntax highlighting quickly becomes - wrong. + update highlighted matches. This means Syntax highlighting quickly + becomes wrong. Example, to highlight the all characters after virtual column 72: > /\%>72v.* < When 'hlsearch' is set and you move the cursor around and make changes diff --git a/src/globals.h b/src/globals.h index bbb0f1a69..446717d79 100644 --- a/src/globals.h +++ b/src/globals.h @@ -1431,6 +1431,10 @@ EXTERN char_u e_intern2[] INIT(=N_("E685: Internal error: %s")); EXTERN char_u e_maxmempat[] INIT(=N_("E363: pattern uses more memory than 'maxmempattern'")); EXTERN char_u e_emptybuf[] INIT(=N_("E749: empty buffer")); +#ifdef FEAT_EX_EXTRA +EXTERN char_u e_invalpat[] INIT(=N_("E682: Invalid search pattern or delimiter")); +#endif + #ifdef MACOS_X_UNIX EXTERN short disallow_gui INIT(= FALSE); #endif @@ -783,6 +783,17 @@ get_expr_line() vim_free(expr_copy); return rv; } + +/* + * Get the '=' register expression itself, without evaluating it. + */ + char_u * +get_expr_line_src() +{ + if (expr_line == NULL) + return NULL; + return vim_strsave(expr_line); +} #endif /* FEAT_EVAL */ /* @@ -5588,9 +5599,10 @@ get_reg_type(regname, reglen) * Returns NULL for error. */ char_u * -get_reg_contents(regname, allowexpr) +get_reg_contents(regname, allowexpr, expr_src) int regname; - int allowexpr; /* allow "=" register. */ + int allowexpr; /* allow "=" register */ + int expr_src; /* get expression for "=" register */ { long i; char_u *retval; @@ -5601,7 +5613,11 @@ get_reg_contents(regname, allowexpr) if (regname == '=') { if (allowexpr) + { + if (expr_src) + return get_expr_line_src(); return get_expr_line(); + } return NULL; } diff --git a/src/testdir/test55.in b/src/testdir/test55.in index 46a857b12..e25d6ca71 100644 --- a/src/testdir/test55.in +++ b/src/testdir/test55.in @@ -266,6 +266,15 @@ STARTTEST :$put =string(reverse(sort(l))) :$put =string(sort(reverse(sort(l)))) :" +:" splitting a string to a List +:$put =string(split(' aa bb ')) +:$put =string(split(' aa bb ', '\W\+', 0)) +:$put =string(split(' aa bb ', '\W\+', 1)) +:$put =string(split(' aa bb ', '\W', 1)) +:$put =string(split(':aa::bb:', ':', 0)) +:$put =string(split(':aa::bb:', ':', 1)) +:$put =string(split('aa,,bb, cc,', ',\s*', 1)) +:" :endfun :call Test(1, 2, [3, 4], {5: 6}) " This may take a while :" |