Использование подсветки синтаксиса от GitHub - PullRequest
31 голосов
/ 06 июня 2011

Какая подсветка синтаксиса используется в GitHub (для HTML, CSS, JavaScript, C #) при просмотре файла с исходным кодом и доступно ли для общего пользования ?

Он работает на странице и работает при встраивании на страницу (из Gist), например:

<script src="https://gist.github.com/1009439.js"></script>

Но могу ли я просто включить их JavaScript-библиотеку и позволить ей выделить мой код?

Ответы [ 5 ]

40 голосов
/ 06 июня 2011

Github использует pygments для выделения синтаксиса. Pygments работает на сервере, а не на чистом клиентском решении Javascript. Если вы ищете решение Javascript , просмотрите этот обзор различных вариантов.

16 голосов
/ 23 февраля 2015

Согласно этой странице справки , GitHub в настоящее время выделяет синтаксис с библиотекой Linguist для Ruby с открытым исходным кодом. Linguist выделяет каждый язык, используя файлы tmLanguage, связанные в vendor/grammars.

Поскольку Linguist написан на Ruby, его можно использовать только на сервере. Если вам нужна библиотека JavaScript на стороне клиента, которую вы можете просто включить на страницу, вам придется найти другую библиотеку .

5 голосов
/ 06 июня 2011

В соответствии с этим: http://www.infoq.com/news/2008/03/github-git-repository-hosting

они используют Python Pygments

Крис Ванстрат поделился некоторыми информация о внутренней работе GitHub с InfoQ:

GitHub в основном реализован в Rails. Мини-приложения интеграции после фиксации мы работаем над все написано в Merb, мы используем Python Pygments для подсветка синтаксиса, и мы используем Ara T. Говард Бж плюс несколько сценариев для Ruby наша система очередей. И, конечно же, мы используем библиотеку Ruby Grit для интерфейс с Git.

2 голосов
/ 06 июня 2011

Я полагаю, что они используют их альбинос драгоценный камень. Это оболочка Ruby для подсветки синтаксиса pygments.

Вот статья о сравнении, которую я недавно прочитал о подсветках синтаксиса на основе JavaScript (если это то, что вам нужно): http://softwaremaniacs.org/blog/2011/05/22/highlighters-comparison/

1 голос
/ 25 февраля 2012

Как уже говорили другие, GitHub использует Pygments .Вы можете достичь того же эффекта, используя его вместе с pygments-style-github .

...