Як я зазначив у своєму коментарі, Github використовує Linguist для виділення синтаксису. У Github ви можете використовувати це для визначення виділення синтаксису так:
```ruby
require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html
```
На жаль, не існує хорошого способу перетворення Markdown безпосередньо у PDF-файл із підсвічуванням синтаксису.
Альтернативи:
Vim :
Якщо у вас vim, ви можете легко досягти підсвічування синтаксису, виконавши наступне з терміналу:
vim -c hardcopy -c quit /path/to/file.ps
Або всередині vim:
:hardcopy >/path/to/file.ps
Це створить файл PostScript, який можна перетворити в pdf, використовуючи, наприклад, ps2pdf:
ps2pdf /path/to/file.ps
Виділення джерела :
Якщо ви хочете замість цього пройти маршрут HTML або LaTeX, ви можете спробувати Source-виділити натомість. Список усіх мов, що підтримуються джерелом, можна знайти тут .
Кілька прикладів команд для виділення джерела включають:
source-highlight -s java -f html -i Hello.java -o Hello1.html
source-highlight -s java -f html --input Hello.java --output Hello2.html --doc
source-highlight -s java -f html -i Hello.java -o Hello3.html --title "Happy Java with java2html :-)" --tab 3
Використовуючи цей вхідний файл
І кожен виводить свій власний HTML-файл:
Hello1.html
Hello2.html
Hello3.html
Подальші приклади використання підсвічування джерела можна знайти тут
Windows :
Vim , ps2pdf (надається Ghostscript ) та Source-виділення доступні через Cygwin .