Subversion Repositories Kolibri OS

Rev

Rev 2159 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1476 IgorA 1
2
3
Оглавление
4
5
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