Saturday, August 31, 2013

Re: Slowness in Doxygen syntax

Hi, guys.

The version is MacVim 7.4 (Aug 10, 2013). Thats the version information when
typing ':version' in the command line. It is the 'Huge version with MacVim
GUI'.

The slowness is noticed when moving or typing in the problematic commented area.
In Insert or Normal mode.

Below is the result of ':syntime report'. Appears that the '\c', '\ref',
'\e' and '\b' are the culprit. This was tested in a file with 317 lines of
Objective-C code. Sorry that I cannot post the entire file here, since it
belongs to the company where I'm working right now. Even so, below the report,
I put some comment blocks.

  TOTAL      COUNT  MATCH   SLOWEST     AVERAGE   NAME               PATTERN
  0.835197   16     14      0.195808    0.052200  doxygenSpecialCodeWord \(\_s\+[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\
  0.329377   4      4       0.154978    0.082344  doxygenSpecialRefWord \(\_s\+[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\
  0.262015   4      4       0.120980    0.065504  doxygenSpecialEmphasisedWord \(\_s\+[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\
  0.207733   8      8       0.045915    0.025967  doxygenSpecialBoldWord \(\_s\+[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\
  0.035615   71     0       0.001082    0.000502  objcSuperclass     \(@\(implementation\|interface\)\s*\k\+\s*:\)\@<=\s*\k*
  0.015586   88     56      0.000803    0.000177  objcMethodName     \(^\s*[-+]\s*(\_[^)]*)\)\@<=\_\s*\_\k\+
  0.015504   10     8       0.003243    0.001550  doxygenCodeWord    \_s\@<=[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\
  0.015495   10     8       0.003165    0.001550  doxygenCodeWord    \_s\@<=[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\
  0.005707   234    0       0.000038    0.000024  doxygenHyperLink   \(\s\|^\s*\*\?\)\@<=\(http\|https\|ftp\):\/\/[-0-9a-zA-Z_?&=+#%/.!':;@~]\+
  0.005336   562    0       0.000045    0.000009  objcError          \v(NSLogv=\(\s*)@<=[^@]=["'].*
  0.005140   87     20      0.000184    0.000059  objcSubclass       \(@implementation\|@interface\)\@<=\s*\k\+
  0.004815   2      2       0.002418    0.002408  doxygenRefWord     \_s\@<=[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\
  0.004310   606    44      0.000031    0.000007  cFunctions         \<\(\i\+\w*\)\s*(
  0.004002   576    26      0.000026    0.000007  objcString         \(@"\|"\)
  0.003881   234    0       0.000028    0.000017  doxygenHashLink    \([a-zA-Z_][0-9a-zA-Z_]*\)\?#\(\.[0-9a-zA-Z_]\@=\|[a-zA-Z0-9_]\+\|::\|()\)\+
  0.003703   2      2       0.001860    0.001852  doxygenEmphasisedWord \_s\@<=[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\
  0.003690   2      2       0.001854    0.001845  doxygenEmphasisedWord \_s\@<=[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\
  0.003219   4      4       0.000813    0.000805  doxygenBoldWord    \_s\@<=[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\
  0.002976   562    0       0.000017    0.000005  cString            \%(U\|u8\=\)"
  0.002663   56     32      0.000066    0.000048  doxygenBrief       \(\s*\(\n\s*\*\=\s*\)[@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\@=
  0.002473   724    162     0.000011    0.000003  cBracket           \[\|<::\@!
  0.002279   562    0       0.000013    0.000004  cSpecialCharacter  L\='\\['\"?\\abfnrtv]'
  0.002269   562    0       0.000026    0.000004  cCharacter         L\='[^\\]'
  0.002232   564    14      0.000015    0.000004  cCppString         L\="
  0.002231   562    0       0.000012    0.000004  cSpecialError      L\='\\[^'\"?\\abfnrtv]'
  0.002144   564    14      0.000012    0.000004  cString            L\="
  0.001844   854    481     0.000011    0.000002  cOperator          [%><?!*&|~^=+-]
  0.001804   8      0       0.000499    0.000226  objcMessageColon   \(\_\S\+\_\s\+\)\@<=\k\+\s*:
  0.001733   562    0       0.000008    0.000003  cSpecialCharacter  [Uu]'\\['\"?\\abfnrtv]'
  0.001636   562    0       0.000009    0.000003  cCharacter         [Uu]'[^\\]'
  0.001619   562    0       0.000008    0.000003  cCharacter         [Uu]'[^']*'
  0.001592   562    0       0.000008    0.000003  cSpecialError      [Uu]'\\[^'\"?\\abfnrtv]'
  0.001562   274    24      0.000014    0.000006  doxygenSmallSpecial [@\\]\(\<[npcbea]\>\|\<em\>\|\<ref\>\|\<link\>\|f\$\|[$\\&<>#]\)\@=
  0.001413   290    174     0.000013    0.000005  doxygenSpecial     [@\\]\(\<[npcbea]\>\|\<em\>\|\<ref\|\<link\>\>\|\<f\$\|[$\\&<>#]\)\@!
  0.001252   68     18      0.000045    0.000018  doxygenBrief       \(^\s*\)\@<!\*/\@!
  0.001032   602    40      0.000015    0.000002  objcMethod         ^\s*[-+]\s*\_.\{-}[\{;]
  0.000913   562    0       0.000004    0.000002  cPreProc           ^\s*\(%:\|#\)\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)
  0.000883   562    0       0.000006    0.000002  cDefine            ^\s*\(%:\|#\)\s*\(define\|undef\)\>
  0.000880   562    0       0.000004    0.000002  cDefine            ^\s*\(%:\|#\)\s*\(define\|undef\)\>
  0.000855   562    0       0.000004    0.000002  cCppOutWrapper     ^\s*\(%:\|#\)\s*if\s\+0\+\s*\($\|//\|/\*\|&\)
  0.000855   562    0       0.000008    0.000002  cPreCondit         ^\s*\(%:\|#\)\s*\(if\|ifdef\|ifndef\|elif\)\>
  0.000852   116    116     0.000020    0.000007  objcMethodArg      )\@<=\s*\k\+
  0.000849   562    0       0.000007    0.000002  cCppInWrapper      ^\s*\(%:\|#\)\s*if\s\+0*[1-9]\d*\s*\($\|//\|/\*\||\)
  0.000764   122    0       0.000013    0.000006  cNumbers           \<\d\|\.\d
  0.000700   148    108     0.000011    0.000005  objcMethodColon    \k\+\s*:
  0.000678   580    64      0.000005    0.000001  doxygenComment     /\*\(\*/\)\@![*!]
  0.000643   122    0       0.000012    0.000005  cSpecialCharacter  L\='\\\o\{1,3}'
  0.000587   642    80      0.000004    0.000001  objcInstMethod     ^\s*-\s*
  0.000574   562    0       0.000003    0.000001  objcFactMethod     ^\s*+\s*
  0.000556   598    76      0.000005    0.000001  doxygenCommentL    //@\ze[{}]
  0.000481   90     24      0.000010    0.000005  doxygenSpecialMultilineDesc ^\s*\(\*/\@!\s*\)\=\(\<\|[@\\]\<\([npcbea]\>\|em\>\|ref\|link\>\>\|f\$\|[$\\&<>#]\)\|[^ \t
  0.000471   66     66      0.000011    0.000007  doxygenSpecialMultilineDesc .\+
  0.000463   134    12      0.000008    0.000003  cParenError        [\])]
  0.000455   326    116     0.000005    0.000001  doxygenContinueComment ^\s*\*/\@!\s*
  0.000448   562    22      0.000021    0.000001  doxygenCommentL    //[/!]<\@!
  0.000446   122    0       0.000008    0.000004  cSpecialCharacter  [Uu]'\\x\x\+'
  0.000431   122    0       0.000008    0.000004  cSpecialCharacter  [Uu]'\\\o\{1,3}'
  0.000416   562    0       0.000003    0.000001  doxygenCommentL    //[/!]<
  0.000414   120    120     0.000012    0.000003  cBracket           ]\|:>
  0.000394   90     0       0.000009    0.000004  doxygenPage        [\\@]page\>
  0.000333   70     22      0.000008    0.000005  doxygenStartSpecial [@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!
  0.000315   252    0       0.000099    0.000001  doxygenHtmlTag     \v\</=\ze([biuap]|em|strong|img|br|center|code|dfn|d[ldt]|hr|h[0-3]|li|[ou]l|pre|small|sub
  0.000307   70     0       0.000006    0.000004  doxygenFindBriefSpecial [@\\]brief\>
  0.000300   570    8       0.000004    0.000001  objcDirective      @property\|@synthesize\|@dynamic\|@package
  0.000293   562    0       0.000003    0.000001  objcDirective      @try\|@catch\|@finally\|@throw\|@synchronized
  0.000286   570    8       0.000003    0.000001  objcDirective      @encode\|@protocol\|@selector
  0.000280   562    11      0.000002    0.000000  objcDirective      @class\|@end\|@defs
  0.000279   54     0       0.000007    0.000005  doxygenBrief       [.]\S\@=
  0.000272   952    390     0.000001    0.000000  cParen             (
  0.000270   56     54      0.000006    0.000005  doxygenBrief       [.]
  0.000268   562    0       0.000003    0.000000  cocoaClass         \<CF\(\i\+\w*\)Ref\>
  0.000264   562    0       0.000003    0.000000  objcScopeDecl      @public\|@private\|@protected
  0.000263   8      0       0.000071    0.000033  objcMessageName    \(\[\s*\k\+\s\+\|\]\s*\)\@<=\k*\s*\]
  0.000258   578    16      0.000003    0.000000  objcDirective      @interface\|@implementation
  0.000256   562    0       0.000002    0.000000  cocoaFunction      \<CF\(\i\+\w*\)\s*(
  0.000245   448    48      0.000002    0.000001  doxygenBody        \*/
  0.000227   562    0       0.000001    0.000000  cCommentL          ////
  0.000221   634    138     0.000001    0.000000  cBlock             {
  0.000212   130    64      0.000003    0.000002  doxygenStart       /\*[*!]
  0.000211   580    69      0.000001    0.000000  cCommentL          //
  0.000210   112    112     0.000004    0.000002  doxygenBrief       [\\@]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]
  0.000210   122    0       0.000004    0.000002  objcProperty       ^\s*@property\>\s*([^)]*)
  0.000207   562    0       0.000005    0.000000  cocoaFunction      \<NS\(\i\+\w*\)\s*(
  0.000207   122    0       0.000007    0.000002  objcKeyForMethodParam ^\s*[_a-zA-Z][_a-zA-Z0-9]*\s*:\s*(
  0.000204   562    0       0.000002    0.000000  cocoaConstant      \<kCF\(\i\+\w*\)\>
  0.000201   130    80      0.000003    0.000002  doxygenSyncStart   \ze[^*/]
  0.000201   562    0       0.000002    0.000000  cCharacter         L'[^']*'
  0.000201   122    4       0.000004    0.000002  cInclude           ^\s*\(%:\|#\)\s*include\>\s*["<]
  0.000199   286    254     0.000002    0.000001  cComment           \*/
  0.000198   562    0       0.000001    0.000000  cComment           /\*\*\*
  0.000193   122    0       0.000004    0.000002  cPreConditMatch    ^\s*\(%:\|#\)\s*\(else\|endif\)\>
  0.000193   122    8       0.000004    0.000002  objcImport         ^\s*\(%:\|#\)\s*import\>\s*["<]
  0.000193   122    0       0.000005    0.000002  cBitField          ^\s*\I\i*\s*:\s*[1-9]
  0.000193   598    218     0.000001    0.000000  cComment           /\*
  0.000189   300    66      0.000002    0.000001  doxygenComment     \*/
  0.000188   570    8       0.000001    0.000000  objcImp            @implementation
  0.000185   570    8       0.000001    0.000000  objcHeader         @interface
  0.000180   122    0       0.000005    0.000001  cUserCont          ^\s*\I\i*\s*:[^:]
  0.000179   122    0       0.000005    0.000001  cUserCont          ^\s*\I\i*\s*:$
  0.000163   252    0       0.000004    0.000001  doxygenHtmlCode    \c<code\>
  0.000153   180    90      0.000003    0.000001  doxygenSpecialMultilineDesc ^
  0.000148   252    0       0.000001    0.000001  doxygenHtmlSpecial &\(copy\|quot\|[AEIOUYaeiouy]uml\|[AEIOUYaeiouy]acute\|[AEIOUaeiouy]grave\|[AEIOUaeiouy]ci
  0.000145   420    48      0.000001    0.000000  cBlock             }
  0.000145   38     0       0.000006    0.000004  doxygenComment2    /\*\(\*/\)\@![*!]
  0.000137   58     58      0.000004    0.000002  doxygenGroupDefine @\@<=[{}]
  0.000135   252    0       0.000003    0.000001  doxygenHtmlLink    <[aA]\>\s*\(\n\s*\*\s*\)\=\(\(name\|href\)=\("[^"]*"\|'[^']*'\)\)\=\s*>
  0.000131   252    0       0.000002    0.000001  doxygenHtmlItalic  \c<i\>
  0.000131   252    0       0.000002    0.000001  doxygenHtmlBold    \c<b\>
  0.000129   252    0       0.000002    0.000001  doxygenHtmlUnderline \c<u\>
  0.000119   18     18      0.000008    0.000007  doxygenSpecialTypeOnelineDesc .\+
  0.000116   252    0       0.000002    0.000000  doxygenHtmlItalic  \c<em\>
  0.000109   48     48      0.000004    0.000002  doxygenBody        \(/\*[*!]\)\@<!<\|[^<]\|$
  0.000109   252    0       0.000002    0.000000  doxygenHtmlBold    \c<strong\>
  0.000105   280    0       0.000002    0.000000  objcImp            @end
  0.000104   68     68      0.000002    0.000002  doxygenBrief       \<\k
  0.000089   32     32      0.000003    0.000003  doxygenParamName   [A-Za-z0-9_:]\+
  0.000087   165    0       0.000001    0.000001  cBadContinuation   \\\s\+$
  0.000081   110    46      0.000003    0.000001  doxygenStartSkip   ^\s*\*[^/]
  0.000080   22     22      0.000005    0.000004  doxygenBriefL      @\k\@!\|[\\@]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@]
  0.000080   240    240     0.000001    0.000000  cParen             )
  0.000074   122    36      0.000001    0.000001  cCommentError      \*/
  0.000073   240    0       0.000001    0.000000  cParen             }
  0.000073   44     22      0.000002    0.000002  doxygenStartL      //[/!]
  0.000072   64     0       0.000003    0.000001  doxygenStartSkip   ^\s*\*$
  0.000072   122    0       0.000003    0.000001  objcDirective      @synthesize\|@property\|@optional\|@required
  0.000071   122    0       0.000002    0.000001  cUserCont          ;\s*\I\i*\s*:[^:]
  0.000071   122    0       0.000002    0.000001  cBitField          ;\s*\I\i*\s*:\s*[1-9]
  0.000070   54     54      0.000002    0.000001  doxygenCommentL    $
  0.000070   20     20      0.000004    0.000004  doxygenStartSpecial $
  0.000070   22     22      0.000004    0.000003  doxygenCommentL    $
  0.000064   122    0       0.000002    0.000001  cUserCont          ;\s*\I\i*\s*:$
  0.000063   112    22      0.000003    0.000001  doxygenSpecialContinueComment ^\s*\*/\@!\s*
  0.000050   122    0       0.000001    0.000000  objcMessage        \[
  0.000048   122    0       0.000001    0.000000  cSpecialCharacter  L'\\x\x\+'
  0.000045   122    0       0.000001    0.000000  objcProtocol       <[_a-zA-Z][_a-zA-Z0-9]*>
  0.000043   60     0       0.000001    0.000001  cCommentStartError /\*
  0.000042   122    0       0.000001    0.000000  cSpecialCharacter  '\\x\x\{1,2}'
  0.000041   12     8       0.000007    0.000003  cErrInParen        [\]{}]\|<%\|%>
  0.000037   120    0       0.000001    0.000000  cBracket           }
  0.000034   22     22      0.000002    0.000002  doxygenBriefL      \<
  0.000033   14     10      0.000004    0.000002  doxygenSymbol      [$\\&<>#n]
  0.000033   50     0       0.000001    0.000001  doxygenBriefEndComment \*/
  0.000032   11     11      0.000004    0.000003  cCommentL          $
  0.000029   36     18      0.000002    0.000001  doxygenGroupDefineSpecial @\ze[{}]
  0.000025   66     7       0.000002    0.000000  objcHeader         @end
  0.000025   64     0       0.000001    0.000000  doxygenPrev        <
  0.000023   18     18      0.000002    0.000001  doxygenSpecialTypeOnelineDesc $
  0.000021   22     0       0.000002    0.000001  doxygenCodeRegion  \<code\>
  0.000019   22     0       0.000002    0.000001  doxygenDotRegion   \<dot\>
  0.000018   22     4       0.000005    0.000001  doxygenSkipComment ^\s*\*/\@!
  0.000014   22     0       0.000002    0.000001  doxygenVerbatimRegion \<verbatim\>
  0.000013   20     18      0.000001    0.000001  doxygenStartSpecial \*/
  0.000012   12     0       0.000002    0.000001  doxygenOtherLink   \<link\>
  0.000012   32     0       0.000001    0.000000  doxygenParamDirection \v\[(\s*in>((]\s*\[|\s*,\s*)out>)=|out>((]\s*\[|\s*,\s*)in>)=)\]
  0.000008   14     10      0.000001    0.000001  doxygenSpecialEmphasisedWord e
  0.000008   14     14      0.000001    0.000001  doxygenSpecialCodeWord c
  0.000008   16     8       0.000001    0.000001  objcImported       "
  0.000007   12     0       0.000001    0.000001  doxygenFormula     f\[
  0.000007   12     0       0.000001    0.000001  doxygenFormula     f\$
  0.000006   16     0       0.000001    0.000000  objcImported       <[-_0-9a-zA-Z.\/]*>
  0.000006   12     4       0.000001    0.000001  doxygenSpecialRefWord ref
  0.000006   22     0       0.000001    0.000000  doxygenPrevL       <
  0.000005   12     0       0.000001    0.000000  doxygenSpecialEmphasisedWord em
  0.000005   14     8       0.000001    0.000000  doxygenSpecialArgumentWord a
  0.000004   11     0       0.000001    0.000000  cCommentL          \\$
  0.000004   12     2       0.000001    0.000000  doxygenSpecialCodeWord p
  0.000004   4      4       0.000001    0.000001  cIncluded          "
  0.000003   14     4       0.000001    0.000000  doxygenSpecialBoldWord b
  0.000003   8      0       0.000001    0.000000  objcSpecial        %@
  0.000003   4      4       0.000001    0.000001  cIncluded          "
  0.000002   4      0       0.000001    0.000001  cIncluded          <[^>]*>
  0.000002   8      0       0.000001    0.000000  objcImported       \\\\\|\\"
  0.000002   4      0       0.000001    0.000001  cIncluded          \\\\\|\\"
  0.000001   8      8       0.000001    0.000000  objcImported       "
  0.000000   2      2       0.000000    0.000000  objcString         "
  0.000000   2      0       0.000000    0.000000  objcString         \\\\\|\\"

  1.823260   39809

Comment blocks (they are in Portuguese), these are the problematic ones:

/**
 * Define ou retorna a instância da implementação de HCRequestHandler
 * responsável pela comunicação com o equipamento.
 * Quando a View é criada, esta propriedade é \b nil até que uma referência
 * seja definida pela implementação especializada da tela.
 * \note A referência deste objeto será retido nesta operação.
 *//* --------------------------------------------------------------------- */

/**
 * Obtém a instância do controle ISlider responsável pela dimerização.
 * Esta propriedade é \b nil até que o método \c showSliderDimmer seja
 * executado.
 *//* --------------------------------------------------------------------- */

/**
 * Inicializa esta instância da View.
 * \param aRect retângulo de tamanho e localização da View. Normalmente
 * preenchendo toda a área interna do \e controller.
 * \param type Código do tipo do equipamento representado por esta View. Os
 * códigos estão disponíveis na lista \ref hc_equipments.
 * \param avID Identificador do equipamento conforme lista recebida do
 * console.
 * \return Este objeto inicializado.
 *//* --------------------------------------------------------------------- */

/**
 * Chamada quando o usuário faz uma alteração na posição do slider.
 * \param position Posição atual do slider. Varia de 0 à 100.
 * \remarks Esta função pode ser sobrescrita por classes derivadas para
 * obter o valor atualizado imediatamente. A implementação de HCAvdView envia
 * a mensagem de alteração ao console e atualiza a propriedade \c
 * generalLights do aplicativo.
 *//* --------------------------------------------------------------------- */

/**
 * Intercepta a notificação \c SM_CONNECTING da comunicação.
 * \param socketMsg Objeto que carrega a mensagem.
 *//* --------------------------------------------------------------------- */

Thanks for your attention.



2013/8/31 Dominique Pellé <dominique.pelle@gmail.com>
Dominique Pellé wrote:

> Alessandro Antonello <antonello.ale@gmail.com> wrote:
>
>> Hi all.
>>
>> I found some glitches in the new MacVim version and I was wondering if
>> someone else already saw something like this. I talked about MacVim because
>> I
>> couldn't test the Windows version yet.
>>
>> I usually work with ObjC files and I set 'syntax' in the modeline, like
>> this:
>>
>> // vim:syntax=objc.doxygen
>>
>> I use Doxygen for project documentation for years and it is part of my life
>> now. The odd glitch is that, the documented comment slows down Vim
>> substantially. Not in every places. Only when the cursor is in a comment
>> block
>> and if that comment block has a Doxygen command like @c (code), @b (bold),
>> @i
>> (italic) or @ref (cross reference). Commands like @param or @return doesn't
>> has the same behavior. The slowness also happens when using \c, \b, \i,
>> \ref.
>> That is, the '@' character is not the culprit.
>>
>> The slower [G]Vim happens only when the cursor is in the commented block.
>> Soon
>> the cursor gets out of it, the movement responses are back to normal.
>>
>> I try to disable some plugins, like UltiSnips and clang_complete, because I
>> installed them about a week ago. But that doesn't solve the problem.  So, as
>> a
>> work around, I came up with:
>>
>> :set syntax=objc
>> :set regexpengine=1
>> :set syntax=objc.doxygen
>>
>> The problem disappeared.
>>
>> I took a look at the Doxygen syntax from the new MacVim version and it
>> didn't
>> change a bit. So, I think this has something to do with the new regular
>> expression engine.
>>
>> Someone saw this problem yet?
>>
>> Regards.
>
> Which version of Vim are you using?
>
> Vim-7.4.* introduced the  :syntime  command which is
> useful for finding what regexp are the bottlenecks.  See
> :help :syntime
>
> Dominique

If you can send an example of doxygen file that shows
the slow behavior that would help others to reproduce the
issue.

Dominique

--
--
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 vim_use+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

--
--
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 vim_use+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

No comments: