I'm just trying to get conceal working, so I've created a simple test case. I have a clean .vimrc file with only the following lines:
set conceallevel=2 syn match Conceal /syn/ conceal cchar=+
However, when I initially open this file in vim, the "syn" is not replaced with a "+" (it doesn't matter which line the cursor is on). But when I do
:source % to reload this .vimrc, it starts working, replacing the occurrence "syn" with "+".
I have verified that this .vimrc does work when vim is initially opened for other things. For example, given the following .vimrc, the word "hi" is highlighted in red, while the word "syn" remains unconcealed until I type
set conceallevel=2 syn match Conceal /syn/ conceal cchar=+ hi Test ctermfg=red match Test /hi/