1476 |
IgorA |
1 |
|
|
|
2 |
|
|
|
3 |
Оглавление |
|
|
4 |
|
|
|
5 |
|
|
|
6 |
body |
|
|
7 |
{ |
|
|
8 |
font-size: 15px; |
|
|
9 |
font-family: "Bookman Old Style"; |
|
|
10 |
color: black; |
|
|
11 |
text-align: justify; |
|
|
12 |
} |
|
|
13 |
h1 { color: green; font-size: 23px; } |
|
|
14 |
h2 { color: green; font-size: 21px; } |
|
|
15 |
h3 { color: green; font-size: 19px; } |
|
|
16 |
h4 { color: #803f00; font-size: 17px; } |
|
|
17 |
i { color: #0099cc; } |
|
|
18 |
b { color: #0099cc; } |
|
|
19 |
p { |
|
|
20 |
text-indent: 1em; |
|
|
21 |
margin-top: 3px; |
|
|
22 |
margin-bottom: 2px; |
|
|
23 |
margin-left: 0px; |
|
|
24 |
margin-right: 0px; |
|
|
25 |
} |
|
|
26 |
ol, ul, dl{ |
|
|
27 |
margin-top: 3px; |
|
|
28 |
margin-bottom: 2px; |
|
|
29 |
} |
|
|
30 |
pre |
|
|
31 |
{ |
|
|
32 |
padding: 2px; |
|
|
33 |
padding-left: 20px; |
|
|
34 |
margin-top: 5px; |
|
|
35 |
margin-bottom: 5px; |
|
|
36 |
margin-left: 0px; |
|
|
37 |
margin-right: 0px; |
|
|
38 |
font-family: "Courier New"; |
|
|
39 |
font-size: 15px; |
|
|
40 |
color: #004000; |
|
|
41 |
background-color: #ffd0ff; |
|
|
42 |
} |
|
|
43 |
table |
|
|
44 |
{ |
|
|
45 |
font-size: 15px; |
|
|
46 |
} |
|
|
47 |
|
|
|
48 |
|
|
|
49 |
|
|
|
50 |
|
|
|
51 |
TextEditor syntax file converter версия от 31.05.2010
|
|
|
52 |
О программе
|
|
|
53 |
Программа для работы с файлами текстового редактора формата *.syn.
|
|
|
54 |
|
|
|
55 |
Лицензия свободная.
|
|
|
56 |
|
|
|
57 |
Алгоритм работы программы
|
|
|
58 |
Перед использованием записать файл te_synt.kex в папку с редактором t_edit.kex.
|
|
|
59 |
1) загрузить файл синтаксиса .syn
|
|
|
60 |
2) ввести путь и новое имя для сохранения в формате .asm
|
|
|
61 |
3) изменить в файле .asm интересующие пользователя параметры, это могут быть:
|
|
|
62 |
|
|
|
63 |
цвета интерфейса |
|
|
64 |
подсвечиваемые слова (должны ити в порядке следования ascii кодов) |
|
|
65 |
справка по словам |
|
|
66 |
|
|
|
67 |
4) компилировать в fasm
|
|
|
68 |
5) исправить расширение .bin на .syn
|
|
|
69 |
Если пропустить 3-й пункт, то в результате пользователь должен получить такой же файл синтаксиса, который был изначально.
|
|
|
70 |
|
|
|
71 |
Формат преобразованого файла подсветки *.asm
|
|
|
72 |
count_colors_text - колличество цветов для текста
|
|
|
73 |
count_key_words - колличество подсвечиваемых слов
|
|
|
74 |
Цветовые параметры:
|
|
|
75 |
color_cursor - цвет курсора
|
|
|
76 |
color_wnd_capt - цвет полей вокруг окна
|
|
|
77 |
color_wnd_work - цвет фона в окне
|
|
|
78 |
color_wnd_bord - цвет текста на полях
|
|
|
79 |
color_select - цвет выделения
|
|
|
80 |
color_cur_text - цвет символа под курсором
|
|
|
81 |
color_wnd_text - метка после которой идут цвета текста в окне
|
|
|
82 |
|
|
|
83 |
text - метка после которой идут описания ключевых слов. Для более компактного описания ключевого слова используется макрос wo:
|
|
|
84 |
macro wo txt,lf1,p1,p2,p3{
|
|
|
85 |
@@: db txt |
|
|
86 |
rb @b+40-$ |
|
|
87 |
dd lf1 |
|
|
88 |
db p1,p2+0,p3 |
|
|
89 |
} |
|
|
90 |
параметры макроса:
|
|
|
91 |
txt - подсвечиваемое слово
|
|
|
92 |
lf1 - смещение начала справки по данному слову относительно метки f1
|
|
|
93 |
p1 - опции влияющие на выделение слова. Возможно всего 5 опций, каждая из которых включается определенным битом:
|
|
|
94 |
|
|
|
95 |
20=1 - слева не текст, |
|
|
96 |
21=2 - справа не текст, |
|
|
97 |
23=4 - использовать конечный символ, |
|
|
98 |
24=8 - слева любая цифра, |
|
|
99 |
25=16 - справа любая цифра. |
|
|
100 |
|
|
|
101 |
p2 - ascii код конечного символа для выделения. Используется в случаях, когда нужно задать выделение заранее не известной длинны, например: комментарии, строки в кавычках. Для его использования предыдущий параметр должен содержать 2-й бит ил цифра 4 = 22.
|
|
|
102 |
p3 - номер цвета из массива color_wnd_text, которым будет выделятся слово
|
|
|
103 |
|
|
|
104 |
Пример 1. Нужно задать слово or, что-бы по ошибке комбинации из символов входящих в слово не выделялись в других словах, например: form, color используем в p2 биты 0 и 1 получаем число 3 = 20+21 = 1+2.
|
|
|
105 |
Пример 2. Фрагмент файла, полученого в результате работы программы:
|
|
|
106 |
wo<'word'>,f1.600-f1,3,,8
|
|
|
107 |
wo<'xadd'>,0,3,,1 |
|
|
108 |
wo<'xchg'>,f1.602-f1,3,,1 |
|
|
109 |
wo<'xlat'>,0,3,,1 |
|
|
110 |
wo<'xlatb'>,0,3,,1 |
|
|
111 |
wo<'xmm0'>,0,3,,2 |
|
|
112 |
wo<'xmm1'>,0,3,,2 |
|
|
113 |
wo<'xmm2'>,0,3,,2 |
|
|
114 |
wo<'xmm3'>,0,3,,2 |
|
|
115 |
wo<'xmm4'>,0,3,,2 |
|
|
116 |
wo<'xmm5'>,0,3,,2 |
|
|
117 |
wo<'xmm6'>,0,3,,2 |
|
|
118 |
wo<'xmm7'>,0,3,,2 |
|
|
119 |
wo<'xor'>,f1.613-f1,3,,1 |
|
|
120 |
wo<'zf'>,f1.614-f1,3,,2 |
|
|
121 |
wo<'||'>,0,0,,1 |
|
|
122 |
Параметры p2 почти во всех словах равны 3-м, а в последнем слове 0, потому что для последнего слова не важно какие символы будут слева и справа от него.
|
|
|
123 |
|
|
|
124 |
Формат файла подсветки *.syn
|
|
|
125 |
|
|
126 |
Элемент | Размер (байт) |
---|
|
|
|
127 |
Количество цветов текста |
|
|
128 |
4 | |
|
|
|
129 |
Количество подсвечиваемых слов |
|
|
130 |
4 | |
|
|
|
131 |
Цвета интерфейса |
|
|
132 |
4*6 | |
|
|
|
133 |
Цвета для текста |
|
|
134 |
4*(кол. цв. текста) | |
|
|
|
135 |
Структуры со свойствами и описаниями слов |
|
|
136 |
sizeof(TexColViv)*(кол. слов) | |
|
|
|
137 |
Разделительный символ, означающий начало описаний слов (всегда равен 0) |
|
|
138 |
1 байт | |
|
|
|
139 |
Описания слов (строки текста с 0-ми в конце) |
|
|
140 |
(длинна справочного текста + 1) | |
|
|
|
141 |
| |
|
|
142 |
Замечания.
|
|
|
143 |
|
|
|
144 |
Все слова должны быть расположены в порядке следования их ASCII кодов. |
|
|
145 |
Возможно в будущих версиях формат файлов подсветки будет изменен. |
|
|
146 |
|
|
|
147 |
|
|
|
148 |
|
|
|
149 |
Автор
|
|
|
150 |
Игорь А. (IgorA) - разработка программы.
|
|
|
151 |
|
|
|
152 |
|
|
|
153 |
|