Для нормального программерского блога, само собой, необходима грамотная подсветка кода.
Для этой цели можно использовать онлайн-скрипты. Поддержку достаточно большого количества языков и неплохой внешний вид обеспечивают сайты ToHtml и HiLiteMe. Но мы не ищем легких путей и хотим автоматической подсветки кода, без хождения на сторонние сайты, да ещё с поддержкой хотя бы языка VHDL.
Отличное руководство расположено вот здесь: Подсветка синтаксиса в блоге на Blogger.com. По ссылке описано подключение в шаблон вашего журнала библиотеки highlight.js. Единственное замечание, что теперь стандартный пакет скриптов расположен по другому адресу, который можно найти здесь: Описание highlight.js.
Код на Си:
int main(void)
{
printf("Привет, мир!\n");
return 0;
}
Отличный вариант, но в highlight.min.js нет поддержки VHDL. Поэтому качаем отсюда http://softwaremaniacs.org/soft/highlight/download/ упакованный скрипт с поддержкой всех нужных нам языков (я выбрал все доступные). Извлекаем из архива файлы, и видим файл highlight.pack.js, содержащий скрипты для всех доступных языков.
Раз у нас уже есть этот блог, то логично и файл выложить на сервер гугла. Для этого заводим сайт на Сайты гугл - не бойтесь, это очень быстро, если у вас почта гугла. На сайт добавляем новую страницу типа «Файловый менеджер», и загружаем туда highlight.pack.js. Ссылка на файл выглядит вот так https://sites.google.com/site/programmerpractice/fajly/highlight.pack.js?attredirects=0&d=1, удаляем лишнее, и получаем прямую ссылку на файл https://sites.google.com/site/programmerpractice/fajly/highlight.pack.js. Теперь по руководству, на которое я ссылался выше, можно воспользоваться моим файлом, а стили настроить индивидуально в шаблоне вашего журнала.
Код на VHDL:
-- AND gate (ESD book figure 2.3)
-- two descriptions provided
library ieee;
use ieee.std_logic_1164.all;
entity AND_ent is
port( x: in std_logic;
y: in std_logic;
F: out std_logic
);
end AND_ent;
architecture behav of AND_ent is
begin
F <= x and y;
end behav;
После этого останется только отредактировать стиль, цвета и форматирование в шаблоне вашего блога по вкусу (см. секцию pre code{}, которую вы скопировали из файла *.css из каталога "styles\", который шел в комплекте с библиотекой highlight в тексте шаблона). Я, например, добавил в pre code{}:
background:white;
border:solid gray;
border-width:.1em .1em .1em .8em;
padding:.2em .6em;
и получил симпатичные рамочки.
Итак, всё, что теперь нам нужно для автоматического форматирования кода, - это выделять текст с исходным кодом парой тэгов <pre><code>текст программы</pre></code>. Т.к. при малом количестве кода язык кода может определяться неверно (как в моем случае с Си), то можно вручную указать язык в теге <code>: <code class="python"> или <code class="cpp"> и т.д.
Комментариев нет:
Отправить комментарий