# HG changeset patch # User Bram Moolenaar # Date 1277176598 -7200 # Node ID fb627e94e6c6c209129d353b5b40a678226adefc # Parent aafed4a4866f661e4c256417fa6709a75dcec58d Couple of small fixes for conceal feature. (Dominique Pelle) diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -3135,8 +3135,10 @@ These arguments can be used for all thre conceal *conceal* *:syn-conceal* When the "conceal" argument is given, the item is marked as concealable. -Whether or not it is actually concealed depends on the setting on the -'conceallevel' option. +Whether or not it is actually concealed depends on the value of the +'conceallevel' option. If 'modifiable' option is on, concealable items +in the current line are always displayed unconcealed to be able to edit +the line. concealends *:syn-concealends* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1088,11 +1088,8 @@ Vim 7.3: - using NSIS 2.46: install on Windows 7 works, but no "Edit with Vim" menu. Use register_shell_extension()? (George Reilly, 2010 May 26) Ron's version: http://dev.ronware.org/p/vim/finfo?name=gvim.nsi -- Patch for conceal feature and 'foldcolumn'. (Dominique Pelle, 2010 Jun 10, - second patch) - Also patch from Vince, 2010 Jun 15. And another June 16. +- Patch for conceal from Vince, 2010 Jun 15. And another June 16. However: more generic patch on the way. -- patch for conceal feature and 'modifiable'. (Dominique Pelle, 2010 Jun 9) - undofile: keep markers where the file was written/read, so that it's easy to go back to a saved version of the file: ":earlier 1f" (f for file)? Also add ":earlier 1d" (d for day). diff --git a/src/option.c b/src/option.c --- a/src/option.c +++ b/src/option.c @@ -7334,12 +7334,21 @@ set_bool_option(opt_idx, varp, value, op #endif } -#ifdef FEAT_TITLE - /* when 'modifiable' is changed, redraw the window title */ +#if defined(FEAT_TITLE) || defined(FEAT_CONCEAL) + /* when 'modifiable' is changed, redraw the window title and + * update current line for concealable items */ else if ((int *)varp == &curbuf->b_p_ma) { +# ifdef FEAT_TITLE redraw_titles(); - } +# endif +# ifdef FEAT_CONCEAL + if (curwin->w_p_conceal) + update_single_line(curwin, curwin->w_cursor.lnum); +# endif + } +#endif +#ifdef FEAT_TITLE /* when 'endofline' is changed, redraw the window title */ else if ((int *)varp == &curbuf->b_p_eol) { @@ -8443,7 +8452,7 @@ findoption(arg) get_option_value(name, numval, stringval, opt_flags) char_u *name; long *numval; - char_u **stringval; /* NULL when only checking existance */ + char_u **stringval; /* NULL when only checking existence */ int opt_flags; { int opt_idx; diff --git a/src/screen.c b/src/screen.c --- a/src/screen.c +++ b/src/screen.c @@ -595,7 +595,7 @@ update_single_line(wp, lnum) int j; if (lnum >= wp->w_topline && lnum < wp->w_botline - && foldedCount(wp, lnum, NULL) == 0) + && foldedCount(wp, lnum, &win_foldinfo) == 0) { # ifdef FEAT_GUI /* Remove the cursor before starting to do anything, because scrolling