2012-03-11 22 views
13

Đây là lần đầu tiên tôi sử dụng Jekyll và Pygments. Nhưng tôi không biết cách chèn đoạn mã đầy màu sắc.Tôi có cần tạo một tệp css từ Pygments cho blog jekyll của mình, để cho phép đoạn mã đầy màu sắc không?

Tôi đã cài đặt thành công Pygments, làm theo các bước chính thức, với markdown như thế này:

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

tôi xem mã nguồn html bao gồm các lớp học, tuy nhiên không có màu cho đoạn này.

Tôi có cần tạo một số tệp css từ Pygments và bao gồm chúng không? Và làm thế nào?

Trả lời

5

Bạn cần phải bao gồm syntax.css

Bạn có thể lấy mẫu từ repo của tôi https://github.com/madhur/madhur.github.com/blob/master/files/css/syntax.css

và sau đó tùy chỉnh nó theo chủ đề của bạn. Mỏ được tùy chỉnh cho nền tối.

+1

Mojombo (tác giả của Jekyll) có [a syntax.css] (https://github.com/mojombo/tpw/blob/master/css/syntax.css) mà có thể được đơn giản để kéo dài (cũng có một nền sáng). – huon

+1

Trên thực tế, bạn có thể vào trang web pygments, http://pygments.org/demo/35195/, chọn chủ đề phù hợp và sau đó giải nén cú pháp.css –

+0

Ý tôi là, tôi nên bao gồm cú pháp teh.cs như thế nào? Tôi nên đặt nó ở đâu? – user1261841

26

Có, bạn cần phải cài đặt hoặc tạo lớp CSS để làm cho mã làm nổi bật Pygments hiển thị. Sau khi cài đặt Pygments, điều này có thể được thực hiện bằng cách chạy sau từ dòng lệnh:

pygmentize -S default -f html > pygments.css 

Điều này sẽ tạo ra một file pygments.css với mặc định trong thư mục hiện tại của bạn; pygments -L style sẽ liệt kê tất cả các kiểu có sẵn.

Bạn có thể di chuyển này vào cây HTML của bạn và gọi nó với một tương ứng:

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

Hoặc, sao chép nội dung của pygments.css và đặt nó trong một style sheet hiện hành. Điều đó sẽ giúp bạn bắt đầu. Bạn có thể chỉnh sửa CSS từ đó để tùy chỉnh khi thích hợp.


Hai lưu ý:

  1. Có thể bạn đã làm điều này, nhưng vì lợi ích của những người mới đến Jekyll và Pygments, bạn sẽ có lẽ cũng cần phải thêm pygments: true vào tệp _config.yml của bạn để giúp Pygments hoạt động. (Hoặc, chạy Jekyll với jekyll --pygments trong đó có tác dụng tương tự.)

  2. Bản gốc Jekyll installation documentation là không phải là rất rõ ràng về cách để có được Pygments làm việc khi câu hỏi này được hỏi. Tôi đã thêm phần 'Sử dụng Pygments' kể từ đó để hy vọng giúp mọi thứ rõ ràng ở đó.

+2

Chỉ mới phát hiện ra bài đăng này, tôi đã tạo một repo bao gồm tất cả các chủ đề ở đây [https://github.com/iwootten/jekyll-syntax](https://github.com/iwootten/jekyll- cú pháp) hy vọng nó sẽ được sử dụng cho mọi người ở đây. Ngoài ra, bạn có thể sử dụng tùy chọn '-a' để chỉ ra lớp jekyll nổi bật bên dưới, ví dụ' pygmentize -S mặc định -f html -a .highlight> default.css' –

+1

Giống như thêm biến _config.yml mới cho mã nổi bật là 'highlighter: pygments' hoặc' rouge' etc, và không còn 'pygments: true' nữa – matrixanomaly