Closed danse closed 6 years ago
@danse Esatto! Come fa pandoc a sapere di che codice si tratta?
non mi è del tutto chiaro il problema, prova ad aggiungere un documento di test se pensi che possa aiutare.
provando a tradurre questo https://github.com/atorin/pandoc-test/pull/11/commits/fb38e2d7e2509653c7660400a90d8a2e603ac2b1 file in formato RST ottengo:
.. code:: javascript
code
che mi sembra corretto. provando a tradurre un markdown contenente solo ```
senza specifica di linguaggio ho ottenuto:
::
code
next line
che sembra il modo corretto di tradurre testo letterale (literal), e mantiene l'indentazione
Controlla i file longer-code qui: https://github.com/atorin/pandoc-test/tree/master/how-to-format-code-in-a-docx
Sono partito dall'odt in LibreOffice, che ho poi convertito in docx, che infine ho convertito in RST con Pandoc.
L'output RST che ottengo è:
::
<code>
::
<some code here>Hey!</some code here>
::
</code>
Here’s some text
Giustamente, Pandoc non ha modo di sapere in che linguaggio è scritto il codice, a meno che un umano non lo dica esplicitamente.
Nel tuo caso, se non sbaglio, sei partito da un .md con un esplicito riferimento al linguaggio (Javascript), che Pandoc ha convertito correttamente.
si ma non mi è ancora chiaro il problema. i rientri in quei files mi sembrano convertiti correttamente, mi sbaglio?
il problema qui é che un unico blocco di sorgente viene convertito in blocchi diversi, uno per linea
da quel che posso vedere il problema qui è presente nel DOCX stesso, che contiene un paragrafo formattato come codice per ogni riga. passare da ODT complica ulteriormente le cose quindi da ora in poi qui tratterò la traduzione da DOCX a RST.
immagino che il DOCX sia stato prodotto in questa maniera attraverso il tuo convertitore Acrobat, quindi niente su cui io possa intervenire a meno di sviluppare il flusso descritto da #16.
quello che posso fare è scrivere un filtro pandoc che sostituisca paragrafi successivi di codice con un singolo paragrafo contenente le diverse linee, quindi lavorerò su questo
Una volta stabilito il formato di partenza, come fa pandoc a riprodurre un codice (per esempio, XML) con i rientri adeguati? Al momento, pandoc produce un output del tipo
In realtà dovrebbe usare la direttiva
.. code-block::
, ma questo richiede di conoscere il linguaggio in cui è scritto il codice