On Apr 13, 2014 1:47 AM, "Christian Brabandt" <[email protected]> wrote: > > > On Sa, 12 Apr 2014, Andrei Kulakov wrote: > > > Hi, how can I get this to work: > > What are you trying to achieve? > > > > imap - > > <c-r>=synIDattr(synIDtrans(synID(line("."),col(".")-1,1)),"name")=~"(String)||(Comment)" > > ? '-' : '_'<cr> > > I think this should be: > imap - <c-r>=synIDattr(synIDtrans(synID(line("."),col(".")-1,1)),"name")=~?'String\\|Comment'?'-':'_'<cr> > > I am not sure, why the \ needs to be doubled. I guess it has to be > escaped, because it is evaluated twice or something.
One escaping for :map (so bar is not treated as commands separator), one for regex engine. > > And how can this be found in Vim manual? I would say that OP needs to read all of :h pattern. > Depends on what your problem in understanding is. For starters, look here: > > :h i_CTRL-R_= > :h synIDattr() > :h synIDtrans() > :h synID() > :h line() > :h col() > :h expr1 > :h expr4 > :h /bar > :h /\( > > Best, > Christian > -- > Der Ärger ist als Gewitter, nicht als Dauerregen gedacht; er soll die > Luft reinigen und nicht die Ernte verderben. > -- Ernst R. Hauschka > > -- > -- > You received this message from the "vim_use" 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 > > --- > You received this message because you are subscribed to the Google Groups "vim_use" group. > To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. > For more options, visit https://groups.google.com/d/optout. -- -- You received this message from the "vim_use" 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 --- You received this message because you are subscribed to the Google Groups "vim_use" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
