�
|�e� � �H � d Z ddlZddlmZ ddlmZmZ dgZ G d� de� Zy)z�
pygments.formatters.groff
~~~~~~~~~~~~~~~~~~~~~~~~~
Formatter for groff output.
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� N)� Formatter)�get_bool_opt�get_int_opt�GroffFormatterc �J � e Zd ZdZdZg d�Zg Zd� Zd� Zd� Z d� Z
d� Zd � Zd
� Z
y)r a
Format tokens with groff escapes to change their color and font style.
.. versionadded:: 2.11
Additional options accepted:
`style`
The style to use, can be a string or a Style subclass (default:
``'default'``).
`monospaced`
If set to true, monospace font will be used (default: ``true``).
`linenos`
If set to true, print the line numbers (default: ``false``).
`wrap`
Wrap lines to the specified number of characters. Disabled if set to 0
(default: ``0``).
�groff)r �troff�roffc �� � t j | fi |�� t |dd� | _ t |dd� | _ d| _ t
|dd� | _ d| _ i | _ | j � y )N�
monospacedT�linenosFr �wrap)r �__init__r r r
�_linenor r �_linelen�styles�_make_styles)�self�optionss �;/usr/lib/python3/dist-packages/pygments/formatters/groff.pyr zGroffFormatter.__init__- sf � ����4�+�7�+�&�w��d�C���#�G�Y��>����������3�� ���
�������� c �F � | j rdnd}| j rdnd}| j rdnd}| j D ]b \ }}dx}}|d r|d |d z z
}d
|z }|d r
||z
}||z }|d r
||z
}||z }|d
r|d|d
z z
}d|z }||f| j |< |