2012-03-11 10 views
13

Po raz pierwszy używam Jekyll i Pygments. Ale nie wiem, jak wstawić kolorowy fragment kodu.Czy muszę wygenerować plik css z Pygments dla mojego bloga jekyll, aby włączyć kolorowy fragment kodu?

pomyślnie zainstalowany Pygments, wykonując czynności urzędowych, z obniżki tak:

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

widzę kod źródłowy html tym klas, jednak nie ma koloru dla tego fragmentu.

Czy muszę wygenerować niektóre pliki CSS z Pygments i uwzględnić je? I jak?

Odpowiedz

5

Trzeba to syntax.css

Można wziąć próbkę z mojego repo https://github.com/madhur/madhur.github.com/blob/master/files/css/syntax.css

a następnie dostosować je w zależności od tematu. Mój jest dostosowany do ciemnego tła.

+1

Mojombo (twórca Jekylla) ma [syntax.css] (https://github.com/mojombo/tpw/blob/master/css/syntax.css), który może być prostsze do rozszerzenia (również ma jasne tło). – huon

+1

Właściwie można przejść do strony pygments, http://pygments.org/demo/35195/, wybrać odpowiedni motyw, a następnie wyodrębnić samą składnię.css –

+0

Mam na myśli, w jaki sposób powinienem dołączyć te syntax.css? Gdzie powinienem to umieścić? – user1261841

26

Tak, musisz albo zainstalować, albo utworzyć klasy CSS, aby kod podświetlający działał był widoczny. Po zainstalowaniu Pygments, można to zrobić poprzez uruchomienie następujących opcji z linii poleceń:

pygmentize -S default -f html > pygments.css 

Spowoduje to utworzenie pliku pygments.css z domyślnie w bieżącym katalogu; pygments -L style wyświetli listę wszystkich dostępnych stylów.

Można też przenieść to do swojego drzewa HTML i nazwać go z odpowiadającym:

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

Albo skopiować zawartość pygments.css i umieścić go w istniejącym arkuszu stylów. To cię zacznie. Możesz edytować CSS stamtąd, aby odpowiednio dostosować.


Dwie uwagi:

  1. Pewnie już zrobione, ale z korzyścią dla ludzi, którzy są nowicjuszami w Jekylla i Pygments, prawdopodobnie będziesz musiał również dodać pygments: true do pliku _config.yml, aby działało Pygments. (Lub uruchom Jekyll z jekyll --pygments który ma ten sam efekt.)

  2. Oryginalny Jekyll installation documentation nie było bardzo jasne, o tym, jak dostać Pygments pracuje gdy pytano. Od tego czasu dodałem sekcję "Pygments Usage", aby pomóc w wyjaśnieniu.

+2

Po tym, jak właśnie odkryłem ten post, stworzyłem już repozytorium, które zawiera wszystkie wątki tutaj [https://github.com/iwootten/jekyll-syntax](https://github.com/iwootten/jekyll- składnia) mam nadzieję, że będzie to użyteczne dla ludzi tutaj. Dodatkowo można użyć opcji '-a', aby wskazać podświetlenia klasy jekyll pod, np.' Pygmentize -S default -f html -a .highlight> default.css' –

+1

Po prostu dodajemy, że nowa zmienna _config.yml dla podkreślenia kodu to "wyróżnienie: pygmenty" lub "rouge" itp., a nie "pygments: true" – matrixanomaly

Powiązane problemy