Ë |í¼e:ãóH—dZddlZddlmZddlmZdgZd„ZGd„d«Zy)z¾ pygments.formatter ~~~~~~~~~~~~~~~~~~ Base formatter class. :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. éN)Ú get_bool_opt)Úget_style_by_nameÚ Formattercó<—t|t«r t|«S|S)N)Ú isinstanceÚstrr)Ústyles ú4/usr/lib/python3/dist-packages/pygments/formatter.pyÚ _lookup_styler s€Ü%œÔÜ  Ó'Ð'Ø €Lócó4—eZdZdZdZgZgZdZd„Zdd„Z d„Z y)ra Converts a token stream to text. Formatters should have attributes to help selecting them. These are similar to the corresponding :class:`~pygments.lexer.Lexer` attributes. .. autoattribute:: name :no-value: .. autoattribute:: aliases :no-value: .. autoattribute:: filenames :no-value: You can pass options as keyword arguments to the constructor. All formatters accept these basic options: ``style`` The style to use, can be a string or a Style subclass (default: "default"). Not used by e.g. the TerminalFormatter. ``full`` Tells the formatter to output a "full" document, i.e. a complete self-contained document. This doesn't have any effect for some formatters (default: false). ``title`` If ``full`` is true, the title that should be used to caption the document (default: ''). ``encoding`` If given, must be an encoding name. This will be used to convert the Unicode token strings to byte strings in the output. If it is "" or None, Unicode strings will be written to the output file, which most file-like objects do not support (default: None). ``outencoding`` Overrides ``encoding`` if given. NTc óL—t|jdd««|_t|dd«|_|jdd«|_|jdd«xsd|_|j d vrd |_|jd «xs |j |_||_y) zÒ As with lexers, this constructor takes arbitrary optional arguments, and if you override it, you should first process your own options, then call the base class implementation. r ÚdefaultÚfullFÚtitleÚÚencodingN)ÚguessÚchardetzutf-8Ú outencoding)r Úgetr rrrrÚoptions)Úselfrs r Ú__init__zFormatter.__init__Ssˆ€ô # 7§;¡;¨w¸ Ó#BÓCˆŒ Ü  ¨&°%Ó8ˆŒ Ø—[‘[ ¨"Ó-ˆŒ ØŸ ™  J°Ó5Ò=¸ˆŒ Ø =‰=Ð0Ñ 0à#ˆDŒMØŸ ™  MÓ2ÒC°d·m±mˆŒ ؈ r có—y)a This method must return statements or declarations suitable to define the current style for subsequent highlighted text (e.g. CSS classes in the `HTMLFormatter`). The optional argument `arg` can be used to modify the generation and is formatter dependent (it is standardized because it can be given on the command line). This method is called by the ``-S`` :doc:`command-line option `, the `arg` is then given by the ``-a`` option. r©)rÚargs r Úget_style_defszFormatter.get_style_defscs€ðr cóŽ—|jr(tj|j«d|«}|j||«S)zç This method must format the tokens from the `tokensource` iterable and write the formatted version to the file object `outfile`. Formatter options can control how exactly the tokens are converted. é)rÚcodecsÚlookupÚformat_unencoded)rÚ tokensourceÚoutfiles r ÚformatzFormatter.formatrs<€ð =Š=à5”f—m‘m D§M¡MÓ2°1Ñ5°gÓ>ˆGØ×$Ñ$ [°'Ó:Ð:r )r) Ú__name__Ú __module__Ú __qualname__Ú__doc__ÚnameÚaliasesÚ filenamesÚ unicodeoutputrrr&rr r rrs3„ñ'ðT €Dð€Gð €Ið€Mòó ó ;r ) r*r!Ú pygments.utilrÚpygments.stylesrÚ__all__r rrr r úr2s-ðñóå&Ý-à ˆ-€ò÷ c;òc;r