import sets, sys import color, mode, lex, lex_c, method, tab_c class C(mode.Fundamental): def __init__(self, w): mode.Fundamental.__init__(self, w) self.tag_matching = True self.grammar = lex_c.CGrammar() self.lexer = lex.Lexer(self.grammar) self.add_bindings('close-paren', (')',)) self.add_bindings('close-brace', ('}',)) self.add_bindings('close-bracket', (']',)) self.default_color = color.build('default', 'default') self.colors = { 'control': color.build('blue', 'default', 'bold'), 'keyword': color.build('cyan', 'default', 'bold'), 'macro1': color.build('blue', 'default', 'bold'), 'macro2': color.build('blue', 'default', 'bold'), 'constant': color.build('magenta', 'default', 'bold'), 'header': color.build('green', 'default', 'bold'), 'label': color.build('magenta', 'default', 'bold'), 'char': color.build('green', 'default'), 'builtin': color.build('magenta', 'default', 'bold'), 'string1': color.build('green', 'default'), 'c comment': color.build('red', 'default'), 'c++ comment': color.build('red', 'default'), 'macro comment': color.build('red', 'default'), 'function name': color.build('blue', 'default'), 'integer': color.build('green', 'default'), 'float': color.build('green', 'default'), 'bizzaro': color.build('magenta', 'green'), } self.tabber = tab_c.CTabber(self) def name(self): return "C"