Pull to refresh

Habrahabr, Live Writer и Code Highlighting

Lumber room

Интро



Уже практически полгода я пользуюсь Windows Live Writer в качестве инструмента для написания веб-ориентированных статей. Это отличный инструмент, работающий с большим количеством blogengine’ов, и даже с SharePoint. Но разговор не об этом, в связи с тем, что я разработчик, мне частенько приходится вставлять листинг кода в написанные статьи, на это я и хочу обратить ваше внимание.

Пигменты



Многие представители Python-сообщества наверняка знакомы с дивным проектом под названием Pygments:



Ну так вот, товарищ Harry Pierson (@DevHawk) скомпилировал этот движок под IronPython и написал обертку-плагин для Windows Live Writer (качать здесь не торопиться). Отлично, однако то, что получается в результате его обработки не выделяется цветом на habrahabr, это связанно с некоторыми особенностями ресурса, однако поправимо.

Данными работами я и предлагаю заняться, для этого нам понадобятся:



После того, как мы скачали исходники, стоит разыскать скрипт под именем pygments_package\devhawk_formatter.py и немного его подкоректировать:

            # a style item is a tuple in the following form:
            # colors are readily specified in hex: 'RRGGBB'
            if style['color']:
                start += '<span style=«color:#%s»>' % style['color']
                end = '</span>' + end





заменить на

            # a style item is a tuple in the following form:
            # colors are readily specified in hex: 'RRGGBB'
            if style['color']:
                start += '<font color="#%s">' % style['color']
                end = '</font>' + end



Далее пересобрать с помощью скрипта build.bat проект и запустить инсталлер – теперь то что делает данный проект в  цвете отображается на хабре.
Tags:IronPythonLive WriterPygments.netBlogLivePython
Hubs: Lumber room
Total votes 21: ↑15 and ↓6 +9
Views186

Popular right now

Python для работы с данными
May 26, 202131,500 ₽Нетология
Python-разработчик плюс
May 20, 2021168,000 ₽Яндекс.Практикум
Основы языка Python
May 24, 202120,800 ₽Luxoft Training
Мидл python-разработчик
May 27, 202185,000 ₽Яндекс.Практикум
Программирование на Python: Введение
October 18, 202130,000 ₽Сетевая Академия ЛАНИТ