Le vendredi 5 janvier 2018 21:59:36 UTC+1, Ni Va a écrit :
> Hi Ben,
> 
> 
> Code is here :
> https://github.com/octol/vim-cpp-enhanced-highlight/blob/master/after/syntax/cpp.vim
> 
> 
> 
> Thank you for syn-nextgroup even if it is too difficult for ma comprehension.
> 
> 
> 2018-01-05 21:07 GMT+01:00 Ben Fritz <[email protected]>:
> On Thursday, December 21, 2017 at 8:41:39 AM UTC-6, Ni Va wrote:
> 
> > Hi,
> 
> >
> 
> > Here is a syntime report that show slow regexp
> 
> >
> 
> >   TOTAL      COUNT  MATCH   SLOWEST     AVERAGE   NAME               PATTERN
> 
> >   0.703272   897    78      0.007309    0.000784  cCustomAngleBrackets 
> >\v%(<operator\_s*)@<!%(%(\_i|template\_s*)@<=\<[<=]@!|\<@<!\<[[:space:]<=]@!)
> 
> >   0.089086   827    0       0.049759    0.000108  cppRawString       
> >\%(u8\|[uLU]\)\=R"\z([[:alnum:]_{}[\]#<>%:;.?*\+\-/\^&|~!=,"']\{,16}\)(
> 
> >   0.053747   898    71      0.000639    0.000060  cCustomFunc        
> >\w\+\s*(\@=
> 
> >
> 
> >
> 
> >
> 
> > How can I fix the first and second one ?
> 
> > Thank you
> 
> 
> 
> For the first, it uses a couple lookbehind assertions with unlimited distance 
> which can be very slow. If you can limit the distance to look back, you can 
> make it much faster (see the help just under ":help /\@<!", for "\@123<!").
> 
> 
> 
> Unfortunately if you really need an unbounded amount of whitespace/newlines 
> in your lookbehind, this may not be an option for you. You can experiment 
> with breaking up the pattern and using nextgroup (:help :syn-nextgroup) but 
> no guarantees there.
> 
> 
> 
> I'm not sure what would make the second item slow from what you've posted. Is 
> that the complete pattern?
> 
> 
> 
> --
> 
> --
> 
> 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 a topic in the Google 
> Groups "vim_use" group.
> 
> To unsubscribe from this topic, visit 
> https://groups.google.com/d/topic/vim_use/BVJbn4kdVxE/unsubscribe.
> 
> To unsubscribe from this group and all its topics, send an email to 
> [email protected].
> 
> For more options, visit https://groups.google.com/d/optout.

Entire patterns in comment :


    " syn region  cCustomAngleBrackets matchgroup=AngleBracketContents 
start="\v%(<operator\_s*)@<!%(%(\_i|template\_s*)@<=\<[<=]@!|\<@<!\<[[:space:]<=]@!)"
 end='>' 
contains=@cppSTLgroup,cppStructure,cType,cCustomClass,cCustomAngleBrackets,cNumbers
    syn region  cCustomAngleBrackets matchgroup=AngleBracketContents 
start="\v%(<operator\_s\{64})@123<!%(%(\_i|template\_s\{64})\zs\<[<=]@!|\<@123<!\<[[:space:]<=]@!)"
 end='>' 
contains=@cppSTLgroup,cppStructure,cType,cCustomClass,cCustomAngleBrackets,cNumbers
    syn match   cCustomBrack    "<\|>" contains=cCustomAngleBrackets
    " syn match   cCustomTemplateFunc "\w\+\s*<.*>(\@=" 
contains=cCustomBrack,cCustomAngleBrackets
    syn match   cCustomTemplateFunc "\w\+\s*<.\{-}>(\@=" 
contains=cCustomBrack,cCustomAngleBrackets

-- 
-- 
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.

Reply via email to