Come convertire un file di codice sorgente in HTML?


13

Ho un file di codice sorgente scritto in un linguaggio di programmazione (ad esempio PHP) e vorrei convertirlo in un file HTML, quindi posso pubblicarlo sul web per condividere il mio codice.

Per conversione intendo, ad esempio, convertire nuove righe in <br>tag in modo che il testo mantenga la stessa formattazione sia nell'editor di testo che nel browser web. Idealmente dovrebbe anche preservare l'evidenziazione della sintassi in modo che possa anche essere stampato.

Questo è realizzabile in Vim? Se é cosi, come?


4
Cosa intendi con conversione? Qual è l'output previsto?
OrangeTux,

L'output previsto sarebbe html (formato compatibile con il browser).
Kenorb,

1
Tutti i file di testo sono "browser friendly". Ma quando vedo la risposta di Alexander Myshov, penso di capire cosa intendi.
OrangeTux,

1
Penso che manchi un dettaglio della domanda. Vuoi produrre un documento HTML completo per ogni file sorgente o solo un frammento di codice HTML che puoi incorporare in un altro documento, o non importa?
toro2k,

Risposte:


16

Il seguente comando vim creerebbe un rendering html del file corrente.

:TOhtml

Salva il file nella stessa cartella (con estensione .html) e includerà gli stili, i colori di primo piano / sfondo e l' evidenziazione della sintassi , in modo che il file possa essere pubblicato direttamente sul web o stampato.

Per ulteriori opzioni (come l'aggiunta di numeri di riga, compability con vecchi browser, ecc), controllare: :help TOhtml.

Per convertire il file in modo non interattivo, provare il seguente comando:

vim -E -s -c "let g:html_no_progress=1" -c "syntax on" -c "set ft=c" -c "runtime syntax/2html.vim" -cwqa myfile.c

Relazionato:


1
Non è necessario %, poiché è l'impostazione predefinita. Si noti inoltre che questa è esattamente la stessa dell'altra risposta ( :runtime! syntax/2html.vim), l'unica differenza è che con TOhtmlte puoi aggiungere facilmente un intervallo (invece di impostare g:html_start_linee g:html_end_linemanualmente.
Martin Tournoij

5

Come ti ho capito, vuoi convertire il contenuto della finestra corrente in HTML. Prova a eseguire questo comando:

:runtime! syntax/2html.vim

maggiori informazioni qui:

:help convert-to-HTML
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.