# © Copyright IBM Corp. 1998, 2007. All Rights Reserved.

# C++ document parser installation settings.

# parse after every key on bidi machines
parseAfterEveryKey = bidi

# language editing options (on/off)
tokenHighlight = on
errorMessages = on
autoIndent = on

# "proto" (Ctrl+R) keyword expansions
proto.case =   case ?:\n\n   break;
proto.do =     do {\n   ?\n   } while ( );
proto.doc =    /*\n * ?\n */
proto.for =    for (?; ; ) {\n\n   }
proto.if =     if (?) {\n\n   }\nelse {\n\n   }
proto.main =   main(int argc, char* argv[], char* envp[])\n{\n   ?\n}
proto.switch = switch (?) {\n   case /* */:\n\n      break;\n   default:\n\n   }
proto.try =    try {\n   ?\n   }\ncatch(...) {\n   }
proto.while =  while (?) {\n\n   }

# style names
styleName._ = Layout blanks
styleName.k = Keyword
styleName.x = Extension keyword
styleName.i = Identifier
styleName.n = Integer/character literal
styleName.l = Floating-point literal
styleName.q = String literal
styleName.o = Operator
styleName.p = Punctuation
styleName.t = Continuation character
styleName.c = Comment
styleName.f = C library function
styleName.b = Brace
styleName.h = CPP directive
styleName.e = Error

# comment task tags
taskTags = TODO

# word navigation
wordBreaks = caseChange defineChars nonWordChars styleChange

# sample for parser-styles preferences
sample = // Sample C/C++ document.\
       \n#define aMacro(x) \\\
       \n        { x = "abc"; }\
       \nshort myMain(char* a, int x) {\
       \n   LONG j = x + 0.32 - 5;\
       \n   if (j) // TODO verify this\
       \n      return strcpy(a, "hi);\
       \n\
       \n   EXEC SQL INCLUDE sqlca;\
       \n}