You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			145 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Python
		
	
			
		
		
	
	
			145 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Python
		
	
| """
 | |
|     pygments.styles.solarized
 | |
|     ~~~~~~~~~~~~~~~~~~~~~~~~~
 | |
| 
 | |
|     Solarized by Camil Staps
 | |
| 
 | |
|     A Pygments style for the Solarized themes (licensed under MIT).
 | |
|     See: https://github.com/altercation/solarized
 | |
| 
 | |
|     :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
 | |
|     :license: BSD, see LICENSE for details.
 | |
| """
 | |
| 
 | |
| from pygments.style import Style
 | |
| from pygments.token import Comment, Error, Generic, Keyword, Name, Number, \
 | |
|     Operator, String, Token
 | |
| 
 | |
| 
 | |
| __all__ = ['SolarizedLightStyle', 'SolarizedDarkStyle']
 | |
| 
 | |
| 
 | |
| def make_style(colors):
 | |
|     return {
 | |
|         Token:               colors['base0'],
 | |
| 
 | |
|         Comment:             'italic ' + colors['base01'],
 | |
|         Comment.Hashbang:    colors['base01'],
 | |
|         Comment.Multiline:   colors['base01'],
 | |
|         Comment.Preproc:     'noitalic ' + colors['magenta'],
 | |
|         Comment.PreprocFile: 'noitalic ' + colors['base01'],
 | |
| 
 | |
|         Keyword:             colors['green'],
 | |
|         Keyword.Constant:    colors['cyan'],
 | |
|         Keyword.Declaration: colors['cyan'],
 | |
|         Keyword.Namespace:   colors['orange'],
 | |
|         Keyword.Type:        colors['yellow'],
 | |
| 
 | |
|         Operator:            colors['base01'],
 | |
|         Operator.Word:       colors['green'],
 | |
| 
 | |
|         Name.Builtin:        colors['blue'],
 | |
|         Name.Builtin.Pseudo: colors['blue'],
 | |
|         Name.Class:          colors['blue'],
 | |
|         Name.Constant:       colors['blue'],
 | |
|         Name.Decorator:      colors['blue'],
 | |
|         Name.Entity:         colors['blue'],
 | |
|         Name.Exception:      colors['blue'],
 | |
|         Name.Function:       colors['blue'],
 | |
|         Name.Function.Magic: colors['blue'],
 | |
|         Name.Label:          colors['blue'],
 | |
|         Name.Namespace:      colors['blue'],
 | |
|         Name.Tag:            colors['blue'],
 | |
|         Name.Variable:       colors['blue'],
 | |
|         Name.Variable.Global:colors['blue'],
 | |
|         Name.Variable.Magic: colors['blue'],
 | |
| 
 | |
|         String:              colors['cyan'],
 | |
|         String.Doc:          colors['base01'],
 | |
|         String.Regex:        colors['orange'],
 | |
| 
 | |
|         Number:              colors['cyan'],
 | |
| 
 | |
|         Generic:             colors['base0'],
 | |
|         Generic.Deleted:     colors['red'],
 | |
|         Generic.Emph:        'italic',
 | |
|         Generic.Error:       colors['red'],
 | |
|         Generic.Heading:     'bold',
 | |
|         Generic.Subheading:  'underline',
 | |
|         Generic.Inserted:    colors['green'],
 | |
|         Generic.Output:      colors['base0'],
 | |
|         Generic.Prompt:      'bold ' + colors['blue'],
 | |
|         Generic.Strong:      'bold',
 | |
|         Generic.EmphStrong:  'bold italic',
 | |
|         Generic.Traceback:   colors['blue'],
 | |
| 
 | |
|         Error:               'bg:' + colors['red'],
 | |
|     }
 | |
| 
 | |
| 
 | |
| DARK_COLORS = {
 | |
|     'base03':  '#002b36',
 | |
|     'base02':  '#073642',
 | |
|     'base01':  '#586e75',
 | |
|     'base00':  '#657b83',
 | |
|     'base0':   '#839496',
 | |
|     'base1':   '#93a1a1',
 | |
|     'base2':   '#eee8d5',
 | |
|     'base3':   '#fdf6e3',
 | |
|     'yellow':  '#b58900',
 | |
|     'orange':  '#cb4b16',
 | |
|     'red':     '#dc322f',
 | |
|     'magenta': '#d33682',
 | |
|     'violet':  '#6c71c4',
 | |
|     'blue':    '#268bd2',
 | |
|     'cyan':    '#2aa198',
 | |
|     'green':   '#859900',
 | |
| }
 | |
| 
 | |
| LIGHT_COLORS = {
 | |
|     'base3':   '#002b36',
 | |
|     'base2':   '#073642',
 | |
|     'base1':   '#586e75',
 | |
|     'base0':   '#657b83',
 | |
|     'base00':  '#839496',
 | |
|     'base01':  '#93a1a1',
 | |
|     'base02':  '#eee8d5',
 | |
|     'base03':  '#fdf6e3',
 | |
|     'yellow':  '#b58900',
 | |
|     'orange':  '#cb4b16',
 | |
|     'red':     '#dc322f',
 | |
|     'magenta': '#d33682',
 | |
|     'violet':  '#6c71c4',
 | |
|     'blue':    '#268bd2',
 | |
|     'cyan':    '#2aa198',
 | |
|     'green':   '#859900',
 | |
| }
 | |
| 
 | |
| 
 | |
| class SolarizedDarkStyle(Style):
 | |
|     """
 | |
|     The solarized style, dark.
 | |
|     """
 | |
| 
 | |
|     name = 'solarized-dark'
 | |
|     
 | |
|     styles = make_style(DARK_COLORS)
 | |
|     background_color = DARK_COLORS['base03']
 | |
|     highlight_color = DARK_COLORS['base02']
 | |
|     line_number_color = DARK_COLORS['base01']
 | |
|     line_number_background_color = DARK_COLORS['base02']
 | |
| 
 | |
| 
 | |
| class SolarizedLightStyle(SolarizedDarkStyle):
 | |
|     """
 | |
|     The solarized style, light.
 | |
|     """
 | |
| 
 | |
|     name = 'solarized-light'
 | |
|     
 | |
|     styles = make_style(LIGHT_COLORS)
 | |
|     background_color = LIGHT_COLORS['base03']
 | |
|     highlight_color = LIGHT_COLORS['base02']
 | |
|     line_number_color = LIGHT_COLORS['base01']
 | |
|     line_number_background_color = LIGHT_COLORS['base02']
 |