2012-03-11 11 views
13

Questa è la mia prima volta che uso Jekyll e Pygments. Ma non so come inserire lo snippet di codice colorato.Devo generare un file css da Pygments per il mio blog jekyll, per abilitare lo snippet di codice colorato?

ho installato con successo Pygments, seguendo i passi ufficiali, con il mark-down come questo:

{% highlight ruby %} 
def foo 
    puts 'foo' 
end 
{% endhighlight %} 

vedo il codice sorgente HTML, comprese le categorie, tuttavia non v'è nessun colore per il questo frammento.

Devo generare alcuni file css da Pygments e includerli? E come?

risposta

5

è necessario includere syntax.css

Si può prendere l'esempio dal mio repo https://github.com/madhur/madhur.github.com/blob/master/files/css/syntax.css

e quindi personalizzare in base alle proprie tema. Il mio è personalizzato per sfondi scuri.

+1

Mojombo (creatore di Jekyll) ha [a syntax.css] (https://github.com/mojombo/tpw/blob/master/css/syntax.css) che potrebbe essere più semplice per estendere (inoltre, ha uno sfondo chiaro). – huon

+1

In realtà, puoi visitare il sito pygments, http://pygments.org/demo/35195/, scegliere il tema adatto e quindi estrarre syntax.css da solo –

+0

Voglio dire, come dovrei includere teh syntax.css? Dove dovrei metterlo? – user1261841

26

Sì, è necessario installare o creare classi CSS per rendere visibile il codice che evidenzia il lavoro Pygments. Dopo aver installato Pygments, questo può essere fatto eseguendo il seguente dalla riga di comando:

pygmentize -S default -f html > pygments.css 

questo creerà un file pygments.css con il default nella directory corrente; pygments -L style elencherà tutti gli stili disponibili.

È possibile spostare questo nel tuo albero di HTML e chiamarlo con un corrispondente:

<link rel="stylesheet" type="text/css" href="/path/to/pygments.css"> 

Oppure, copiare il contenuto del pygments.css e metterlo in un foglio di stile esistente. Questo ti farà iniziare. Puoi modificare il CSS da lì per personalizzare come appropriato.


Due note:

  1. Probabilmente avete già fatto questo, ma a beneficio di persone che sono nuovi per Jekyll e Pygments, probabilmente dovrete anche aggiungere pygments: true al file _config.yml per far funzionare Pygments. (In alternativa, eseguire Jekyll con jekyll --pygments che ha lo stesso effetto.)

  2. L'originale Jekyll installation documentation non era molto chiaro su come ottenere Pygments a lavorare quando questa domanda è stato chiesto. Da quel momento ho aggiunto la sezione "Uso di Pygments" per aiutare eventualmente a chiarire le cose.

+2

Dopo aver appena scoperto questo post, ho già creato un repository che include tutti i temi qui [https://github.com/iwootten/jekyll-syntax](https://github.com/iwootten/jekyll- sintassi) si spera che sarà utile per le persone qui. Inoltre, puoi usare l'opzione '-a' per indicare i punti salienti della classe jekyll, ad esempio' pygmentize -S default -f html -a .highlight> default.css' –

+1

Proprio come aggiungere la nuova variabile _config.yml per le evidenziazioni del codice sono 'Evidenziatore: pygments' o' rouge' ecc, e non più 'pygments: true' – matrixanomaly

Problemi correlati