PageRenderTime 58ms CodeModel.GetById 15ms RepoModel.GetById 1ms app.codeStats 0ms

/bundle/vim-xptemplate/ftplugin/c/c.xpt.vim

https://github.com/iverson4664/vim_plugins
Vim Script | 110 lines | 75 code | 34 blank | 1 comment | 0 complexity | ccf0994842567b977cbcd88ed10478d2 MD5 | raw file
Possible License(s): AGPL-1.0, Apache-2.0, AGPL-3.0, GPL-3.0
  1. XPTemplate priority=lang
  2. XPTvar $TRUE 1
  3. XPTvar $FALSE 0
  4. XPTvar $NULL NULL
  5. XPTvar $BRif ' '
  6. XPTvar $BRloop ' '
  7. XPTvar $BRstc ' '
  8. XPTvar $BRfun \n
  9. XPTvar $VOID_LINE /* void */;
  10. XPTvar $CURSOR_PH /* cursor */
  11. XPTinclude
  12. \ _common/common
  13. XPTvar $CL /*
  14. XPTvar $CM *
  15. XPTvar $CR */
  16. XPTinclude
  17. \ _comment/doubleSign
  18. XPTinclude
  19. \ _condition/c.like
  20. \ _func/c.like
  21. \ _loops/c.while.like
  22. \ _preprocessor/c.like
  23. \ _structures/c.like
  24. \ _printf/c.like
  25. XPTinclude
  26. \ _loops/for
  27. let s:f = g:XPTfuncs()
  28. XPT _printfElts hidden
  29. XSET elts|pre=Echo('')
  30. XSET elts=c_printf_elts( R( 'pattern' ), ',' )
  31. "`pattern^"`elts^
  32. XPT printf " printf\(...)
  33. printf(`$SParg^`:_printfElts:^`$SParg^)
  34. XPT sprintf " sprintf\(...)
  35. sprintf(`$SParg^`str^,`$SPop^`:_printfElts:^`$SParg^)
  36. XPT snprintf " snprintf\(...)
  37. snprintf(`$SParg^`str^,`$SPop^`size^,`$SPop^`:_printfElts:^`$SParg^)
  38. XPT fprintf " fprintf\(...)
  39. fprintf(`$SParg^`stream^,`$SPop^`:_printfElts:^`$SParg^)
  40. XPT memcpy " memcpy (..., ..., sizeof (...) ... )
  41. memcpy(`$SParg^`dest^,`$SPop^`source^,`$SPop^sizeof(`type^int^)`$SPop^*`$SPop^`count^`$SParg^)
  42. XPT memset " memset (..., ..., sizeof (...) ... )
  43. memset(`$SParg^`buffer^,`$SPop^`what^0^,`$SPop^sizeof(`$SParg^`type^int^`$SParg^)`$SPop^*`$SPop^`count^`$SParg^)
  44. XPT malloc " malloc ( ... );
  45. (`type^int^*)malloc(`$SParg^sizeof(`$SParg^`type^`$SParg^)`$SPop^*`$SPop^`count^`$SParg^)
  46. XPT assert " assert (.., msg)
  47. assert(`$SParg^`isTrue^,`$SPop^"`text^"`$SParg^)
  48. XPT fcomment
  49. /**
  50. * @author : `$author^ | `$email^
  51. * @description
  52. * `cursor^
  53. * @return {`int^} `desc^
  54. */
  55. XPT para syn=comment " comment parameter
  56. @param {`Object^} `name^ `desc^
  57. XPT filehead
  58. XSET cursor|pre=CURSOR
  59. /**-------------------------/// `sum^ \\\---------------------------
  60. *
  61. * <b>`function^</b>
  62. * @version : `1.0^
  63. * @since : `strftime("%Y %b %d")^
  64. *
  65. * @description :
  66. * `cursor^
  67. * @usage :
  68. *
  69. * @author : `$author^ | `$email^
  70. * @copyright `.com.cn^
  71. * @TODO :
  72. *
  73. *--------------------------\\\ `sum^ ///---------------------------*/
  74. ..XPT
  75. XPT call wraponly=param " ..( .. )
  76. `name^(`$SParg^`param^`$SParg^)