2009-03-18 2 views
6

Как вы можете или не можете знать, вы можете сгенерировать синтаксис синтаксиса с высоким значением цвета из исходного файла PHP, используя php -s.Питон эквивалентен «php -s»

Я знаю об syntaxhighlighter, которые использует Stackoverflow, и на самом деле это не то, что я ищу. Я ищу что-то будет генерировать вывод HTML без Javascript.

Кто-нибудь знает что-то эквивалентное PHP - s для Python?
+0

Gee, я не знал о синтаксисе highlighter – Xolve

+0

Во многих случаях синтаксический гиперссылка отличная. Там есть версия плагина Wordpress, которую я довольно широко использую в своем блоге. –

+0

+1 Я не знал ни –

ответ

12
$ pygmentize -O full -O style=native -o test.html test.py 

Чтобы установить Pygments:

$ easy_install Pygments 

Вы можете использовать его в качестве библиотеки.

from pygments import highlight 
from pygments.lexers import guess_lexer 
from pygments.formatters import HtmlFormatter 

code = '#!/usr/bin/python\nprint "Hello World!"' 
lexer = guess_lexer(code) # or just pygments.lexers.PythonLexer() 
formatter = HtmlFormatter(noclasses=True, nowrap=True, lineseparator="<br>\n") 
print highlight(code, lexer, formatter) 

Выход:

<span style="color: #408080; font-style: italic">#!/usr/bin/python</span><br> 
<span style="color: #008000; font-weight: bold">print</span> 
<span style="color: #BA2121">&quot;Hello World!&quot;</span><br> 

(добавлены пробелы для ясности)

В HTML:

#/USR/BIN/питона
печати " Hello World! "

+0

Perfect! благодаря –

0

Если у вас есть доступ к kwrite из KDE, вы можете экспортировать файл в формате HTML, который будет иметь ту же самую раскраску, которую вы используете для редактирования. Это работает для всех языков.

0

Если вам нужно всего несколько файлов для преобразования в html-страницы и на окнах вы можете использовать Notepad ++. Он поставляется (начиная с последних версий) с плагином NppExport, который позволяет конвертировать исходный код в выделенный HTML и RTF (в соответствии с вашей схемой раскраски). Он работает не только с python, но и с любым языком, который вы можете использовать в Notepad ++.

1

Я нашел Highlight at http://www.andre-simon.de, чтобы быть очень хорошим инструментом для этого. Это Open-source (GPL'ed хотя!)