o
    f                  
   @   sj   d dl Z d dlZd dlZdddddZejdejdejdejd	ejd
iZ	G dd dej
Zee  dS )    Na=  (?smx)
          <(?P<inline>(inline)?)mediaobject>\s*
          (?P<match>
          <textobject.*?>\s*
          <programlisting\s+language=["']lilypond["'].*?(role=["'](?P<options>.*?)["'])?>
          (?P<code>.*?)
          </programlisting\s*>\s*
          </textobject\s*>\s*)
          </(inline)?mediaobject>aG  (?smx)
          <(?P<inline>(inline)?)mediaobject>\s*
          (?P<match>
          <imageobject.*?>\s*
          <imagedata\s+
           fileref=["'](?P<filename>.*?\.ly)["']\s*
           (role=["'](?P<options>.*?)["'])?\s*
           (/>|>\s*</imagedata>)\s*
          </imageobject>\s*)
          </(inline)?mediaobject>zb(?smx)
          (?P<match>
          \s*(?!@c\s+)
          (?P<code><!--\s.*?!-->)
          \s))ZlilypondZlilypond_blockZlilypond_fileZmultiline_commentz<mediaobject>
  <textobject>
    <programlisting language="lilypond"
                    role="%(options)s">
%(code)s
    </programlisting>
  </textobject>
</mediaobject>z<imageobject role="latex">
  <imagedata fileref="%(base)s.pdf" format="PDF"/>
</imageobject>
<imageobject role="html">
  <imagedata fileref="%(base)s.png" format="PNG"/>
</imageobject>z<textobject>
  <simpara>
    <ulink url="%(base)s%(ext)s">
      <filename>
        %(filename)s
      </filename>
    </ulink>
  </simpara>
</textobject>zk<textobject>
  <programlisting language="lilypond" role="processed">%(verb)s</programlisting>
</textobject>z%(program_version)sc                   @   s$   e Zd Zdd Zdd Zdd ZdS )BookDocbookOutputFormatc                 C   s6   t j|  d| _d| _t| _t| _dg| _	d| _
d S )NZdocbookz.xmlz.lyxmlz\s+)	book_baseBookOutputFormat__init__formatZdefault_extensionDocbook_snippet_resZsnippet_resDocbook_outputoutputZhandled_extensionsZsnippet_option_separator)self r   a/home/lily/lilypond-2.24.4/release/binaries/mingw/lilypond/lilypond-2.24.4/python/book_docbook.pyr   y   s   
z BookDocbookOutputFormat.__init__c                 C   s$   d|vr|d7 }d|vr|d7 }|S )Nz-dseparate-page-formatsz -dseparate-page-formats=pdf z-dtall-page-formatsz! -dtall-page-formats=eps,pdf,png r   )r
   cmdr   r   r   adjust_snippet_command   s
   z.BookDocbookOutputFormat.adjust_snippet_commandc                 C   s   d}|  }| D ](}||d< tj|\|d< |d< || jtj | 7 }|| ||7 }|d7 }q
tj	|j
v rPt| |d< || jtj	 | 7 }|d7 }|S )N imagebaseZext
Zverb)Zget_replacementsZ
get_imagesospathsplitextr	   book_snippetsOUTPUTZoutput_print_filenameVERBATIMZoption_dictr   Zverbatim_htmlZverb_ly)r
   basenameZsnippetsZrepr   r   r   r   snippet_output   s   
z&BookDocbookOutputFormat.snippet_outputN)__name__
__module____qualname__r   r   r   r   r   r   r   r   x   s    	r   )r   r   r   r   ZFILTERr   ZPRINTFILENAMEr   ZVERSIONr   r   r   Zregister_formatr   r   r   r   <module>   s    -

$"