[SCM] vim-scripts packaging branch, master, updated. v20091011-7-g153d936

James Vega jamessan at debian.org
Tue Jan 26 22:21:40 UTC 2010


The following commit has been merged in the master branch:
commit 2fa82e943e4b59d3970e5e5c0674c48680bef71f
Author: James Vega <jamessan at debian.org>
Date:   Tue Jan 26 16:53:15 2010 -0500

    Update DoxygenToolkit to 0.2.7
    
    Signed-off-by: James Vega <jamessan at debian.org>

diff --git a/debian/changelog b/debian/changelog
index c0c43bd..3252025 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,6 +4,7 @@ vim-scripts (20091012) UNRELEASED; urgency=low
     manage with vim-addon-manager.  (Closes: #555621)
   * Updated addons:
     - supertab: Updated to 1.0
+    - DoxygenToolkit: Update to 0.2.7
 
  -- James Vega <jamessan at debian.org>  Sun, 24 Jan 2010 17:10:16 -0500
 
diff --git a/debian/patches/disabledby-doxygentoolkit.diff b/debian/patches/disabledby-doxygentoolkit.diff
index 595075b..a5fb238 100644
--- a/debian/patches/disabledby-doxygentoolkit.diff
+++ b/debian/patches/disabledby-doxygentoolkit.diff
@@ -2,7 +2,7 @@ Index: vim-scripts/plugin/DoxygenToolkit.vim
 ===================================================================
 --- vim-scripts.orig/plugin/DoxygenToolkit.vim
 +++ vim-scripts/plugin/DoxygenToolkit.vim
-@@ -215,10 +215,10 @@
+@@ -226,10 +226,10 @@
  
  
  " Verify if already loaded
@@ -16,4 +16,4 @@ Index: vim-scripts/plugin/DoxygenToolkit.vim
 +endif
  let loaded_DoxygenToolkit = 1
  "echo 'Loading DoxygenToolkit...'
- let s:licenseTag = "Copyright (C) \<enter>"
+ let s:licenseTag = "Copyright (C) \<enter>\<enter>"
diff --git a/debian/vim-scripts.status b/debian/vim-scripts.status
index 09cdc1e..9473821 100644
--- a/debian/vim-scripts.status
+++ b/debian/vim-scripts.status
@@ -298,7 +298,7 @@ author_url:  http://www.vim.org/account/profile.php?user_id=5172
 email:       mathias_lorente at yahoo.fr
 license:     no license
 disabledby:  let loaded_DoxygenToolkit = 1
-version:     0.2.5
+version:     0.2.7
 
 script_name: autoload/omni/cpp/complete.vim
 addon:       omnicppcomplete
diff --git a/html/index.html b/html/index.html
index ffa2d9d..94d21eb 100644
--- a/html/index.html
+++ b/html/index.html
@@ -50,7 +50,7 @@
    <li><a href="syntax_mkd.vim.html">syntax/mkd.vim.html</a></li>
   </ul>
   <p>
-  Page generated on Tue, 26 Jan 2010 16:21:20 -0500
+  Page generated on Tue, 26 Jan 2010 16:50:17 -0500
 .
   </p>
  </body>
diff --git a/html/plugin_DoxygenToolkit.vim.html b/html/plugin_DoxygenToolkit.vim.html
index 9e2d6ce..f14ed1a 100644
--- a/html/plugin_DoxygenToolkit.vim.html
+++ b/html/plugin_DoxygenToolkit.vim.html
@@ -166,8 +166,8 @@
 <tr>
   <td class="lightbg"><b>&nbsp;script karma&nbsp;</b></td>
   <td>
-    Rating <b>208/90</b>,
-    Downloaded by 5501  </td>
+    Rating <b>219/95</b>,
+    Downloaded by 6251  </td>
 </tr>
 </table>
 <p>
@@ -217,6 +217,22 @@ Click on the package to download.
     <th valign="top">release notes</th>
 </tr>
 <tr>
+        <td class="rowodd" valign="top" nowrap><a href="download_script.php?src_id=11878">DoxygenToolkit.vim</a></td>
+    <td class="rowodd" valign="top" nowrap><b>0.2.7</b></td>
+    <td class="rowodd" valign="top" nowrap><i>2009-12-06</i></td>
+    <td class="rowodd" valign="top" nowrap>7.0</td>
+    <td class="rowodd" valign="top"><i><a href="/account/profile.php?user_id=5172">Mathias Lorente</a></i></td>
+    <td class="rowodd" valign="top" width="2000">Increase comparibility with c/c++ IDE</td>
+</tr>
+<tr>
+        <td class="roweven" valign="top" nowrap><a href="download_script.php?src_id=11765">DoxygenToolkit.vim</a></td>
+    <td class="roweven" valign="top" nowrap><b>0.2.6</b></td>
+    <td class="roweven" valign="top" nowrap><i>2009-11-19</i></td>
+    <td class="roweven" valign="top" nowrap>7.0</td>
+    <td class="roweven" valign="top"><i><a href="/account/profile.php?user_id=5172">Mathias Lorente</a></i></td>
+    <td class="roweven" valign="top" width="2000">Bug correction (thanks to Jhon Do):
<br>DoxygenToolkit_briefTag_funcName and other xxx_xxName parameters should work properly now.</td>
+</tr>
+<tr>
         <td class="rowodd" valign="top" nowrap><a href="download_script.php?src_id=11228">DoxygenToolkit.vim</a></td>
     <td class="rowodd" valign="top" nowrap><b>0.2.5</b></td>
     <td class="rowodd" valign="top" nowrap><i>2009-08-21</i></td>
diff --git a/plugin/DoxygenToolkit.vim b/plugin/DoxygenToolkit.vim
index 465c934..f5159d5 100644
--- a/plugin/DoxygenToolkit.vim
+++ b/plugin/DoxygenToolkit.vim
@@ -1,15 +1,26 @@
 " DoxygenToolkit.vim
 " Brief: Usefull tools for Doxygen (comment, author, license).
-" Version: 0.2.5
-" Date: 08/20/09
+" Version: 0.2.7
+" Date: 12/06/09
 " Author: Mathias Lorente
 "
 " TODO: add automatically (option controlled) in/in out flags to function
 "       parameters
 " TODO: (Python) Check default paramareters defined as list/dictionnary/tuple
 "
-" Note: Corrected DoxLic function which should have been corrupted since version
-"       0.2.0 (thanks to Roland Kammerer). Date and name are properly set.
+" Note: Solve almost all compatibility problem with c/c++ IDE
+"
+" Note: Bug correction and improve compatibility with c/c++ IDE
+"   - Documentation of function with struct parameters are now allowed.
+"   - Comments are written in two steps to avoid conflicts with c/c++ IDE.
+"
+" Note: Bug correction (thanks to Jhon Do)
+"   - DoxygenToolkit_briefTag_funcName and other xxx_xxName parameters 
+"     should work properly now.
+"
+" Note: Bug correction (thanks to Anders Bo Rasmussen)
+"   - C++: now functions like  void foo(type &bar); are correctly documented.
+"          The parameter's name is bar (and no more &bar).
 "
 " Note: Added @version tag into the DocBlock generated by DoxygenAuthorFunc()
 "       (thanks to Dave Walter).
@@ -221,7 +232,7 @@
 "endif
 let loaded_DoxygenToolkit = 1
 "echo 'Loading DoxygenToolkit...'
-let s:licenseTag = "Copyright (C) \<enter>"
+let s:licenseTag = "Copyright (C) \<enter>\<enter>"
 let s:licenseTag = s:licenseTag . "This program is free software; you can redistribute it and/or\<enter>"
 let s:licenseTag = s:licenseTag . "modify it under the terms of the GNU General Public License\<enter>"
 let s:licenseTag = s:licenseTag . "as published by the Free Software Foundation; either version 2\<enter>"
@@ -282,7 +293,7 @@ if !exists("g:DoxygenToolkit_classTag")
 endif
 
 if !exists("g:DoxygenToolkit_cinoptions")
-  let g:DoxygenToolkit_cinoptions = "c1C1"
+    let g:DoxygenToolkit_cinoptions = "c1C1"
 endif
 if !exists("g:DoxygenToolkit_startCommentTag ")
   let g:DoxygenToolkit_startCommentTag = "/** "
@@ -332,7 +343,7 @@ if !exists("g:DoxygenToolkit_compactDoc")
 endif
 
 " Necessary '\<' and '\>' will be added to each item of the list.
-let s:ignoreForReturn = ['template', 'explicit', 'inline', 'static', 'virtual', 'void\([[:blank:]]*\*\)\@!', 'const', 'volatile']
+let s:ignoreForReturn = ['template', 'explicit', 'inline', 'static', 'virtual', 'void\([[:blank:]]*\*\)\@!', 'const', 'volatile', 'struct']
 if !exists("g:DoxygenToolkit_ignoreForReturn")
   let g:DoxygenToolkit_ignoreForReturn = s:ignoreForReturn[:]
 else
@@ -391,13 +402,13 @@ function! <SID>DoxygenLicenseFunc()
   endif
   mark d
   let l:date = strftime("%Y")
-  exec "normal O".s:startCommentBlock.substitute( g:DoxygenToolkit_licenseTag, "\<enter>", "\<enter>".s:interCommentBlock, "g" )
+  exec "normal O".strpart( s:startCommentBlock, 0, 1 )
+  exec "normal A".strpart( s:startCommentBlock, 1 ).substitute( g:DoxygenToolkit_licenseTag, "\<enter>", "\<enter>".s:interCommentBlock, "g" )
   if( s:endCommentBlock != "" )
     exec "normal o".s:endCommentBlock
   endif
   if( g:DoxygenToolkit_licenseTag == s:licenseTag )
-    exec search("Copyright (C)", "beW")
-    exec "normal A".l:date." - ".g:DoxygenToolkit_authorName
+    exec "normal %jA".l:date." - ".g:DoxygenToolkit_authorName
   endif
   exec "normal `d"
 
@@ -450,6 +461,7 @@ endfunction
 " C/C++ only!
 """"""""""""""""""""""""""
 function! <SID>DoxygenUndocumentFunc(blockTag)
+  call s:InitializeParameters()
   let l:search = "#ifdef " . a:blockTag
   " Save cursor position and go to the begining of the file
   mark d
@@ -466,6 +478,7 @@ function! <SID>DoxygenUndocumentFunc(blockTag)
   endwhile
 
   exec "normal `d"
+  call s:RestoreParameters()
 endfunction
 
 
@@ -480,7 +493,8 @@ function! <SID>DoxygenBlockFunc()
   exec "normal ".l:insertionMode.s:interCommentTag.g:DoxygenToolkit_blockTag
   mark d
   exec "normal o".s:interCommentTag."@{ ".s:endCommentTag
-  exec "normal o".s:startCommentTag." @} ".s:endCommentTag
+  exec "normal o".strpart( s:startCommentTag, 0, 1 )
+  exec "normal A".strpart( s:startCommentTag, 1 )." @} ".s:endCommentTag
   exec "normal `d"
 
   call s:RestoreParameters()
@@ -505,7 +519,7 @@ function! <SID>DoxygenCommentFunc()
     let l:templateParameterPattern = "<[^<>]*>"
 
     let l:classPattern     = '\<class\>[[:blank:]]\+\zs'.l:someNameWithNamespacePattern.'\ze.*\%('.l:endDocPattern.'\)'
-    let l:structPattern    = '\<struct\>[[:blank:]]\+\zs'.l:someNameWithNamespacePattern.'\ze.*\%('.l:endDocPattern.'\)'
+    let l:structPattern    = '\<struct\>[[:blank:]]\+\zs'.l:someNameWithNamespacePattern.'\ze[^(),]*\%('.l:endDocPattern.'\)'
     let l:enumPattern      = '\<enum\>\%(\%([[:blank:]]\+\zs'.l:someNamePattern.'\ze[[:blank:]]*\)\|\%(\zs\ze[[:blank:]]*\)\)\%('.l:endDocPattern.'\)'
     let l:namespacePattern = '\<namespace\>[[:blank:]]\+\zs'.l:someNamePattern.'\ze[[:blank:]]*\%('.l:endDocPattern.'\)'
 
@@ -570,17 +584,15 @@ function! <SID>DoxygenCommentFunc()
     if( match( l:lineBuffer, l:emptyLinePattern ) != -1 )
       " Fall here when only comments have been found.
       call s:WarnMsg( "Nothing to document here!" )
-      exec "normal `d" 
-      return
     else
       call s:WarnMsg( "Cannot reach end of function/class/... declaration!" )
-      exec "normal `d" 
-      return
     endif
+    exec "normal `d" 
+    return
   endif
 
   " Trim the buffer
-  let l:lineBuffer = substitute( l:lineBuffer, "^[[:blank:]]*\|[[:blank:]]$", "", "g" )
+  let l:lineBuffer = substitute( l:lineBuffer, "^[[:blank:]]*\|[[:blank:]]*$", "", "g" )
 
   " Remove any template parameter.
   if( s:CheckFileType() == "cpp" )
@@ -626,18 +638,18 @@ function! <SID>DoxygenCommentFunc()
         let l:doc.type = 'function'
         call s:ParseFunctionParameters( l:lineBuffer, l:doc )
       endif
-
-      " This is an attribute for Python
+ 
+    " This is an attribute for Python
     else
       let l:doc.type = 'attribute'
     endif
   endif
 
   " Remove the function/class/... name when it is not necessary
-  if( ( key == "class" && g:DoxygenToolkit_briefTag_className != "yes" ) || ( key == "struct" && g:DoxygenToolkit_briefTag_structName != "yes" ) || ( key == "enum" && g:DoxygenToolkit_briefTag_enumName != "yes" ) || ( key == "namespace" && g:DoxygenToolkit_briefTag_namespaceName != "yes" ) || ( l:doc.type == "function" && g:DoxygenToolkit_briefTag_funcName != "yes" ) )
+  if( ( l:doc.type == "class" && g:DoxygenToolkit_briefTag_className != "yes" ) || ( l:doc.type == "struct" && g:DoxygenToolkit_briefTag_structName != "yes" ) || ( l:doc.type == "enum" && g:DoxygenToolkit_briefTag_enumName != "yes" ) || ( l:doc.type == "namespace" && g:DoxygenToolkit_briefTag_namespaceName != "yes" ) || ( l:doc.type == "function" && g:DoxygenToolkit_briefTag_funcName != "yes" ) )
     let l:doc.name = "None"
 
-    " Remove namespace from the name of the class/function...
+  " Remove namespace from the name of the class/function...
   elseif( s:CheckFileType() == "cpp" )
     let l:doc.name = substitute( l:doc.name, '\%('.l:someNamePattern.'::\)', '', 'g' )
   endif
@@ -653,14 +665,17 @@ function! <SID>DoxygenCommentFunc()
   " Header
   exec "normal `d" 
   if( g:DoxygenToolkit_blockHeader != "" )
-    exec "normal O".s:startCommentBlock.g:DoxygenToolkit_blockHeader.s:endCommentBlock
+    exec "normal O".strpart( s:startCommentBlock, 0, 1 )
+    exec "normal A".strpart( s:startCommentBlock, 1 ).g:DoxygenToolkit_blockHeader.s:endCommentBlock
     exec "normal `d" 
   endif
-
+ 
   " Brief
   if( g:DoxygenToolkit_compactOneLineDoc =~ "yes" && l:doc.returns != "yes" && len( l:doc.params ) == 0 )
     let s:compactOneLineDoc = "yes"
-    exec "normal O".s:startCommentTag.g:DoxygenToolkit_briefTag_pre.g:DoxygenToolkit_briefTag_post
+    "exec "normal O".s:startCommentTag.g:DoxygenToolkit_briefTag_pre.g:DoxygenToolkit_briefTag_post
+    exec "normal O".strpart( s:startCommentTag, 0, 1 )
+    exec "normal A".strpart( s:startCommentTag, 1 ).g:DoxygenToolkit_briefTag_pre.g:DoxygenToolkit_briefTag_post
   else
     let s:compactOneLineDoc = "no"
     let l:insertionMode = s:StartDocumentationBlock()
@@ -707,7 +722,8 @@ function! <SID>DoxygenCommentFunc()
 
   " Footer
   if ( g:DoxygenToolkit_blockFooter != "" )
-    exec "normal o".s:startCommentBlock.g:DoxygenToolkit_blockFooter.s:endCommentBlock
+    exec "normal o".strpart( s:startCommentBlock, 0, 1 )
+    exec "normal A".strpart( s:startCommentBlock, 1 ).g:DoxygenToolkit_blockFooter.s:endCommentBlock
   endif
   exec "normal `d"
 
@@ -742,7 +758,9 @@ endfunction
 function! s:StartDocumentationBlock()
   " For C++ documentation format we do not need first empty line
   if( s:startCommentTag != s:interCommentTag )
-    exec "normal O".s:startCommentTag
+    "exec "normal O".s:startCommentTag
+    exec "normal O".strpart( s:startCommentTag, 0, 1 )
+    exec "normal A".strpart( s:startCommentTag, 1 )
     let l:insertionMode = "o"
   else
     let l:insertionMode = "O"
@@ -793,7 +811,7 @@ endfunction
 " - Functions which return pointer to function are not supported.
 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
 function! s:ParseFunctionParameters( lineBuffer, doc )
-  "  call s:WarnMsg( 'IN__'.a:lineBuffer )
+  "call s:WarnMsg( 'IN__'.a:lineBuffer )
   let l:paramPosition = matchend( a:lineBuffer, 'operator[[:blank:]]*([[:blank:]]*)' )
   if ( l:paramPosition == -1 )
     let l:paramPosition = stridx( a:lineBuffer, '(' )
@@ -803,7 +821,7 @@ function! s:ParseFunctionParameters( lineBuffer, doc )
 
 
   " (cpp only) First deal with function name and returned value.
-  " Function name has alredy been retrieved for Python and we need to parse
+  " Function name has already been retrieved for Python and we need to parse
   " all the function definition to know whether a value is returned or not.
   if( s:CheckFileType() == "cpp" )
     let l:functionBuffer = strpart( a:lineBuffer, 0, l:paramPosition )
@@ -890,7 +908,7 @@ function! s:ParseParameter( param )
   let l:firstIndex = stridx( a:param, '(' )
 
   if( l:firstIndex == -1 )
-    let l:paramName =  split( a:param, '[[:blank:]*]' )[-1]
+    let l:paramName =  split( a:param, '[[:blank:]*&]' )[-1]
   else
     if( l:firstIndex != 0 )
       let l:startIndex = 0
@@ -949,6 +967,9 @@ function! s:InitializeParameters()
   let &comments        = ""
   let s:cinoptionsBackup = &cinoptions
   let &cinoptions        = g:DoxygenToolkit_cinoptions
+  " Compatibility with c/c++ IDE plugin
+  let s:timeoutlenBackup = &timeoutlen
+  let &timeoutlen = 0
 endfunction
 
 
@@ -959,6 +980,8 @@ function! s:RestoreParameters()
   " Restore standard comment expension and indentation
   let &comments = s:commentsBackup
   let &cinoptions = s:cinoptionsBackup
+  " Compatibility with c/c++ IDE plugin
+  let &timeoutlen = s:timeoutlenBackup
 endfunction
 
 

-- 
vim-scripts packaging



More information about the pkg-vim-maintainers mailing list