From d0ce08a980852d0c60959453e0fcf2828a8a5ae6 Mon Sep 17 00:00:00 2001 From: Pavlo Solntsev Date: Sun, 26 Feb 2017 13:33:55 -0600 Subject: [PATCH] Doxygen snippets were added for C/C++ files (#829) * Doxygen snippets were added for C/C++ files * Doxygen snippets were added for C/C++ files --- snippets/c.snippets | 109 ++++++++++++++++++++++++++++++++++++++++-- snippets/cpp.snippets | 57 ++++++++++++++++++++-- 2 files changed, 159 insertions(+), 7 deletions(-) diff --git a/snippets/c.snippets b/snippets/c.snippets index ea744d54..6e8fb0a5 100644 --- a/snippets/c.snippets +++ b/snippets/c.snippets @@ -130,6 +130,84 @@ snippet fun { ${4} } +# function definition with zero parameters +snippet fun0 + ${1:void} ${2:function_name}() + { + ${3} + } +# function definition with Doxygen documentation +snippet dfun0 + /*! \brief ${1:Brief function description here} + * + * ${2:Detailed description of the function} + * + * \return ${3:Return parameter description} + */ + ${4:void} ${5:function_name}() + { + ${6} + } +# function definition with one parameter +snippet fun1 + ${1:void} ${2:function_name}(${3:Type} ${4:Parameter}) + { + ${5} + } +# function definition with one parameter with Doxygen documentation +snippet dfun1 + /*! \brief ${1:Brief function description here} + * + * ${2:Detailed description of the function} + * + * \param $3 ${4:Parameter description} + * \return ${5:Return parameter description} + */ + ${6:void} ${7:function_name}(${8:Type} ${3:Parameter}) + { + ${9} + } +# function definition with two parameters +snippet fun2 + ${1:void} ${2:function_name}(${3:Type} ${4:Parameter}, ${5:Type} ${6:Parameter}) + { + ${7} + } +# function definition with two parameters with Doxygen documentation +snippet dfun2 + /*! \brief ${1:Brief function description here} + * + * ${2:Detailed description of the function} + * + * \param $3 ${4:Parameter description} + * \param $5 ${6:Parameter description} + * \return ${7:Return parameter description} + */ + ${8:void} ${9:function_name}(${10:Type} ${3:Parameter}, ${11:Type} ${5:Parameter}) + { + ${12} + } +# function definition with two parameters +snippet fun3 + ${1:void} ${2:function_name}(${3:Type} ${4:Parameter}, ${5:Type} ${6:Parameter}, ${7:Type} ${8:Parameter}) + { + ${9} + } +# function definition with two parameters with Doxygen documentation +snippet dfun3 + /*! \brief ${1:Brief function description here} + * + * ${2:Detailed description of the function} + * + * \param $3 ${4:Parameter description} + * \param $5 ${6:Parameter description} + * \param $7 ${8:Parameter description} + * \return ${9:Return parameter description} + */ + ${10:void} ${11:function_name}(${12:Type} ${3:Parameter}, ${13:Type} ${5:Parameter}, ${14:Type} ${7:Parameter}) + { + ${15} + } # function declaration snippet fund ${1:void} ${2:function_name}(${3}); @@ -140,21 +218,39 @@ snippet td typedef ${1:int} ${2:MyCustomType}; # struct snippet st + /*! \struct $1 + * \brief ${3:Brief struct description} + * + * ${4:Detailed description} + */ struct ${1:`vim_snippets#Filename('$1_t', 'name')`} { - ${2:/* data */} - }${3: /* optional variable list */}; + ${2:Data} /*!< ${4:Description} */ + }${5: /* optional variable list */}; # typedef struct snippet tds + /*! \struct $2 + * \brief ${5:Brief struct description} + * + * ${6:Detailed description} + */ typedef struct ${2:_$1 }{ - ${3:/* data */} + m_${3:Data} /*!< ${4:Description} */ } ${1:`vim_snippets#Filename('$1_t', 'name')`}; snippet enum + /*! \enum $1 + * + * ${2:Detailed description} + */ enum ${1:name} { ${0} }; # typedef enum snippet tde + /*! \enum $2 + * + * ${4:Detailed description} + */ typedef enum { - ${1:/* data */} + ${1:Data} /*!< ${3:Description} */ } ${2:foo}; ## ## Input/Output @@ -228,6 +324,11 @@ snippet getopt } } ## +# TODO section +snippet todo + /*! TODO: ${1:Todo description here} + * \todo $1 + */ ## Miscellaneous # This is kind of convenient snippet . diff --git a/snippets/cpp.snippets b/snippets/cpp.snippets index 42c37341..7a55b95e 100644 --- a/snippets/cpp.snippets +++ b/snippets/cpp.snippets @@ -78,20 +78,61 @@ snippet mu ## Class # class snippet cl + /*! \class $1 + * \brief ${3:Brief class description} + * + * ${4:Detailed description} + */ class ${1:`vim_snippets#Filename('$1', 'name')`} { public: $1(${2}); - ~$1(); + virtual ~$1(); - private: - ${0:/* data */} + protected: + m_${5}; /*!< ${6:Member description} */ }; # member function implementation snippet mfun ${4:void} ${1:`vim_snippets#Filename('$1', 'ClassName')`}::${2:memberFunction}(${3}) { ${0} } +# member function implementation without parameters +snippet dmfun0 + /*! \brief ${4:Brief function description here} + * + * ${5:Detailed description} + * + * \return ${6:Return parameter description} + */ + ${3:void} ${1:`vim_snippets#Filename('$1', 'ClassName')`}::${2:memberFunction}() { + ${0} + } +# member function implementation with one parameter +snippet dmfun1 + /*! \brief ${6:Brief function description here} + * + * ${7:Detailed description} + * + * \param $4 ${8:Parameter description} + * \return ${9:Return parameter description} + */ + ${5:void} ${1:`vim_snippets#Filename('$1', 'ClassName')`}::${2:memberFunction}(${3:Type} ${4:Parameter}) { + ${0} + } +# member function implementation with two parameter +snippet dmfun2 + /*! \brief ${8:Brief function description here} + * + * ${9:Detailed description} + * + * \param $4 ${10:Parameter description} + * \param $6 ${11:Parameter description} + * \return ${12:Return parameter description} + */ + ${7:void} ${1:`vim_snippets#Filename('$1', 'ClassName')`}::${2:memberFunction}(${3:Type} ${4:Parameter},${5:Type} ${6:Parameter}) { + ${0} + } # namespace snippet ns namespace ${1:`vim_snippets#Filename('', 'my')`} { @@ -152,3 +193,13 @@ snippet lld [${1}](${2}){ ${3} }; +# snippets exception +snippet try + try { + + }catch(${1}) { + + } + + +