Home | History | Annotate | Download | only in highlighters
      1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 # Use of this source code is governed by a BSD-style license that can be
      3 # found in the LICENSE file.
      4 
      5 import urllib
      6 import urllib2
      7 
      8 class HiliteMeHighlighter(object):
      9   """Highlighter that calls the http://hilite.me API to highlight code.
     10   """
     11   def GetCSS(self, style):
     12     return ''
     13 
     14   def GetCodeElement(self, code, style):
     15     # Call hilite.me API to do syntax highlighting
     16     return urllib2.urlopen('http://hilite.me/api',
     17         urllib.urlencode([
     18             ('code', code),
     19             ('lexer', 'cpp'),
     20             ('style', style),
     21             ('linenos', 1)])
     22     ).read()
     23 
     24   def DisplayName(self):
     25     return 'hilite.me (slow, requires internet)'
     26 
     27   def GetStyles(self):
     28     return ['monokai', 'manni', 'perldoc', 'borland', 'colorful', 'default',
     29         'murphy', 'vs', 'trac', 'tango', 'fruity', 'autumn', 'bw', 'emacs',
     30         'vim', 'pastie', 'friendly', 'native']
     31