pmacs3/mode_c.py

42 lines
1.7 KiB
Python

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"