Настройка

Каждый конфигурационный файл находится в /etc/colorifer и имеет стандартный формат для всех программ использующих класс Config библиотеки libing. То есть возможны параметры, описываемые внутри тегов option и группы параметров - внутри тегов group. Тег option имеет аргументы:

Тег group имеет только один аргумент - название группы.

Строки определяются регулярным выражением, каждому регулярному выражению соответствует цвет. Возможны два типа определений: раскраска строки целиком, раскраска подстрок. При определении выражений допустима их вложенность. Соответствующая расцветка будет строго следовать этой вложенности. Например если задана следующая схема

То строка “aatestaa” будет изменять свой цвет в следующей последовательности “зелёный|красный|синий|красный|зелёный” Теперь подробнее о возможных параметрах в конфигурационных файлах:

Группа colorifer - главная группа

redirector - полный путь к программе, вывод которой будем расцвечивать по данной схеме. В нашем случае здесь будет /usr/bin/program

Группа strings - шаблоны для раскраски строк целиком

pattern - группа параметров шаблона. Включает в себя два параметра: color - цвет, regexp - регулярное выражение

Группа substring - шаблоны для раскраски подстрок

pattern - группа параметров шаблона. Полностью аналогична той которая в подгруппе substrings

Ниже приведён пример конфигурации. В ней расцвечивается вывод программы test. Такая же схема используется для расцветки вывода компилятора.

	<?xml version="1.0"?>
<!DOCTYPE group PUBLIC "-//ALT//General Config Format V1.0//EN"
		"/usr/share/xml/alt/config/1.0/config.dtd">

<group name="colorifer" type="program" >
    <option name="redirector">./test</option>
    
    <!--whole strings colorification -->
    <xinclude:include href="default-c-strings.xml" parse="xml" 
	    xmlns:xinclude="http://www.w3.org/2001/XInclude"/>
    <!--extended color substitutions -->
    <xinclude:include href="default-c-replaces.xml" parse="xml" 
	    xmlns:xinclude="http://www.w3.org/2001/XInclude"/>

	
    <group name="substrings">
	<group name="pattern">
	    <option name="color">cyan</option>
	    <option name="regexp">`(.*)'</option>
	</group>
    </group>
</group>