Hi Bram, problem is, you can't conceal items using :match or matchadd(). Attached patch fixes it:
regards, Christian -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php
Ãnderung: 2744:48c9a0425e94 Marke: match_conceal Marke: qtip Marke: tip Nutzer: Christian Brabandt <[email protected]> Datum: Sat Apr 09 13:57:21 2011 +0200 Zusammenfassung: [mq]: match_conceal diff --git a/src/screen.c b/src/screen.c --- a/src/screen.c +++ b/src/screen.c @@ -2866,6 +2866,7 @@ wrapping */ int vcol_off = 0; /* offset for concealed characters */ int did_wcol = FALSE; + int match_conc = FALSE; # define VCOL_HLC (vcol - vcol_off) #else # define VCOL_HLC (vcol) @@ -3401,6 +3402,7 @@ */ for (;;) { + match_conc=FALSE; /* Skip this quickly when working on the text. */ if (draw_state != WL_LINE) { @@ -3671,6 +3673,13 @@ && v < (long)shl->endcol) { shl->attr_cur = shl->attr; +#ifdef FEAT_CONCEAL + if (cur != NULL && + syn_name2id((char_u *) "Conceal") == cur->hlg_id) + match_conc = TRUE; + else + match_conc = FALSE; +#endif } else if (v == (long)shl->endcol) { @@ -4472,8 +4481,8 @@ #ifdef FEAT_CONCEAL if ( wp->w_p_cole > 0 && (wp != curwin || lnum != wp->w_cursor.lnum || - conceal_cursor_line(wp)) - && (syntax_flags & HL_CONCEAL) != 0 + conceal_cursor_line(wp) ) + && ( (syntax_flags & HL_CONCEAL) != 0 || match_conc) && !(lnum_in_visual_area && vim_strchr(wp->w_p_cocu, 'v') == NULL)) {
