TextEditor syntax file converter версия от 31.05.2010

О программе

Программа для работы с файлами текстового редактора формата *.syn.

Лицензия свободная.

Алгоритм работы программы

Перед использованием записать файл te_synt.kex в папку с редактором t_edit.kex.

1) загрузить файл синтаксиса .syn

2) ввести путь и новое имя для сохранения в формате .asm

3) изменить в файле .asm интересующие пользователя параметры, это могут быть:

4) компилировать в fasm

5) исправить расширение .bin на .syn

Если пропустить 3-й пункт, то в результате пользователь должен получить такой же файл синтаксиса, который был изначально.

Формат преобразованого файла подсветки *.asm

count_colors_text - колличество цветов для текста

count_key_words - колличество подсвечиваемых слов

Цветовые параметры:

color_cursor - цвет курсора

color_wnd_capt - цвет полей вокруг окна

color_wnd_work - цвет фона в окне

color_wnd_bord - цвет текста на полях

color_select - цвет выделения

color_cur_text - цвет символа под курсором

color_wnd_text - метка после которой идут цвета текста в окне

text - метка после которой идут описания ключевых слов. Для более компактного описания ключевого слова используется макрос wo:

macro wo txt,f1,p1,p2,p3{
@@: db txt
rb @b+40-$
dd f1+0
db p1
dw p2+0
db p3
}

параметры макроса:

txt - подсвечиваемое слово

f1 - смещение начала справки по данному слову относительно метки f1 (если справки нет то параметр можно оставить пустым)

p1 - опции влияющие на выделение слова. Возможно всего 5 опций, каждая из которых включается определенным битом:

p2 - (ascii код экранирующего символа * 256) + ascii код конечного символа. Используется в случаях, когда нужно задать выделение заранее не известной длинны, например: комментарии, строки в кавычках. Для его использования предыдущий параметр должен содержать 2-й бит или цифру 4 = 22.

p3 - номер цвета из массива color_wnd_text, которым будет выделятся слово

Пример 1. Нужно задать слово or, что-бы по ошибке комбинации из символов входящих в слово не выделялись в других словах, например: form, color используем в p2 биты 0 и 1 получаем число 3 = 20+21 = 1+2.

Пример 2. Фрагмент файла, полученого в результате работы программы:

wo<'word'>,f1.600-f1,3,,8
wo<'xadd'>,,3,,1
wo<'xchg'>,f1.602-f1,3,,1
wo<'xlat'>,,3,,1
wo<'xlatb'>,,3,,1
wo<'xmm0'>,,3,,2
wo<'xmm1'>,,3,,2
wo<'xmm2'>,,3,,2
wo<'xmm3'>,,3,,2
wo<'xmm4'>,,3,,2
wo<'xmm5'>,,3,,2
wo<'xmm6'>,,3,,2
wo<'xmm7'>,,3,,2
wo<'xor'>,f1.613-f1,3,,1
wo<'zf'>,f1.614-f1,3,,2
wo<'||'>,,0,,1

Параметры p2 почти во всех словах равны 3-м, а в последнем слове 0, потому что для последнего слова не важно какие символы будут слева и справа от него.

Формат файла подсветки *.syn

ЭлементРазмер (байт)
Количество цветов текста
4
Количество подсвечиваемых слов
4
Цвета интерфейса
4*6
Цвета для текста
4*(кол. цв. текста)
Структуры со свойствами и описаниями слов
sizeof(TexColViv)*(кол. слов)
Разделительный символ, означающий начало описаний слов (всегда равен 0)
1 байт
Описания слов (строки текста с 0-ми в конце)
(длинна справочного текста + 1)

Замечания.


Автор

Игорь А. (IgorA) - разработка программы.