home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / VSCPPv7.zip / VACPP / IBMCPP / macros / CODE / CMVS.LXL < prev    next >
Text File  |  1995-05-08  |  5KB  |  145 lines

  1. /* CMVS.LXL - IBM LPEX language-sensitive editor profile for MVS C/370. */
  2. TRACE OFF
  3.  
  4. /* default 370 MVS profile */
  5. 'MACRO DFTMVS.LXL'
  6.  
  7. /* C document */
  8. 'SET DOCTYPE C'
  9.  
  10. /* C classes - DO NOT MODIFY!! */
  11. 'SET CLASSES CODE SPACE ',
  12. 'FWDLINK BWDLINK SEMICOLON FUNCTION BRACE ERROR COMMENT CONTROL'
  13.  
  14. /* create our own menu items */
  15. MENU.1  = "~Options.Automatic_~indenting..."
  16. MENU.2  = "~Options.~Language_editing."
  17. MENU.3  = "~Options.~Language_editing.~Token_highlighting"
  18. MENU.4  = "~Options.~Language_editing.Automatic_~indenting"
  19. MENU.5  = "~Actions." || 'SEPARATOR'
  20. MENU.6  = "~Actions.C~ompile."
  21. MENU.7  = "~Actions.C~ompile.~Prompt..."
  22. MENU.8  = "~Actions.C~ompile.~No_prompt" || '\tCtrl+C'
  23. MENU.9  = "~Actions.~Debug" || '\tCtrl+D'
  24. MENU.10 = "~View." || 'SEPARATOR'
  25. MENU.11 = "~View.F~unctions"
  26. MENU.12 = "~View.~Outline_logic"
  27. MENU.13 = "~View.~Errors"
  28. MENU.14 = "~Help.C/370_~help"
  29. MENU.15 = "~Options.~Language_editing.~Lexical_errors"
  30. MENUITEMS = 15
  31.  
  32. MENUCMD.   = ''
  33. MENUCMD.1  = '2 EVFEC370 AIDLG'
  34. MENUCMD.2  = '7'
  35. MENUCMD.3  = 'EVFEC370 TOKOPT'
  36. MENUCMD.4  = 'EVFEC370 AIOPT'
  37. MENUCMD.5  = '1'
  38. MENUCMD.6  = '2'
  39. MENUCMD.7  = '0 SAVEALL PROMPT START EVFLCLES "%FILENAME%"'
  40. MENUCMD.8  = '1 SAVEALL PROMPT START EVFLCLES "%FILENAME%" /P N'
  41. MENUCMD.9  = '3 START CODEDT'
  42. MENUCMD.10 = '3'
  43. MENUCMD.11 = '4 ;SET INCLUDE FUNCTION;SET EXCLUDE'
  44. MENUCMD.12 = '5 ;SET INCLUDE FUNCTION BRACE CONTROL;SET EXCLUDE'
  45. MENUCMD.13 = '6 ;SET INCLUDE ERROR;SET EXCLUDE'
  46. MENUCMD.14 = '6 EVFEC370 LANGHELP'
  47. MENUCMD.15 = 'EVFEC370 LEOPT'
  48.  
  49. HELPID.   = 0
  50. HELPID.1  = 16093
  51. HELPID.2  = 16099
  52. HELPID.3  = 16100
  53. HELPID.4  = 16101
  54. HELPID.6  = 16084
  55. HELPID.7  = 16084
  56. HELPID.8  = 16084
  57. HELPID.9  = 16086
  58. HELPID.11 = 16057
  59. HELPID.12 = 16057
  60. HELPID.13 = 16057
  61. HELPID.14 = 16137
  62. HELPID.15 = 16108
  63.  
  64. GROUPS. = ''
  65. GROUPS.8  = 'REMOTE'
  66. GROUPS.11 = 'FUNCTION'
  67. GROUPS.12 = 'FUNCTION BRACE CONTROL'
  68. GROUPS.13 = 'ERROR'
  69.  
  70. DO I = 1 TO MENUITEMS
  71.    IF MENUCMD.I <> '' THEN DO
  72.       'SET ACTIONBAR.' || MENU.I MENUCMD.I
  73.       IF HELPID.I > 0 THEN
  74.          'SET HELP.' HELPID.I
  75.       IF GROUPS.I <> '' THEN
  76.          'SET GROUP.' GROUPS.I
  77.    END
  78. END
  79.  
  80. MENUIDSTR = ' ACTIONBARID.' || MENU.3  'INTO ID3',    /* menu IDs for options */
  81.             ' ACTIONBARID.' || MENU.4  'INTO ID4',
  82.             ' ACTIONBARID.' || MENU.14 'INTO ID14',
  83.             ' ACTIONBARID.' || MENU.15 'INTO ID15'
  84. 'EXTRACT' MENUIDSTR
  85. MENUIDSTR = ID3 ID4 ID14 ID15
  86.  
  87. DROP MENU. MENUCMD. HELPID. MENUITEMS I GROUPS.         /* free excess memory */
  88. DROP ID3 ID4 ID14 ID15
  89.  
  90. /* set up full & incremental parse */
  91. 'SET FULLPARSE  SUBMIT READ STOP "Tokenizing file" EVFEC370 ALL'
  92. 'SET PARSER     EVFEC370 PARSE'
  93.  
  94. /* auto-indent */
  95. 'SET SYNONYM.NEWLINE EVFEC370 AIEXIST'
  96. 'SET SYNONYM.SPLITLINE MULT ;SPLITJOIN SPLIT;EVFEC370 AIEXIST'
  97. 'SET SYNONYM.OPENLINE MULT ;INSERT;EVFEC370 AINEW'
  98. 'SET ACTION.ENTER SPLITLINE'
  99. 'SET ACTION.C-ENTER OPENLINE'
  100.  
  101. /* compile, debug accelerator keys */
  102. 'SET ACTION.C-C SAVEALL PROMPT START EVFLCLES "%FILENAME%" /P N'
  103. 'SET ACTION.C-D START CODEDT'
  104.  
  105. /* bracket matching */
  106. 'SET ACTION.C-M MATCH'
  107.  
  108. /* template insertion (first character = new line) */
  109. 'SET GLOBAL.PROTO.C.if /if (?) {//   }/else {//   }'
  110. 'SET GLOBAL.PROTO.C.for _for (?; ?; ?) {__   }'
  111. 'SET GLOBAL.PROTO.C.while /while (?) {//   }'
  112. 'SET GLOBAL.PROTO.C.do /do {/   ?/   } while (?);'
  113. 'SET GLOBAL.PROTO.C.switch /switch (?) {/   case ?://      break;/   default://   }'
  114. 'SET GLOBAL.PROTO.C.case /case ?://   break;'
  115. 'SET GLOBAL.PROTO.C.main /main(int argc, char *argv[], char *envp)/{/   ? /}'
  116. 'SET ACTION.C-R PROTO PROTO.C.'
  117.  
  118. /* initial fonts settings */
  119. 'SET FONT.!  BLACK/WHITE                  "Default style"'
  120. 'SET FONT._  BLACK/WHITE                  "Layout blanks"'
  121. 'SET FONT.K  BRIGHT BLUE/WHITE            "Keyword"'
  122. 'SET FONT.I  BLACK/WHITE                  "Identifier"'
  123. 'SET FONT.N  RED/WHITE                    "Constant"'
  124. 'SET FONT.Q  PINK/WHITE                   "String literal"'
  125. 'SET FONT.O  BLACK/WHITE                  "Operator"'
  126. 'SET FONT.P  BLACK/WHITE                  "Punctuator"'
  127. 'SET FONT.M  BLACK/WHITE                  "Continuation character"'
  128. 'SET FONT.C  CYAN/WHITE                   "Comment"'
  129. 'SET FONT.F  BLUE/WHITE                   "C library function"'
  130. 'SET FONT.B  BLACK/WHITE                  "Brace"'
  131. 'SET FONT.H  UNDERLINE BRIGHT BLUE/WHITE  "CPP directive"'
  132. 'SET FONT.E  REVERSE BRIGHT RED/WHITE     "Lexical error"'
  133. 'SET BASEFONT !'                          /* default style */
  134.  
  135. 'SET TABS 4 7 10 13 16 19 42 EVERY 3'
  136.  
  137. /* init LS component: INIT HELP <default help id> <help lib> <LSX> <menu ids> */
  138. 'EVFEC370 INIT HELP 37001 EVFECLSH.HLP CMVS.LSX' MENUIDSTR
  139. 'SET ACTION.F1 EVFEC370 HELP'
  140.  
  141. /* do a full parse */
  142. 'TRIGGER FULLPARSE'
  143.  
  144. 'MACRO NAVIG.LX'
  145.