ó
‹²,]c           @   s‰   d  Z  d d l m Z d d l m Z d d l m Z m Z m Z m	 Z	 m
 Z
 m Z m Z d d l m Z d „  Z d „  Z d „  Z d	 S(
   s   
Style for IPython Console
iÿÿÿÿ(   t   get_color_scheme(   t   Style(   t   Namet   Keywordt   Commentt   Stringt   Numbert   Punctuationt   Operator(   t
   dark_colorc         C   sÉ   d „  } d „  } t  |  ƒ }  |  d \ } } } | } t | ƒ rR d } d } n d } d } |  d }	 d }
 d	 } d	 } | } |	 } d
 } | j | |	 |
 | | | | | | | | ƒ } | t | ƒ f S(   s  Returns a QSS stylesheet with Spyder color scheme settings.

    The stylesheet can contain classes for:
        Qt: QPlainTextEdit, QFrame, QWidget, etc
       Pygments: .c, .k, .o, etc. (see PygmentsHighlighter)
        IPython: .error, .in-prompt, .out-prompt, etc
    c         S   s   |  r
 d Sd Sd  S(   Nt   boldt   normal(    (   t   is_bold(    (    s9   lib/python2.7/site-packages/spyder/utils/ipython/style.pyt   give_font_weight   s    c         S   s   |  r
 d Sd Sd  S(   Nt   italicR   (    (   t	   is_italic(    (    s9   lib/python2.7/site-packages/spyder/utils/ipython/style.pyt   give_font_style%   s    R   t   navyt   darkredt   limet   redt
   backgroundR
   s  QPlainTextEdit, QTextEdit, ControlWidget {{
                                          color: {} ;
                                          background-color: {};
                                         }}
              .error {{ color: {}; }}
              .in-prompt {{ color: {}; }}
              .in-prompt-number {{ color: {}; font-weight: {}; }}
              .out-prompt {{ color: {}; }}
              .out-prompt-number {{ color: {}; font-weight: {}; }}
              .inverted {{ color: {}; background-color: {}; }}
              (   R    R	   t   format(   t   color_schemeR   R   t   fon_ct   fon_fwt   fon_fst
   font_colort   in_prompt_colort   out_prompt_colort   background_colort   error_colort   in_prompt_number_font_weightt   out_prompt_number_font_weightt   inverted_background_colort   inverted_font_colort   sheett   sheet_formatted(    (    s9   lib/python2.7/site-packages/spyder/utils/ipython/style.pyt   create_qss_style   s4    				
	c   =      C   s  d „  } d „  } t  |  ƒ } | d \ } } } | } | | ƒ } | | ƒ }	 | d \ }
 } } |
 } | | ƒ } | | ƒ } | d \ } } } | } | | ƒ } | | ƒ } | d \ } } } | } | | ƒ } | | ƒ } | d \ } } } | } | | ƒ }  | | ƒ }! | d \ }" }# }$ |" }% | |# ƒ }& | |$ ƒ }' | d	 \ }( }) }* |( }+ | |) ƒ }, | |* ƒ }- | d
 \ }. }/ }0 |. }1 | |/ ƒ }2 | |0 ƒ }3 |	 d | d | }4 |- d |, d |+ }5 | d | d | }6 |3 d |2 d |1 }7 | d | d | }8 |' d |& d |% }9 | d | d | }: |! d |  d | }; i |4 j ƒ  t 6|5 j ƒ  t j 6|5 j ƒ  t j 6|6 j ƒ  t j 6|7 j ƒ  t j j 6|8 j ƒ  t 6|6 j ƒ  t j 6|9 j ƒ  t	 6|: j ƒ  t
 6|; j ƒ  t 6|4 j ƒ  t 6|8 j ƒ  t j 6}< |< S(   sX   
    Create a dictionary that saves the given color scheme as a
    Pygments style.
    c         S   s   |  r
 d Sd Sd  S(   NR
   t    (    (   R   (    (    s9   lib/python2.7/site-packages/spyder/utils/ipython/style.pyR   Y   s    c         S   s   |  r
 d Sd Sd  S(   NR   R'   (    (   R   (    (    s9   lib/python2.7/site-packages/spyder/utils/ipython/style.pyR   _   s    R   t   keywordt   builtint   stringt   numbert   commentt
   definitiont   instancet    (   R    t   stripR   t   Classt   Functiont   Builtint   PseudoR   t   TypeR   R   R   R   R   t   Word(=   t   color_scheme_nameR   R   R   R   R   R   R   t   font_font_weightt   font_font_stylet   key_ct   key_fwt   key_fst   keyword_colort   keyword_font_weightt   keyword_font_stylet   bui_ct   bui_fwt   bui_fst   builtin_colort   builtin_font_weightt   builtin_font_stylet   str_ct   str_fwt   str_fst   string_colort   string_font_weightt   string_font_stylet   num_ct   num_fwt   num_fst   number_colort   number_font_weightt   number_font_stylet   com_ct   com_fwt   com_fst   comment_colort   comment_font_weightt   comment_font_stylet   def_ct   def_fwt   def_fst   definition_colort   definition_font_weightt   definition_font_stylet   ins_ct   ins_fwt   ins_fst   instance_colort   instance_font_weightt   instance_font_stylet
   font_tokent   definition_tokent   builtin_tokent   instance_tokent   keyword_tokent   comment_tokent   string_tokent   number_tokent   syntax_style_dic(    (    s9   lib/python2.7/site-packages/spyder/utils/ipython/style.pyt   create_pygments_dictS   s|    		c            s    d t  f ‡  f d †  ƒ  Y} | S(   s:   Create a Pygments Style class with the given color scheme.t
   StyleClassc              s   e  Z d  Z e ˆ  ƒ Z RS(   R'   (   t   __name__t
   __module__t   default_styleRm   t   styles(    (   R7   (    s9   lib/python2.7/site-packages/spyder/utils/ipython/style.pyRn   «   s   (   R   (   R7   Rn   (    (   R7   s9   lib/python2.7/site-packages/spyder/utils/ipython/style.pyt   create_style_class¨   s    N(   t   __doc__t   spyder.config.guiR    t   pygments.styleR   t   pygments.tokenR   R   R   R   R   R   R   t   qtconsole.stylesR	   R&   Rm   Rs   (    (    (    s9   lib/python2.7/site-packages/spyder/utils/ipython/style.pyt   <module>	   s   4	=	U