среда, 1 октября 2008 г.

Подсветка кода

Задался таки вопросом подсветки кода.
Код для теста:

from django.db import models

class Poll(models.Model):
    question = models.CharField(max_length=200)
    pub_date = models.DateTimeField('date published')

class Choice(models.Model):
    poll = models.ForeignKey(Poll)
    choice = models.CharField(max_length=200)
    votes = models.IntegerField()

Быстро погуглив нашел рецепт: http://blogohelp.blogspot.com/2008/08/bloggercom.html
В котором описано, что нужно использовать утилиту Ивана Сагалаева highlight.js, вообще я о ней сразу вспомнил как только задался вопросом подсветки кода, но не знал как прикрутить эту утилиту в blogger. Там довольно странно дан совет использовать в качестве исходника утилиты файл highlight.js прямо с блога автора. Так делать НЕ нужно!
Я развернул библиотеку скрипта на одном из своих проектов и загружаю от туда, так как загрузить обычные файлы в blogger способа не нашел.
Как пользоваться утилитой читайте на сайте автора.
Как прикрутить ее в blogger описано у blogohelp. Просто в разделе управления блогом открываем вкладку «Макет» далее «Изменить HTML» и вставляем между <head> и </head> строки линкования и инициализации скрипта.
Единственное, нигде явно не указано (а для меня почемуто было не очевидно), что еще к странице нужно прилинковать файл css с теми стилями, которые вы хотите использовать, что прописывается тоже в заголовочной части макета.

<link href="js/highlight/styles/default.css" 
rel="stylesheet" type="text/css" />

PS: В начале не работало, когда в настройках было выставлено менять каждый перенос строк на тег br, что соответственно рвало код.

Старт

Многие ведут блоги...
Давно хотелось быть как все :)
После перебора массы вариантов (livejournal, wordpress, самому написать), решил завести аккаунт здесь. Не нужно трать много времени на создание, искать хостинг для установки движка, и как-то тут красивше чем livejournal (это конечно субъективно). К томуже данный сервис предоставляет OpenID, связан с picasa, наверное и календарь сюда можно интегрировать - еще не разобрался. Короче - много вкусностей.
Но главное с минимумом усилий позволяет делать главное - вести блог. Этим и займусь. Посты будут в основном содержания: программисстского (python, Django), филосовского (за жизнь). Моих мнений и суждений будет меньше (это точно никому не интересно).

ЗЫ: А интересно код он (blogger) подсвечивать умеет?