Devo generare un file CSS da Pygments per il mio blog Jekyll, per abilitare lo snippet Colorful Code?
Domanda
Questa è la mia prima volta a utilizzare Jekyll e Pygments.Ma non so come inserire snippet di codice colorato.
Ho installato con successo le pygments, seguendo i passaggi ufficiali, con il markdown come questo:
{% highlight ruby %}
def foo
puts 'foo'
end
{% endhighlight %}
.
Vedo il codice sorgente HTML, comprese le classi, tuttavia non c'è colore per questo snippet.
Devo generare alcuni file CSS da Pygments e includerli?E come?
Soluzione
È necessario includere Syntax.css
Puoi prendere il campione dal mio repo https://github.com/madhur/madhur.github.com / Blob / master / file / css / syntax.css
e quindi personalizzalo in base al tuo tema.Il mio è personalizzato per sfondi scuri.
Altri suggerimenti
Sì, è necessario installare o creare classi CSS per rendere visibile il codice ad evidenziare Pygments. Dopo aver installato Pygments, questo può essere fatto eseguendo quanto segue dalla riga di comando:
pygmentize -S default -f html > pygments.css
.
Ciò creerà un file pygments.css
con il valore predefinito nella directory corrente; pygments -L style
elencherà tutti gli stili disponibili.
È possibile spostare questo nel tuo albero HTML e chiamarlo con un corrispondente:
<link rel="stylesheet" type="text/css" href="/path/to/pygments.css">
.
o, copiare il contenuto di pygments.css
e posizionarlo in un foglio di stile esistente. Questo ti farà iniziare. È possibile modificare il CSS da lì per personalizzare come appropriato.
.
due note:
- .
-
Lo hai già già fatto, ma a beneficio delle persone che sono nuove a Jekyll e Pygments, probabilmente dovrete aggiungere anche
pygments: true
al tuo file_config.yml
per ottenere un funzionamento di Pygments. (O, eseguire jekyll conjekyll --pygments
che ha lo stesso effetto.) -
l'originale Documentazione di installazione di Jekyll non era molto chiaro su come ottenere pygments che lavorano quando questa domanda è stata posta. Ho aggiunto la sezione 'Utilizzo di Pygments' da allora a sperare di aiutare a liberare le cose anche lassù.