ТЕКСТОВЫЙ   РЕДАКТОР   TeConv v1.24

                     (комплексное редактирование каталогов и файлов)

 

 


СОДЕРЖАНИЕ

 

ВВЕДЕНИЕ............................................................................ 4

СТРУКТУРА РЕДАКТОРА................................................ 5

ОСНОВЫ РАБОТЫ С РЕДАКТОРОМ........................... 6

Настройки........................................................................................ 7

Параметры ввода............................................................................ 9

1. Параметры ввода для редактирования.............................. 9

2. Параметры ввода для создания списков.......................... 10

3. Параметры ввода для файловых операций..................... 12

Параметры вывода....................................................................... 13

1. Параметры вывода для редактирования......................... 13

2. Параметры вывода для создания списков....................... 14

3. Параметры вывода для файловых операций.................. 14

4. Параметры выходного и рабочего каталогов.................. 15

ПРОТОКОЛ РАБОТЫ И ОТЛАДКИ....................................... 16

УПРАВЛЕНИЕ РЕДАКТИРОВАНИЕМ.................................. 18

РЕДАКТИРОВАНИЕ С ПРЕРЫВАНИЕМ............................. 19

ЗАМЕНА КОНТЕКСТОВ................................................. 20

Контекст поиска  (спецсимволы)............................................... 21

Контекст замены  (спецсимволы).............................................. 23

Группы и групповые операторы в контекстах поиска и замены............................................................................................. 25

Таблица контекстов..................................................................... 27

Файл запроса.................................................................................. 27

Сборка строк и блоков редактирования в отдельный файл 28

ЗАМЕНА КОДОВ............................................................... 29

Входная кодировка....................................................................... 30

Выходная кодировка.................................................................... 30

Таблица перекодировки.............................................................. 30

Использование и получение кодировки Unicode.................... 31

ЗАМЕНА РЕГИСТРА........................................................ 33

РАБОТА СО СПИСКАМИ............................................... 34

Понятие списка............................................................................. 34

Создание списков.......................................................................... 34

Меню Файл(Список).................................................................... 35

ФАЙЛОВЫЕ ОПЕРАЦИИ............................................... 37

СЦЕНАРИЙ РЕДАКТИРОВАНИЯ................................ 42

ПЕРЕВОД МЕЖДУ СИСТЕМАМИ СЧИСЛЕНИЯ... 45

РЕДАКТОР ФАЙЛОВ....................................................... 46

Параметры настройки................................................................. 48

Работа с файлами.......................................................................... 49

Команды ручного редактирования........................................... 50

Контекстное редактирование..................................................... 53

Маркеры – точки перехода по файлу....................................... 54

Табуляторы – точки перехода по строке.................................. 54

Замена HEX-констант.................................................................. 56

Выборка фрагмента двоичного файла..................................... 56

Сортировка строк файла............................................................. 57

Получение аналога целого числа прописью........................... 57

Вставка кодов шрифтов, спецсимволов HTML, календарных дат.................................................................................................... 57

Сервисная обработка текста....................................................... 58

Формат-ресурс как база форматирования текста.............. 58

Стилевое оформление текста.................................................. 59

Создание Списков различной маркировки.......................... 61

Создание Таблиц, взаимосвязь с таблицами файлов других форматов..................................................................................... 64

Внедрение Картинок для отображения в файлах других форматов..................................................................................... 66

Вставка закладки (якоря)........................................................ 68

Вставка гиперссылки на внутренний ресурс...................... 69

Вставка гиперссылки на внешний ресурс............................ 70

Выравнивание текста по ширине.......................................... 70

Проверка орфографии.............................................................. 71

Редактирование с использованием автозамены и автотекста................................................................................... 72

Нахождение синонимов и антонимов слова......................... 73

Перевод текста на другие языки............................................ 74

Спецнабор для отображения нетекстовых структур............. 75

Понятие спецнабора.................................................................. 75

Математические формулы на базе Img-приложения......... 77

Картинки из файлов графических форматов...................... 78

Таблицы из tbl-файлов............................................................. 80

Списки различной маркировки............................................. 82

Генерация внешних и внутренних ссылок........................... 85

Обрисовка области страницы геометрической фигурой.. 86

Просмотр и печать документа по спецнабору..................... 87

Сравнение файлов........................................................................ 88

1. Сравнение по строкам.......................................................... 88

2. Сравнение по фрагментам................................................... 89

3. Поиск заданного фрагмента................................................ 91

ЛИТЕРАТУРА.................................................................... 93

 


ВВЕДЕНИЕ

 

 

Текстовый редактор "TeConv - комплексное редактирование каталогов и файлов" представляет собой многопрофильный редактор текстовой информации и состоит из Страничного блока и Редактора файлов.

 

Страничный блок предназначен для всестороннего редактирования файлов и каталогов (как одного файла и каталога, так и множества файлов из заданных каталогов), создания списков и выполнения файловых операций. Основные функции Страничного блока:

 

-

контекстный поиск и замена найденных контекстов;

-

сборка строк и блоков редактирования в отдельный файл;

-

преобразование различных кодировок символов
(
Win1251,  KOI8-R,  DOS  и  др.);

-

преобразование верхнего и нижнего регистров кодов;

-

создание информационных списков
(с заданиями на редактирование и выполнение файловых операций);

-

операции над файлами и каталогами
(с использованием и без использования списков);

-

создание сценариев редактирования;

-

перевод между различными системами счисления.

 

Редактор файлов позволяет работать с файлом произвольного размера и обеспечивает большое разнообразие видов редактирования и просмотра файла:

 

-

представление файла в разных режимах показа
(полная строка, короткая строка, двоичное представление);

-

представление файла в различных кодировках
(
Win1251, KOI8-R, DOS);

-

установка и удаление маркеров – точек перехода;

-

контекстный поиск и замена найденных контекстов
(в текстовом и двоичном представлении);

-

редактирование текстового представления файла в виде полных и коротких строк;

-

редактирование двоичного представления файла;

-

замена HEX-констант

-

выборка фрагментов двоичного файла

-

получение аналога целого числа прописью

-

cервисная обработка текста

(стилевое оформление, выравнивание текста по ширине, проверка орфографии, создание формат-ресурса с тегами вставки таблиц, картинок, списков, закладок и гиперссылок для последующей генерации файлов в форматах rtf и htm);

-

сравнение файлов
(построчное, пофрагментное, фрагментный поиск);

-

печать файлов.

 

Пользователю предоставляется возможность работать как в полном варианте редактора TeConv, так и с его отдельными частями, что достигается либо выбором клавиши загрузки, расположенной в меню головного окна редактора TeConv, либо через *.bat файл с соответствующим параметром командной строки (указан в скобках):

 

{  Полная версия  (ALL)  }

{  Редактор файлов  (ED)  }

{  Каталоги и файлы  (DFED)  }

{  Списки и файловые операции  (LED)  }

{  Перевод систем счисления  (NS)  }

 

Примеры загрузки TeConv через *.bat файл:

 

 TeConv.exe              //вызов меню головного окна

 TeConv.exe   ED      //вызов Редактора файлов

TeConv.exe   NS      //вызов страницы перевода между системами счисления

 

 

Другие параметры командной строки см. в разделе "Сценарий редактирования".

 

 

 

СТРУКТУРА РЕДАКТОРА

 

 

Полная версия текстового редактора TeConv состоит из пяти страниц (разделов), каждая из которых предназначена для определенных видов работы с файлами:

 

первая страница

-

для контекстного поиска и замены (см. раздел "Замена контекстов");

 

вторая страница

-

для преобразования различных кодировок символов

(см. раздел "Замена кодов");

 

третья страница

-

для преобразования верхнего и нижнего регистров кодов (см. раздел "Замена регистра");

 

четвертая страница

-

для создания информационных списков (см. раздел "Создание списков");

 

пятая страница

-

для операций над файлами и каталогами с использованием и без использования списков (см. раздел "Файловые операции");

 

шестая страница

-

для перевода целых чисел между системами счисления (см. раздел "Перевод между системами счисления").

 

 

Переход со страницы на страницу осуществляется при выборе заголовка ярлычка страницы, при этом страница становится активной и видимой на экране.

 

Базовым элементом TeConv является автономный редактор файлов, обеспечивающий большое разнообразие вариантов просмотра и редактирования множества файлов. Войти в него позволяет клавиша {Редактор файлов}, доступная с любой страницы TeConv.

 

При работе с редактором TeConv пользователь может воспользоваться справочной информацией, появляющейся на экране при нажатии клавиши {F1} или клавиши редактора {Помощь}.

 

 

 

ОСНОВЫ РАБОТЫ С РЕДАКТОРОМ

 

 

Каждая страница TeConv оперирует с входной и выходной информацией, задаваемой через параметры ввода/вывода. Эти параметры сгруппированы в одноименные контейнеры, элементы которых становятся доступными при выборе элемента списка из опций: "Входной текст" или "Выходной текст" (на страницах 1-3), "Источник списка" (на странице 4), "Тип операции" (на странице 5). Таким образом, в начале работы со страницей необходимо выбрать источник входной и выходной информации, после чего заполнить формы, к которым открыт доступ (формы, не требующие заполнения для заданного режима работы, становятся недоступными пользователю).

 

Редактирование файловых строк производится через диалоговое окно "Управление редактированием файлов", которое позволяет пользователю руководить процессом редактирования (отключить диалоговый режим редактирования до выполнения определенных условий, приостановить процесс в определенной точке, сделать коррекцию строк вручную, прервать редакцию текущего сеанса или совсем ее прекратить и др.). Результаты редактирования отражаются в протоколе работы.

 

Все страницы TeConv взаимосвязаны и могут обмениваться информацией в процессе работы через параметры ввода/вывода; для обмена информацией (в объеме одного файла) между различными программами Windows можно также использовать системный обменный буфер Clipboard.

 

Редактор TeConv позволяет создавать при работе со Страничным блоком сценарии редактирования, состоящие из макросов для отдельных этапов редакции на заданных страницах. При запуске сценария на выполнение воспроизводится редакция по всем указанным  в сценарии страницам с минимальным запросом на внешнее управление.

 

 

Настройки

 

Перед началом работы, если  необходимо, можно  поменять  параметры  настройки, в окне "Настройка параметров TeConv", которое вызывается по кнопке {Настройки} и содержит две вкладки параметров настроек. После выбора параметров на странице следует нажать кнопку {Установить}.

 

Вкладка "Настройка общих параметров": 

 

{Параметры протокола} - режим  создания  протокола  работы:  перезапись  файла  протокола заново или добавление информации в конец файла;

 

{Параметры установок}  - в режиме " сохранения установок сеанса входных параметров текущего сеанса устанавливаются такими же, какими они были в предыдущем сеансе; установки предыдущего сеанса хранятся в файле TeConv.ini, который автоматически заполняется  в  момент закрытия сеанса и располагается в том же каталоге, где и загрузочный  файл TeConv.exe; в режиме сохранения конфигурации TeConv фиксируются выбранная через головное  меню конфигурация  загрузки  комплекса ТеСonv и, в дальнейшем, Головное  меню уже не вызывается; чтобы изменить конфигурацию загрузки TeConv надо снять этот режим и при перезагрузке комплекса снова появится головное меню для выбора нужной конфигурации TeConv, а затем установить режим сохранения;

 

{Параметры контроля сохранения} - в режиме контроля сохранения вызывается диалоговый запрос на сохранение модифицированного файла или протокола работы перед закрытием редакторского окна;

 

{Параметры показа на статусной панели} - устанавливается признак показа входной строки редактирования для текстового файла;

 

{Количество элементов в раскрывающихся списках} - опция позволяет установить размер раскрывающихся списков для выбора ранее сохраненной информации (например, шаблонов входных файлов и т.п.). Диапазон значений параметра от 6 до 16 , по умолчанию устанавливается значение 8 ;

 

{Max число символов в строке файла протокола} - опция позволяет установить размер строки файла протокола, по умолчанию устанавливается значение 110 ;

 

{Размер сетки на поле Редактора} - опция позволяет установить размер сетки базовых линий на поле Редактора файлов, т.е. количество символов и количество строк, образующих клетку сетки, которую можно отображать в режимах показа полных и коротких строк ; показ сетки происходит при установке флага через опции Главного меню: {Правка}-->{Флаг: Показ сетки базовых линий}) ; по умолчанию устанавливаются значения 1 символ на 1 строку;

 

{Язык интерфейса} - опция позволяет установить русский или английский язык для работы в редакторе TeConv, при этом  интерфейс компонентов, опции меню, управляющие и диагностические сообщения, а также строки протокола будут отображаться на установленном языке. После нажатия кнопки {Установить} необходима перезагрузка редактора.

 

 

Вкладка "Настройка вывода дерева каталогов": 

 

Настройки производятся для начального показа левого и правого дерева  каталогов и включают выбор каталога загрузки, маску файлов из заданного каталога, отображаемых в окне файлов, и регистр показа имен каталогов и файлов:

    стандартный - первая буква имени заглавная, остальные буквы прописные,

    исходный         - реальный регистр букв файлового имени.

 

 

Параметры ввода

                        1. Параметры ввода для редактирования

 

Для различных видов редактирования (замена контекстов, замена кодов, замена регистра) параметры ввода определяются по выбору одного из следующих элементов раскрывающегося списка "Входной текст":

 

Входной каталог

-

имя входного каталога, определяющего начало поиска файлов;

 

Входной файл

-

имя файла с полным путем доступа;

 

Буфер Clipboard

-

системный обменный буфер, предназначенный для обмена информацией (в объеме одного файла) между различными программами Windows, а также внутри редактора TeConv;

 

Левый список

-

список, созданный в левом столбце информационной таблицы (см. раздел "Создание списков");

 

Правый список

-

список, созданный в правом столбце информационной таблицы (см. раздел "Создание списков").

 

При задании параметров ввода необходимо заполнить ряд опций и индикаторов, которые становятся доступными при конкретном выборе источника входного текста:

 

{Входной каталог} или {Входной файл} - опция заполняется путем ручного набора или в диалоге при нажатии клавиши  {Выбрать};

 

{Режим замены} - опция выбирается из раскрывающегося списка и определяет, как будет производиться редактирование - по содержимому файла или по списку файлов, если рассматривать входной файл как файл со списком (при работе с входным каталогом производится редактирование по содержимому файлов, а при работе со списками - по списку файлов);

 

{Шаблоны входных файлов} - опция является маской для выбора имен файлов из входного каталога и может содержать символы '?' и '*' для задания единичного и произвольных символов имени (например, *.*, test?.txt); шаблон задается через раскрывающийся список, позволяющий циклически хранить несколько вариантов шаблонов (количество элементов хранения устанавливается общими настройками), в том числе и список шаблонов с символом-разделителем ';' ;

 

{Искать в подкаталогах} - индикатор, указывающий область поиска входных файлов - по всем подкаталогам входного каталога или только в заданном каталоге;

 

{Без учета регистра} - индикатор, указывающий учитывается ли регистр символов при поиске контекстов;

 

{В диапазоне строк:} - индикатор, указывающий возможность поиска контекста только в указанном строковом диапазоне; номер начальной или конечной строки диапазона заносится в соответствующее поле числового значения границы диапазона, причем номер конечной строки файла может быть задан как -1;

 

{Входная кодировка} - кодировка содержимого входного файла (Win1251, DOS, KOI8-R); при установке опции автоматического выбора (Auto), если кодировка неизвестна, не всегда удается установить кодировку однозначно (например, когда в тексте нет прописных русских букв или их нельзя выявить) и в этом случае приоритет имеет кодировка Win1251.

 

 

                         2. Параметры ввода для создания списков

 

Для создания списков параметры ввода определяются по выбору одного из следующих элементов раскрывающегося списка {Источник списка}:

 

Входной каталог

-

имя входного каталога, определяющего начало поиска файлов или каталогов;

 

Выбор в диалоге

-

a) создание списка файлов, путем выборки из появляющегося диалогового окна (выбор нужных файлов производится курсором при нажатой клавише {CTRL}); следует иметь в виду, что расположение выбранных файлов в списке не всегда соответствует последовательности их выборки и для выполнения определенных последующих действий (например, объединение файлов списка в один) необходимо отредактировать список вручную; для более быстрого поиска необходимо установить начальный каталог и шаблон файлов выборки; b) выбор элемента списка каталога;

 

Файл со списком

-

имя файла с полным путем доступа, содержащего список имен; до этого файл мог быть создан любым текстовым редактором или сохранен средствами Меню Файл(Список);

 

Протокол

-

создание списка файлов по протоколу работы, созданному в процессе работы с другими страницами редактора TeConv;

 

Буфер Clipboard

-

системный обменный буфер, предназначенный для обмена информацией (в объеме одного файла) между различными программами Windows, а также внутри редактора TeConv;

 

Абстрактный

-

создание списка файлов или каталогов в соответствии с задаваемыми параметрами-шаблонами.

 

При задании параметров ввода необходимо заполнить ряд опций и индикаторов, которые становятся доступными при конкретном выборе источника входного текста:

 

{Входной (базовый) каталог} или {Файл со списком} или {Начальный (базовый) каталог выборки} - опция заполняется путем ручного набора или в диалоге при нажатии клавиши {Выбрать};

 

{Шаблоны входных файлов} - опция является маской для выбора имен файлов из входного каталога и может содержать символы '?' и '*' для задания единичного и произвольных символов имени (например, *.*, test?.txt); шаблон задается через раскрывающийся список, позволяющий циклически хранить несколько вариантов шаблонов (количество элементов хранения устанавливается общими настройками), в том числе и список шаблонов с символом-разделителем ';' ;

 

{Содержимое списка} - опция указывает на содержимое создаваемого списка: файлы или каталоги;

 

{Уровень от базы} - опция состоит из двух полей, определяющих условие выборки подкаталогов для списка: первое поле определяет режим выбора уровня (= | >= | <=), а второе поле определяет номер уровня от базового каталога; например, для включения всех подкаталогов базового каталога надо задать комбинацию ‘>=1’, а только текущего базового каталога - комбинацию ‘=0’ ; опция становится доступной, если задан режим поиска в подкаталогах;

 

{Искать в подкаталогах} - индикатор, указывающий область поиска входных файлов - по всем подкаталогам входного каталога или только в заданном каталоге.

 

                       3. Параметры ввода для файловых операций

 

Для файловых операций параметры ввода определяются по выбору одного из следующих элементов раскрывающегося списка "Тип операции":

С одним списком

-

операции, использующие левый или правый список;

 

С двумя списками

-

операции, использующие оба списка;

 

Без списка

-

операции, не использующие список;

 

По дереву каталогов

-

операции над деревом каталогов и файлов в рамках системы Windows.

 

При задании параметров ввода необходимо заполнить ряд опций и индикаторов, которые становятся доступными при конкретном выборе источника входного текста:

 

{Входной (базовый) каталог} или {Файл/каталог (с полным путем доступа)} или {Каталог (с полным путем доступа)} – опция, соответствующая типу операции, заполняется путем ручного набора или в диалоге при нажатии клавиши {Выбрать};

 

{Шаблоны входных файлов} - опция является маской для выбора имен файлов из списка и может содержать символы '?' и '*' для задания единичного и произвольных символов имени (например, *.*, test?.txt); шаблон задается через раскрывающийся список, позволяющий циклически хранить несколько вариантов шаблонов (количество элементов хранения устанавливается общими настройками), в том числе и список шаблонов с символом-разделителем ';' ;

 

{Содержимое списка} - опция указывает на содержимое обрабатываемого списка: файлы или каталоги;

 

{Базировать путь файла} - индикатор для операций с одним или двумя списками, указывающий на необходимость добавления имени входного (базового) каталога к именам файлов из списка;

 

{Левый список}, {Правый список} - индикатор, определяющий расположение списка в таблице просмотра.

 

 

Параметры вывода

                      1. Параметры вывода для редактирования

 

Для различных видов редактирования (замена контекстов, замена кодов, замена регистра) параметры вывода определяются по выбору одного из следующих элементов раскрывающегося списка "Выходной текст":

 

Выходной каталог

-

один или два каталога (выходной и рабочий) для размещения выходных файлов и копий исходных файлов;

 

Буфер Clipboard

-

системный обменный буфер, предназначенный для обмена информацией (в объеме одного файла) между различными программами Windows, а также внутри TeConv;

 

Левый список

-

список, создаваемый в левом информационном столбце таблицы в окне "Просмотр и редактирование списков";

 

Правый список

-

список, создаваемый в правом информационном столбце таблицы в окне "Просмотр и редактирование списков".

 

При задании параметров вывода необходимо заполнить ряд опций и индикаторов, которые становятся доступными при конкретном выборе приемника выходного текста:

 

{Выходной каталог} и {Рабочий каталог (для копий)}   -   опции устанавливаются только при нажатии клавиши {Параметры}, которая вызывает окно "Параметры выходного и рабочего каталогов";

 

{Сводный файл строк редактирования}   -   индикатор, указывающий на то, что в результате контекстной замены отредактированные строки будут собираться в единый файл с именем, задаваемым по запросу редактора;

 

{Только протокол}   -   индикатор, указывающий на то, что реальное редактирование не происходит, а в протокол заносится предполагаемый результат для предварительного изучения;

 

строки. Опция "Путь доступа", если она заполнена, определяет установку текущего  каталога  в  момент  запуска  внешнего процесса.

{Вид протокола}   -   раскрывающийся список, из которого выбирается вид создаваемого протокола: “Кратко-информационный”, “Строки поиска/замены”, “Список измененных файлов”, “Список неизмененных файлов”, “Без протокола”, “Отладочный” ;

 

{Статистика для протокола}   -   индикатор, указывающий на то, что в конце протокола выдается статистика по просмотренным файлам и каталогам.

 

 

                         2. Параметры вывода для создания списков

 

При создании списков учитывается ряд выходных параметров:

 

{Путь доступа от базы} - индикатор для определения вида файловых имен для внесения в список – с полным путем доступа или неполным, от базового каталога;

 

{Новый список} – индикатор, определяющий режим создания нового списка;

 

{Добавить в список} – индикатор, определяющий режим добавления в существующий список;

 

{Левый список}, {Правый список} - индикатор, определяющий расположение списка в таблице просмотра.

 

 

                  3. Параметры вывода для файловых операций

 

Для файловых операций параметры вывода определяются по выбору одного из элементов раскрывающегося списка "Тип операции":

 

С одним списком

-

операции, использующие левый или правый список;

 

С двумя списками

-

операции, использующие оба списка;

 

Без списка

-

операции, не использующие список.

 

При задании параметров вывода необходимо заполнить ряд опций и индикаторов, которые становятся доступными при конкретном выборе приемника выходного текста:

 

{Выходной каталог} - опция заполняется путем ручного набора или в диалоге при нажатии клавиши {Выбрать};

 

{Структурировать по базе} - индикатор, указывающий на необходимость создания перед выполнением операции переписи списка файлов структурного дерева базового каталога в выходном каталоге ;

 

{Использовать корзину} - индикатор, указывающий на необходимость помещать удаляемые каталоги и папки в корзину при выполнении файловых операций;

 

{Шаблоны файлов очистки} – опция является маской для выбора имен файлов очистки; полезные шаблоны файлов очистки: * - любые файлы (по умолчанию), *. - файлы без расширения, *.* - файлы с произвольным расширением; шаблон задается через раскрывающийся список, позволяющий циклически хранить несколько вариантов шаблонов (количество элементов хранения устанавливается общими настройками), в том числе и список шаблонов с символом-разделителем ';' ;

 

{Режим очистки подкаталогов} – раскрывающийся список, из которого выбирается вид очистки подкаталогов  - удалять, сохранять или не чистить.

 

 

                  4. Параметры выходного и рабочего каталогов

 

Диалоговое окно "Параметры выходного и рабочего каталогов" открывается опцией "Запись измененных файлов", выбранный элемент которой указывает место, куда будут помещаться отредактированные файлы – в рабочий каталог или в исходный каталог. При выборе исходного каталога в качестве выходного, его имя будет совпадать с именем входного каталогом. В случае редактирования по списку (файл или буфер обмена со списком, правый или левый список) исходный каталог задается словосочетанием "ListFiles (путь к каталогу в списке)", и это означает, что выходные файлы разместятся там же, где находятся исходные файлы списка.

 

Опция {Сохранять копии} позволяет задать рабочий каталог для сохранения исходных файлов. Дополнительные параметры определяют вид и содержание рабочего каталога:

 

-

индикатор копирования дерева (структуры) исходного каталога в рабочий каталог;

-

опция для копирования исходных файлов в рабочий каталог (все исходные файлы, только просмотренные файлы, только измененные файлы).

 

При выборе рабочего каталога в качестве выходного, дополнительным параметром является индикатор копирования дерева исходного каталога. Имя рабочего каталога автоматически отображается как выходной каталог. Выбор рабочего каталога осуществляется путем ручного набора или в диалоге при нажатии клавиши  {Выбрать}. В открывшемся окне для выбора рабочего каталога появляется возможность обращения к функциям, обеспечивающим подготовку рабочего каталога к работе:

 

Удаление файлов

-

чистка текущего каталога от файлов (подкаталоги сохраняются);

 

Удаление каталога

-

полная чистка текущего каталога и его удаление;

 

Создание каталога

-

создание нового каталога по запрашиваемому имени.

 

 

ПРОТОКОЛ РАБОТЫ И ОТЛАДКИ

 

 

Протокол работы создается в процессе редактирования всегда и хранится в файле _protoc.txt, который располагается в том же каталоге, где и основной загрузочный файл TeConv.exe. Вид протокола определяется опцией {Вид протокола}, которая содержит типы протокола (“Кратко-информационный” (тип 1), “Строки поиска/замены” (тип 2), “Список измененных файлов” (тип 3), “Список неизмененных файлов” (тип 3)) :

 

<Заголовок протокола>

===================

~~Базовый каталог: <полное имя каталога>

=================================

> 

~~Каталог: <имя каталога относительно базового каталога>

~~Файл неизменен: <имя файла>                                           (тип 1)

~~Файл изменен: <имя файла>                                                 

. . . . . . . . . . . . . . . . . . . . . . . . . .

~~Каталог: <имя каталога относительно базового каталога>

~~Файл изменен: <имя файла>                                                 

~~Строка: <номер строки файла>                                           (тип 2)

<исходная строка>                                                                       

<измененная строка (после редактирования)>                        

                                                                                                      

. . . . . . . . . . . . . . . . . . . . . . . . . .

~~<имя каталога относительно базового каталога> <имя файла>

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (тип 3)

~~<имя каталога относительно базового каталога> <имя файла>

. . . . . . . . . . . . . . . . . . . . . . . . . .

 

В протоколе типа 1 для каждого подкаталога относительно базового каталога выдаются имена всех файлов с отметкой об изменениях в процессе редактирования. В протоколе типа 2 выдается информация только об измененных файлах: исходная и измененная строка файла. В протоколе типа 3 формируется список имен, измененных или неизмененных в процессе редактирования файлов, вместе с путем доступа относительно базового каталога.

 

Протокол может отражать статистику (если задана опция {Статистика для протокола}) о просмотренных и отредактированных файлах по всем текущим каталогам просмотра, а также по одному файлу, если входная информация – не каталог. Таблица статистики содержит информацию по каждому просмотренному каталогу о числе измененных строк, числе измененных и неизмененных файлов, числе строк и байт в измененных и неизмененных файлах, числе найденных контекстов, времени, затраченном на редактирование каждого подкаталога, а также итоговую строку, суммирующую результаты по всем подкаталогам. Для одного файла таблица статистики содержит только информацию о числе измененных строк файла, числе найденных контекстов и времени, затраченном на редактирование файла.

 

Протокол типа 1 может быть использован для создания списков файловых имен: измененных, неизмененных и всех файлов. В процессе работы пользователь имеет возможность просмотреть протокол (клавиша  {Показать}) и сохранить его под запрашиваемым именем (клавиша  {Сохранить}).

 

Кроме этого существует два специальных режима протокола: “Без протокола“ и “Отладочный“. В первом случае протокол не содержит никакой информации о процессе редактирования, а во втором случае можно получить информацию о прохождении процесса редактирования, настроив протокол непосредственно перед началом редактирования. Для этого двойным кликом мышки по опции “Отладочный” следует вызвать окно для задания параметров отладочного протокола, которые включают в себя выдаваемые строки таблицы контекстов, ячейки общего архива, системные переменные, строки блока редактирования и номера строк файла редактирования. Отладочный протокол текущей редакции сохраняется под именем _prototl.txt и содержит для каждого шага редактирования из заданного диапазона таблицы контекстов:

Контекст поиска:  <контекст поиска текущей строки>

Контекст замены:  <контекст замены текущей строки>

Указатель по таблице контекстов:  <номер строки таблицы>

Выполнено условие  <номер условия>;  r*=. . .;  l*=. . .

Входная строка:_<набор текстовых и двоичных символов>

Указатель по строке:   <номер символа в строке>

{{N}}:  <содержимое N-ой ячейки архива>

sysvarN: <содержимое N-ой системной переменной>

{10}|N0..N1: <содержимое диапазона строк блока редактирования>

N: <номер строки файла редактирования>

 

 

При выполнении сценария помимо основного протокола редактирования создается протокол прохождения сценария _protscr.txt, который становится доступным к просмотру и сохранению после выполнения сценария и содержит:

 

<Заголовок протокола>

~~Сценарий редактирования из: <файл сценария>

 

#[<имя страницы редактирования>] {1}

><команда/операция[: <параметр>,…<параметр>]>

 

. . . . . . . . . . . . . . . . . . . . . . . . . . .

#[<имя страницы редактирования>] {n}

><команда/операция[: <параметр>,…<параметр>]>

 

КОНЕЦ СЦЕНАРИЯ

 

 

УПРАВЛЕНИЕ РЕДАКТИРОВАНИЕМ

 

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

 

ENTER

-

разрыв строки;

BACKSPACE

-

удаление символа, стоящего перед курсором;

Позиция курсора

-

перед началом следующего поиска.

 

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

 

{Единичная замена}

-

для найденного контекста;

 

{До конца текущего файла}

-

для всех контекстов в текущем файле;

 

{Для файлов текущего типа}

-

для всех файлов с текущим расширением;

 

{Для всех входных файлов}

-

до конца текущей редакции.

 

Процесс редактирования можно приостановить посредством клавиши  {Приостановить}. При этом создается список всех уже найденных и обработанных файлов и запоминается текущее состояние параметров редактирования. Продолжение редактирования может быть выполнено в следующем сеансе или же в текущем сеансе на любой странице TeConv. Для продолжения редактирования следует нажать клавишу  {Продолжить}, по которой вызывается окно "Параметры продолжения редактирования". Это окно позволяет осуществить подготовку к дальнейшему редактированию и продолжить процесс редактирования файлов.

 

Процесс редактирования можно оборвать в редакторском диалоге посредством нажатия клавиши  {Закончить} или непосредственно в момент редактирования посредством клавиши {ESC}. В этом случае перед окончанием процесса запоминание текущего состояния параметров редактирования не происходит.

 

РЕДАКТИРОВАНИЕ С ПРЕРЫВАНИЕМ

 

 

Процесс редактирования может быть приостановлен, т.е. временно прерван (например, для изменения параметров редактирования) путем управления редактированием. Для продолжения прерванного редактирования необходимо установить ряд опций в окне "Параметры продолжения редактирования" (эти опции используют информацию рабочих файлов, сформированных при выходе из предыдущего сеанса редактирования):

 

{Начало редактирования} - определяет имя файла и позицию в нем для продолжения редактирования. При выборе опции {С начала файла, выбранного из списка ...}, появляется окно "Список отредактированных файлов", в котором находятся имена файлов уже отредактированных к данному моменту. Таким образом, выбрав файл из этого списка, можно задать повторное редактирование;

 

{Шаблоны поиска и замены} - могут быть взяты из предыдущего сеанса или же заданы заново в текущем сеансе; однако следует отметить, что при продолжении процесса редактирования при установке любой начальной позиции поиск всегда начинается с начала заданной таблицы контекстов;

 

{Режим записи в протокол} – параметр определяет работу с протоколом: производить дозапись в предыдущий протокол или оставить режим записи в протокол, установленный общими настройками.

 

Входной каталог и шаблоны входных файлов всегда должны соответствовать предыдущему сеансу, в противном случае пользователь получит запрос на их соответствие и в случае отрицательного ответа продолжения редакции не будет. После установки параметров редактирования продолжение процесса осуществляется клавишей  {Продолжить редактирование}.

 

ЗАМЕНА КОНТЕКСТОВ

 

 

Контекстная замена символов производится путем поиска всех контекстов последовательно, начиная с первого символа строки, затем второго, третьего и т.д. пока контекст не будет найден. После замены контекста поиск контекстов в строке продолжается с символа, стоящего во входной строке после найденного контекста. Поиск контекстов по строке прекращается при просмотре всех символов строки. Если контекст поиска содержит 16-ный контекст (начинается с символа '\'), то при чтении исходной строки к ней присоединяются символы конца строки #$d#$a (соответствуют контексту \0d\0a) и это обстоятельство позволяет задавать контекстные замены, изменяющие или использующие конец строки. Полезные контексты, в частности содержащие символы конца строки, находятся в локальной базе данных контекстов и могут быть загружены из базы данных в таблицу контекстов для последующей модификации и использования.

 

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

 

Контексты берутся из заданной на экране таблицы контекстов, которую можно набрать вручную или загрузить из файла запроса. Для удобства редактирования таблицы можно использовать ее укрупненный вид, вызываемый из вспомогательного меню при нажатии правой клавиши мыши. Параметры ввода, вывода и редактирования необходимо задать перед запуском программы редактирования.

 

Работа программы начинается при нажатии клавиши {Начать} и происходит в диалоговом режиме (см. управление редактированием файлов). Клавиша {Продолжить} обеспечивает продолжение редакции, если перед этим предыдущий процесс редакции был прерван.

 

 

Контекст поиска  (спецсимволы)

 

%

-

контекст ищется в начале строки (следующий символ контекста - первый в строке);

 

$

-

контекст ищется в конце строки (предшествующий символ контекста - последний в строке);

 

?

-

любой символ строки;

 

*

-

предыдущий символ (символьное выражение или группа) может повторяться 0 или более раз;

 

+

-

предыдущий символ (символьное выражение или группа) может повторяться 1 или более раз;

 

[ ]

-

символьное выражение, определяющее набор символов, допустимых в контексте; например, [abcd] означает, что контекст может содержать символы a или b или с или d ;

 

-

-

диапазон символов, задаваемых в выражении; например, [a-bd-z] означает, что контекст может содержать любую букву от a до z, кроме c ;

 

~

-

a) операция отрицания в выражении; например, [~abc] означает, что контекст может содержать любой символ, кроме символов a, b или c ;

b) отрицание наличия символов в строке между найденными группами; например контекст поиска {aa}~{bb} в строке aaccbbccaabb соответствует только подстроке aabb , т.к. между группами нет других символов;

@

-

следующий символ в контексте не управляющий; например, для поиска символа ? надо задать @? ;

 

|

-

символы контекста должны удовлетворять или предыдущему (до | ) или последующему (после | ) условиям; например; bc|d означает, что в контексте могут быть символы abc или abd ;

 

{ }

-

группа, состоящая из отдельных символов или символьных выражений, к которой могут быть применены также операции +, * и |; например, {ab}|{cd}; каждая группа в шаблоне поиска нумеруется от 1 до 9 и аналогичный номер имеет найденный для нее контекст; например, каждой группе из шаблона {%a?c|d}{a?c|d}{a?c|d$} в строке aed abc abd соответствуют три группы контекстов: 1-я группа - aed , 2-я группа - abc , 3-я группа - abd ;

 

\

-

следующие два символа задают 16-ное представление контекста; например, \0d ;

 

%%

-

спецсимволы стоят в начале контекста и определяют последующий контекст поиска начальной строки блока редактирования (см. раздел "Сборка строк и блоков редактирования в отдельный файл");

 

$$

-

спецсимволы стоят в начале контекста и определяют последующий контекст поиска конечной строки блока редактирования (см. раздел "Сборка строк и блоков редактирования в отдельный файл").

 

Примеры контекстной замены:

 

Контекст поиска:

Контекст замены:

Комментарий:

POISK

 

поиск контекста POISK  (тождественная замена);

@*+I|j

$

перенос строки перед символами *i, *j, **i, **j, ...;

[ab]+c

ABC

замена символов abc, ababc, ...;

{p1}{p2}{p3}

#2#3#1

перестановка групп в строке p1,p2,p3  в строку  p2,p3,p1  ;

{?*}

<b>#1</b>

обрамление тегами всей строки

<b> … </b>  ;

{?*aa?*}|{?*bb?*}

<i>#1</i><br>

обрамление тегами строк, содержащих контексты aa или bb ;

{Stroca 1}

#1\0d\0aStroca 2

замена одной строки Stroca1 на две Stroca1 и Stroca2  ;

{#0000FF}|{BLUE}

@#0000CC

замена цветового кода, заданного разными кодировками;

{%a?b}|{b?a$}

""

исключение концевых контекстов с любым центральным символом;

{%?}

<p>#1

добавление тега в начало строки;

{?$}

#1</p>

добавление тега к концу строки;

\0a

\0d\0a

замена концов строк (например, для разделения "слитых" строк);

" "\0d

\0d

Исключение конечного пробела строки (для двоичного представления).

 

 

Контекст замены  (спецсимволы)

 

%

-

удаление найденного контекста в строке поиска (для удаления группы n из строки ставится после #n);

 

$

-

вставка символа переноса каретки /новая строка/  перед контекстом поиска (для переноса группы n на следующую строку ставится перед #n); ); как контекст замены для простого контекста поиска обеспечивает разбиение входной строки после найденного контекста;

 

#n

-

вставка контекста, соответствующего группе с номером n (предполагается, что найденный контекст содержал не менее n групп);

 

#*

-

вставка контекста, соответствующего любой из найденных альтернативных групп;

 

#[ ]

-

групповой оператор - вычисляемый контекст замены на базе групп контекстов поиска и блоковых функций (обязательная оболочка при задании последовательности действий для найденного контекста поиска); см. "Текстовый Редактор TeConv. Специальные средства для контекстного редактирования";

 

@

-

следующий символ в контексте не управляющий; например, для вставки символа # надо задать @# ;

 

\

-

следующие два символа задают 16-ное представление контекста; например, конец строки \0d .

 

 

Если контекст замены содержит символ пробела или двойные кавычки, то весь контекст надо заключить в двойные кавычки; пустые двойные кавычки в контексте замены означают, что контекст поиска будет исключен из входной строки; пустой контекст замены сохраняет контекст поиска в неизменном виде.

 

Использование групп в контекстах замены обеспечивает достаточно большие возможности контекстного редактирования файловых строк. Подробнее аппарат групп описан в разделе "Группы и групповые операторы в контекстах поиска и замены".

 

Примеры контекстной замены:

 

Контекст поиска:

Контекст замены:

Комментарий:

POISK

 

поиск контекста POISK  (тождественная замена);

@*+I|j

$

перенос строки перед символами *i, *j, **i, **j, ...;

[ab]+c

ABC

замена символов abc, ababc, ...;

{p1}{p2}{p3}

#2#3#1

перестановка групп в строке p1,p2,p3  в строку  p2,p3,p1  ;

{?*}

<b>#1</b>

обрамление тегами всей строки

<b> … </b>  ;

{?*aa?*}|{?*bb?*}

<i>#1</i><br>

обрамление тегами строк, содержащих контексты aa или bb ;

{Stroca 1}

#1\0d\0aStroca 2

замена одной строки Stroca1 на две Stroca1 и Stroca2  ;

{#0000FF}|{BLUE}

@#0000CC

замена цветового кода, заданного разными кодировками;

{%a?b}|{b?a$}

""

исключение концевых контекстов с любым центральным символом;

{%?}

<p>#1

добавление тега в начало строки;

{?$}

#1</p>

добавление тега к концу строки;

\0a

\0d\0a

замена концов строк (например, для разделения "слитых" строк);

" "\0d

\0d

исключение конечного пробела строки (для двоичного представления).

 

 

Группы и групповые операторы в контекстах поиска и замены

 

Мощным средством контекстного редактирования является определение и использование групп. В строке поиска допускается нахождение не более 9 групп, которые идентифицируются границами байтовых диапазонов в исходной строке для каждой найденной группы. Каждая группа в контексте поиска задается в граничных спецсимволах {}. Контекст поиска может содержать последовательность групп (неальтернативный групповой контекст) или группы, разделенные символом ‘|’ (альтернативный групповой контекст). Для неальтернативного группового контекста действуют следующие правила:

-       если хотя бы одна из групп в контексте не найдена, то и весь контекст поиска считается не найденным;

-        если в контексте поиска группа соседствует с другими негрупповыми конструкциями, то контекст группы будет найден, если соответствующие этим конструкциям символы будут непосредственно "примыкать" в строке поиска к символам группы;

-        если контекст поиска состоит только из групп, то найденные групповые контексты могут произвольно отстоять друг от друга в строке поиска, при этом, не нарушая порядок следования групп.

Альтернативный групповой контекст считается найденным, если найдена хотя бы одна заданная группа.

 

В соответствии со стандартными правилами, контекстная замена групп определяется номером n в контексте замены #n и местом положения этого подконтекста в полном контексте замены: порядок расположения подконтекста #n относительно всех групп в полном контексте замены соответствует номеру группы, которую надо заменить, а номер группы n - на какую группу надо заменить. Например, контекст замены #3#1#2 означает, что первая группа меняется на третью, вторая на первую, а третья на вторую, при этом сохраняются символы исходной строки, расположенные между группами. Иногда для всех групп делается однотипная редакция, тогда в качестве номера группы в контексте замены используется символ ‘*’ (например, исключение всех групп входной строки: #*% ).

 

Для удаления символов группы из строки необходимо в контексте замены спецсимвол ‘% поставить сразу же за группой ( #n% ). Разделение строки происходит по ряду правил:

-       перед контекстом, которому предшествует спецсимвол ‘$ , если задано более одного контекста поиска (например, разделение строки, содержащей контексты n1 и n2, перед контекстом n2 : #n1$#n2 );

-        перед первым контекстом в строке поиска, если в строке замены не был еще использован ни один из найденных контекстов (например, вставка новой строки перед первым контекстом строки, содержащей контексты n1 и n2, если контекст n1 находится в начале строки : новая строка$ );

-       за контекстом, если этот контекст единственный или последний в строке поиска (например, разделение строки, содержащей контексты n1 и n2, после последнего контекста : #n2$ ).

 

Вместо номера группы в контексте замены может быть задана последовательность групповых операторов, позволяющая значительно расширить и идентифицировать область контекстных преобразований. Подробно эта методика описана в статье "Текстовый Редактор TeConv. Специальные средства для контекстного редактирования".

 

 

Таблица контекстов

 

Таблица контекстов может быть набрана вручную или загружена из ранее созданного файла запроса (клавиша  {Загрузить запрос}). Находящаяся на экране таблица может быть также записана в файл (клавиша  {Сохранить запрос}) под заданным в файле запроса именем.

 

Каждая строка таблицы контекстов состоит из четырех столбцов: [номер контекста], контекст поиска, контекст замены, [комментарий]. Первый и четвертый столбцы необязательны, но если не задан комментарий, то при сохранении контекста он определяется как "Контекст <номер строки таблицы>".

 

Ячейки таблицы контекстов можно редактировать, используя клавиши:

 

ENTER

-

добавление пустой строки в конец таблицы, если заполнен последний столбец таблицы;

DELETE

-

удаление символов в ячейке таблицы;

Ctrl+DELETE

-

удаление строки, содержащей курсор;

Ctrl+INSERT

-

вставка пустой строки таблицы перед строкой, содержащей курсор;

TAB, стрелки

-

"хождение" по строкам и столбцам таблицы.

 

Для удобства набора и редактирования таблицы контекстов можно развернуть таблицу, используя вспомогательное меню, вызываемое правой клавишей мыши (меню позволяет также работать со спецсредствами для контекстного редактирования). При наборе контекста можно с помощью двойного щелчка мыши по соответствующей ячейке отобразить ее в нижней части окна, что облегчает набор и редактирование текста. Убирается строка с экрана двойным щелчком мыши по ней. Символ '!' в первой позиции контекста поиска является признаком комментария для всей строки таблицы контекстов.

 

 

Файл запроса

 

Файл запроса на контекстное редактирование является текстовым файлом следующей структуры:

[Заголовок файла]

> 

~~<Комментарий для контекста 1>

<Контекст поиска 1>

<Контекст замены 1>

 

. . . . . . . . . . . . . . . . . . .

~~< Комментарий для контекста n>

<Контекст поиска n>

<Контекст замены n>

 

Файл запроса может быть создан путем сохранения таблицы контекстов в файле (клавиша  {Сохранить запрос}) или набран в каком-либо текстовом редакторе. Загрузка файла запроса осуществляется клавишей  {Загрузить запрос}.

 

При записи и чтении запроса должно быть задано полное имя файла запроса в опции {Файл запроса}. Эта опция является раскрывающимся списком, элемент которого “Выбор в диалоге”, вызываемая двойным кликом мышки, дает возможность пользователю выбрать файл из каталога в диалоговом окне, а не набирать вручную его полное имя. Если в опции выбран элемент “Системный файл”, то по умолчанию файл запроса сохраняется (а в последствии оттуда читается) в рабочем файле _tabcnt.tab, расположенном в том же каталоге, что и загрузочный файл TeConv.exe. Если в опции выбран элемент “База данных”, то контекст может быть экспортирован (загружен) из локальной базы данных, расположенной там же, где и загрузочный файл (база данных Paradox в файлах TeConvC.db, TeConvC.mb, TeConvC.px). База данных доступна для чтения, редактирования и записи запросов посредством клавиш загрузки или сохранения запроса.

 

Работа с базой данных производится в специальном окне, которое содержит навигатор по базе данных и средства редактирования базы. Запрос, выбираемый из базы или помещаемый в базу, отображается в обменной таблице, которая взаимосвязана с записью, выделенной в базе средствами навигации или добавленной в конец базы при использовании клавиши {Tab}. Запись отредактированного запроса в базу данных производится с кэшированием, т.е. требуется нажатие специальной клавиши для фиксации сделанных изменений в базе данных.

 

 

Сборка строк и блоков редактирования в отдельный файл

 

При контекстном редактировании имеется возможность собирать отредактированные строки или блоки из одного или нескольких просматриваемых файлов в отдельный файл. Для этой цели необходимо задать опцию {Сводный файл строк редакции} и сформировать таблицу контекстов. Если для контекста поиска отсутствует контекст замены, то это означает, что найденная по контексту поиска строка войдет в сводный файл без изменения. Имя выходного сводного файла будет запрошено в процессе редактирования, а разместится он в заданном выходном каталоге. Контексты поиска/замены для выборки одной строки задаются обычным образом, а для поиска блока редактирования, который может включать несколько файловых строк, задается блоковый контекст поиска, в котором специальные конструкции (%% и $$) определяют поиск начальной и конечной строки блока:

 

%%<контекст поиска начальной строки блока>

<контекст поиска внутренних строк блока>

$$<контекст поиска конечной строки блока>

 

Более подробно описание блока и использование его как инструмента при контекстной замене дано в работе "Текстовый Редактор TeConv. Специальные средства для контекстного редактирования".

 

Сборка строк и блоков редактирования в отдельный файл может успешно использоваться в сценариях, где существует возможность организовать итерационный процесс для программно изменяемых контекстов поиска (см. раздел "Сценарий редактирования").

 

 

ЗАМЕНА КОДОВ

 

Замена кодов затрагивает кодирование русских букв (символы с кодами 128-255) в различных кодировках, которыми в основном эти кодировки и отличаются, т.к. кодировка латинских букв (символы с кодами 0-127) является их общей частью. Область поиска и размещение результата редактирования определяются заданием параметров ввода/вывода для редактирования. Существенным моментом является выбор при вводе режима замены, который определяет способ редактирования входного текста. Возможны два варианта работы: редактирование содержимого входного текста или интерпретация входного текста как файла со списком, каждая строка которого определяет полное имя входного файла, текст которого и будет редактироваться.

 

Установка входной кодировки и выходной кодировки осуществляется путем выбора соответствующих значений из одноименных списков. Помимо этого можно использовать при замене кодов таблицу перекодировки пользователя, которая задается в специальном окне, вызываемом клавишей {Задать таблицу перекодировки}. Доступ к этой клавише появляется при установке индикатора {Использовать таблицу перекодировки}. Параметры ввода, вывода и редактирования необходимо задать перед запуском программы редактирования.

 

Работа программы начинается при нажатии клавиши {Начать} и происходит в диалоговом режиме (см. управление редактированием файлов). Клавиша {Продолжить} обеспечивает продолжение редакции, если перед этим предыдущий процесс редакции был прерван.

 

Входная кодировка

 

Входная кодировка выбирается из переключательного списка. Кроме стандартных кодировок (Win1251, DOS, KOI8-R) предлагается кодировка Lat1 - представление одной русской буквы как одна латинская для букв одинакового начертания. При необходимости, выбор исходной кодировки можно сделать автоматически (Auto), если кодировка неизвестна, но правильность определения будет гарантирована только тогда, когда экспертизе подвергается полноценный русскоязычный текст, т.е. в нем содержатся предложения, начинающиеся с прописной буквы после точки.

 

Выходная кодировка

 

Выходная кодировка выбирается из переключательного списка. Кроме стандартных кодировок (Win1251, Win1251(нижний регистр), Win1251(верхний регистр), DOS, KOI8-R) предлагаются кодировки: Lat1 - представление одной русской буквы как одна латинская для букв одинакового начертания, LatN – представление одной русской буквы как сочетание нескольких латинских (транслитерирование), Rus - русская транскрипция латинских букв (детранслитерирование).

 

Например:

 

Win1251

->

LatN

 

Win1251

->

Rus

ЧАСЫ

 

CHASY

 

Yulya

 

Юля

Щель

 

schel'

 

Yula

 

Юла

 

 

Таблица перекодировки

 

Таблица перекодировки пользователя задает исходную и выходную кодировку символов для выполнения замены кодов.

 

Строка таблицы перекодировки представляет из себя номер байта, за которым через пробел в фигурных скобках приводится его символьное представление во входной кодировке (для нетекстовых символов приводится значение {-}), затем следует указатель и далее в фигурных скобках символьное представление в выходной кодировке. После этого через пробел записывается выходной код, которому предшествует символ '\' (обратный слеш). Например,

042  {*}->{*}  \042

 

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

  -  своим символьным представлением,

  -  цифровой кодировкой, которой предшествует символ '\' .

 

Например, для кодировки Win1251 строка таблицы перекодировки символа * в !*! (один в три) может быть задана одним из следующих способов:

 

042  {*}->{*}  !*!

042  {*}->{*}  \033\042\033

042  {*}->{*}  \033*!

 

Таблица перекодировки создается в окне "Таблица перекодировки пользователя", вызываемом клавишей  {Задать таблицу перекодировки}, и строится, как правило, на основе  таблицы-шаблона, которую можно загрузить, выбрав входную и выходную кодировки, а затем вручную отредактировать.

 

Можно загрузить таблицу клавишей  {Загрузить таблицу из файла}, если она была создана раньше, задав полное имя файла перекодировки в опции {Файл перекодировки}. Эта опция является раскрывающимся списком, элемент которого “Выбор в диалоге” дает возможность пользователю выбрать файл из каталога, а не набирать вручную его полное имя. Готовую таблицу перекодировки можно сохранить на диске под заданным там же именем, нажав клавишу  {Сохранить таблицу в файле}.

 

 

Использование и получение кодировки Unicode

 

Наиболее распространенной кодировкой текста для  обмена  информацией является ASCII -  7-битная компьютерная кодировка  для  представления латинского  алфавита, десятичных  цифр,  некоторых   знаков   препинания, арифметических   операций   и управляющих символов (вариант ASCII без национальных символов называется US-ASCII). Впоследствии оказалось удобнее использовать 8-битные кодировки  (кодовые страницы), где нижнюю половину кодовой таблицы (0..127) занимают  символы  US-ASCII, а верхнюю (128..255) — разные другие нужные символы (например, символы кириллицы).

 

Проблемы с перекодировкой из одной таблицы в  другую,  а  также  необходимость показывать на странице текста различные языки привели к созданию Юникод (Unicode) — стандарта кодирования символов, позволяющего представить знаки  практически  всех письменных языков. Применение этого стандарта позволяет закодировать очень большое число символов из разных письменностей: в документах Unicode могут соседствовать китайские иероглифы, математические символы, буквы греческого алфавита, латиницы и кириллицы, при этом становятся ненужными кодовые страницы. В Unicode первые 128 символов совпадают с соответствующими символами US-ASCII. Unicode представляет собой кодировку с фиксированным размером символа в 16 бит (UTF16),то  есть общее число базовых кодов - 65536 (кодовое пространство Unicode может быть расширено до 2**20 + 2**16 (1 114 112) символов).

 

Наряду с UTF16 был изобретен формат UTF8, реализующий представление Unicode, совместимое с 8-битным кодированием текста. Текст, состоящий только из символов с номером меньше 128, при записи в UTF8 превращается в обычный текст ASCII. И наоборот, в тексте UTF8 любой байт со значением меньше 128 изображает символ ASCII с тем же кодом. Остальные символы Unicode изображаются последовательностями длиной от 2 до 4 байтов. Проще говоря, в формате UTF8 символы латинского алфавита, знаки препинания и управляющие символы ASCII записываются кодами  US-ASCII, а остальные символы кодируются при помощи нескольких октетов со старшим битом 1. Использование кодировки UTF8 часто аргументируется рядом причин:

 

• Даже если программа не распознаёт Unicode, то латинские буквы, арабские цифры и знаки препинания будут отображаться правильно.

В случае, если латинские буквы и простейшие знаки препинания (включая пробел) занимают существенный объём текста (например, в европейских языках, включая основанные на кириллице), UTF8 даёт выигрыш по объёму по сравнению с UTF16.

• Необходимость в UTF8 объясняется еще и тем, что большинство браузеров не понимают формат UTF16.

 

Для перекодировки в/из Unicode или с его использованием необходимо корректно задать входную и выходную кодировку. В меню этих кодировок есть возможность задать входную и выходную кодировку Unicode_(UTF16). При этом данной кодировке при задании запроса на перекодирование должна соответствовать кодовая страница CP_N_ , где N - номер кодовой страницы. Допускается возможность перекодирования символов файла из одной кодовой страницы в другую через внутреннее представление в Unicode. Номер кодовой страницы может быть выбран в соответствующем меню входной или выходной кодировки из списка кодовых страниц  СР_1252_(WIN), CP_866_(DOS),  CP_65001_(UTF8) или задан самим пользователем вместо точек в выбранной строке соответствующего меню CP_..._(Кодовая страница номер ...).

 

 

ЗАМЕНА РЕГИСТРА

 

Замена регистра символа осуществляется по выбранному типу преобразования:

  -  на верхний регистр;

  -  на нижний регистр;

  -  поменять регистры.

 

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

 

Кроме общих соглашений для параметров ввода при работе с входным каталогом предусмотрена возможность замены регистра не только для содержимого файлов, но для имен файлов и каталогов. Тип преобразования регистра задается выбором одного из элементов представленного выше списка (для замены регистра в именах допустимы только первые два типа). Для корректного изменения регистра необходимо установить входную кодировку путем выбора соответствующих значений из списка. Параметры ввода/вывода, тип преобразования и входную кодировку необходимо задать до начала программы редактирования.

 

Работа программы замены регистра для содержимого файла начинается при нажатии клавиши {Начать} в блоке "Замена регистра внутри файла" и происходит в диалоговом режиме (см. управление редактированием файлов). Клавиша {Продолжить} обеспечивает процесс продолжения редакции, если перед этим предыдущий процесс редакции был прерван.

 

Работа программы замены регистра в именах файлов и каталогов начинается при нажатии клавиши {Начать} в блоке "Замена регистра в имени файла" и производится в бездиалоговом режиме. В качестве параметров ввода/вывода необходимо задать только входную директорию и файловые шаблоны, т.к. замена имен производится в исходном каталоге. Результаты работы отражаются в протоколе работы, где наряду с преобразовываемым именем выводится код возврата (RET_CODE=1, если преобразование прошло успешно).

 

 

РАБОТА СО СПИСКАМИ

 

Создание и использование списков является удобным инструментом для редактирования группы файлов, т.к. преимуществом использования списка является то, что при его создании можно заранее определить какие файлы и из каких каталогов подлежат редактированию. Кроме этого списки являются базовой основой для выполнения операций над файлами и каталогами. Таким образом, списки, создаваемые на одной из страниц редактора TeConv, могут быть использованы на любой другой его странице (см. раздел "Структура редактора").

 

Понятие списка

 

Список – это перечень имен файлов с путем доступа к ним, а работа со списками предполагает их создание, просмотр и редактирование. Имена файлов, входящих в список, могут быть полными (с полным путем доступа) или неполными (с путем доступа относительно базового каталога). Это определяется значением индикатора {Путь доступа от базы} при задании параметров ввода. Помимо файловых списков могут  быть созданы списки, содержащие имена каталогов различных уровней, в которых также допускается базирование относительно базового каталога.

 

В зависимости от расположения списка в столбцах выходной информационной таблицы могут быть созданы два вида списка: левый список (файл) - располагается в левом столбце таблицы и правый список (файл) - располагается в правом столбце таблицы. Доступ к созданному списку открывается путем нажатия клавиши {Просмотр и редактирование списков}, что обеспечивает вызов окна "Просмотр и редактирование файлов (списков)", которое позволяет увидеть созданные списки, отредактировать и записать их средствами Меню Файл(Список);

 

Создание списков

 

Для создания списка необходимо выбрать источник списка и задать входные параметры, описанные в разделе "Параметры ввода для создания списков", после чего выбрать опцию переключательного списка для типа списка (левый или правый). Создание списка осуществляется при нажатии высветившейся клавиши:

{По входному каталогу}

-

создание списка файлов из файлов каталога или списка каталогов из подкаталогов, заданного уровня;

{По выбору в диалоге}

-

создание списка файлов или списка каталогов путем выбора из соответствующих диалоговых окон;

{По файлу со списком}

-

создание списка из строк заданного файла;

 

{По протоколу}

-

создание списка файлов по протоколу работы;

{По буферу Clipboard}

-

создание списка из строк файла, находящегося в буфере;

{Абстрактный}

-

создание абстрактного списка по параметрам, задаваемым на одноимённой форме и включающим в себя: имя каталога, префикс имени файла, начальный позиционный индекс (например, 001), расширение файла и размер создаваемого списка (-1 – по параллельному правому или левому списку); при создании списка каталогов расширение не задается.

 

 

Меню Файл(Список)

 

Меню предназначено для создания, просмотра, редактирования и записи списков. Вся информация в виде таблицы отображается в окне "Просмотр и редактирование файлов (списков)". Таблица состоит из пяти столбцов:

 

<NN><признак сравнения><лев. список><прав. список><признак сравнения>,

где

 

<NN>

-

порядковый номер (1,2,3,...);

<'*' - признак сравнения для левого списка>

-

признак устанавливается после выполнения операции сравнения;

<левый список>

-

список имен файлов, загруженный в третий столбец таблицы;

<правый список>

-

список имен файлов, загруженный в четвертый столбец таблицы;

<'*' - признак сравнения для правого списка>

-

признак устанавливается после выполнения операции сравнения.

 

Для работы с левым или с правым списком определены отдельные опции меню, которые предназначены для загрузки информации из входного файла в соответствующий правый или левый список (столбец таблицы) и записи информации из соответствующего списка (столбца таблицы) в выходной файл. Эти операции производятся в зависимости от заданных режимов:

 

Дозагрузка

-

дополнение строк списка без предварительной его очистки;

Дозапись

-

дополнение содержимого выходного файла без предварительной его очистки.

 

 

Для выполнения конкретных операций определены следующие опции меню:

 

Загрузить из файла

-

вызывается диалоговое окно для задания имени файла и осуществляется загрузка этого файла в соответствующий список;

Загрузить из буфера

-

загрузка соответствующего списка из буфера обмена Clipboard;

Записать в файл …

-

вызывается диалоговое окно для задания имени файла и осуществляется запись в файл информации из заданного списка (все строки, строки с признаком '*', строки без признака '*');

Записать в буфер …

-

осуществляется запись информации в буфер обмена Clipboard из заданного списка (все строки, строки с признаком '*', строки без признака '*');

Дублировать

-

перенос строк заданного списка в соседний список с учетом заданного режима дозагрузки;

Отсортировать …

-

сортировка списка (по алфавиту, по размеру файла,  по дате записи файла);

Выбрать …

-

выборка элементов списка файлов по дате создания или по размеру файла;

Очистить

-

очистка заданного списка;

 

Удалить строки …

-

удаление строк списка по номеру строки или диапазону строк N1..N2, задаваемому в окне запроса;

Сравнить …

-

сравнение списков по заданному критерию (построчно, по кратким именам файлов) и запись признака '*' в случае совпадения в соответствующий столбец таблицы;

 

Расширенная информация

-

длина, размер, дата и время создания файла.

 

Строки информационной таблицы, содержащие списки, можно редактировать, используя клавиши:

 

ENTER

-

добавление пустой строки в конец таблицы;

DELETE

-

удаление символов в ячейке таблицы;

Alt+DELETE

-

удаление из таблицы всей строки, содержащей сфокусированную ячейку;

Alt+INSERT

-

вставка пустой строки таблицы перед строкой, содержащей сфокусированную ячейку;

Shift+Alt+DEL

-

удаление из левого или правого списка сфокусированной ячейки;

Shift+Alt+INS

-

вставка в левый или в правый список пустой строки перед сфокусированной ячейкой;

TAB, стрелки

-

"хождение" по строкам и столбцам таблицы.

 

 

ФАЙЛОВЫЕ ОПЕРАЦИИ

 

 

Файловые операции подразделяются в зависимости от области применения и размещения результата на списковые операции и операции по дереву каталогов и файлов. Списковые операции делятся на группы: операции с одним списком, операции с двумя списками, операции без списка.

 

Область применения и размещение результата в списковых операциях определяются заданием входных и выходных параметров, описанных в параметрах ввода/вывода для файловых операций. Перед выполнением операций, работающих со списками, эти списки должны быть созданы редактором TeConv на странице "Создание списков", либо другим текстовым редактором. Каждый вид операций требует задания определенных параметров, доступ к которым открывается при выборе в начале работы соответствующего типа операции (с одним списком, с двумя списками, без списка).

 

 

Операции с одним списком:

 

{Переписать}

-

копирование заданных в списке файлов или каталогов в выходной каталог;

 

{Переместить}

-

перемещение заданных в списке файлов или каталогов в выходной каталог;

 

{Удалить}

-

удаление заданных в списке файлов или каталогов;

 

{Объединить}

-

объединение заданных в списке файлов в единый файл, помещаемый в выходной каталог под именем, запрашиваемым при выполнении операции;

 

{Разделить}

-

разделение заданных в списке файлов по заданным критериям (порции в байтах, порции в строках, разделительной строке-шаблону), которые задаются в вызываемом окне "Разделение файлов списка на части";

имя выходного файла: [<имя файла>] <шаблон имени><номер порции>.<расширение> ;

вид порции определяет алгоритм деления файла:

<число> - размер файлов деления в байтах (целое или восьмеричное) или строках (целое),

<число_1>;<число_2>;…;<число_N> - файл делится на N частей, размер которых определяется заданными числами; первое (до ‘;’) или последнее (после ‘;’) число может быть не задано, тогда размер первой или последней части определяется разностью между размером исходного файла и суммой заданных в списке чисел;

{Изменить расширение}

-

замена расширения у всех файлов списка на  расширение, задаваемое в вызываемом окне "Изменение расширения файлов списка" при выборе и заполнении опций разделов: для всех файлов, по типу файлов, по размеру файлов, по шаблону расширений;

{Слить по строкам}

-

соответствующие строки из каждого списка объединяются с заданным разделителем и записываются в файл, путь к которому формируется из выходного каталога и запрашиваемого краткого имени файла;

параметры задаются в вызываемом окне "Параметры слияния списков по строкам" при выборе и заполнении опций разделов для их исключения из строк перед их слиянием:

- вид разделителя (конец строки, табулятор, точка с запятой,

- пробел, другие символы), тип строк слияния (все, только четные, только нечетные, помеченные строки),

- тип пробелов, обрамляющих строки (none, левые, правые, левые и правые).

 

 

Операции с двумя списками:

 

{Переписать}

-

файлы или каталоги левого списка копируются в файлы или каталоги правого списка;

{Переименовать}

-

файлы или каталоги левого списка переименовываются в файлы или каталоги правого списка.

 

 

Операции без списков:

 

1.Операции с файлами (входные данные из блока "Параметры файла")

 

{Переименовать}

-

входной файл переименовывается в соответствии с запрашиваемым именем;

 

{Создать}

-

файл создается в заданном входном каталоге по запрашиваемому имени;

 

{Удалить}

-

входной файл удаляется из каталога;

 

{Дублировать}

-

входной файл дублируется с запрашиваемым именем.

 

2.Операции с каталогами (входные данные из блока "Параметры каталога")

 

{Переименовать}

-

входной каталог переименовывается в соответствии с запрашиваемым именем;

 

{Создать}

-

каталог создается в заданном входном каталоге по запрашиваемому имени;

 

{Удалить}

-

удаление входного каталога вместе с подкаталогами;

 

{Очистить}

-

чистка входного каталога в соответствии с заданными шаблонами (см. "Параметры вывода для файловых операций") .

 

Операции по дереву каталогов и файлов производятся в специальном окне, содержащем в отдельных окошках левое и правое дерево каталогов, а также левый и правый список файлов, соответствующий выбранным каталогам. Загрузка левого или/и правого дерева каталогов автоматически влечет загрузку файлов соответствующего каталога по маске  выбора файлов, которая задается в редакционном окошке над списком файлов. Двойной клик мышки по этому окошечку устанавливает значение маски равное '*.*' и снимает все выделения.

 

Для каждой области каталогов и файлов (левой или правой) существует свое контекстное меню, которое позволяет работать с соответствующим деревом каталогов или списком файлов. Для каталогов и файлов в контекстном меню предусмотрены основные действия: создать, удалить, переименовать, копировать, переместить. Кроме этого для каталогов есть опция, позволяющая сравнить каталоги и выделить их несовпадающие файлы.

 

Для файлов предусмотрены различные формы установки и снятия выделения файлов, в том числе удовлетворяющие заданной маске, диапазону даты обновления или размера файла (в контекстном меню можно задать флаг, при котором критерий выделения действует только для файлов из уже выделенного списка, что позволяет итерационно выбирать нужные файлы). Контекстное меню файлов включает также опции показа содержимого файла (в редакторе файлов, а при DblClick - через соответствующее файловое приложение) и списка выделенных файлов (с указанием их индексов в текущем каталоге), а также задание представления имени файла в исходном регистре (в стандартном начертании первая буква имени прописная, а остальные строчные).

 

Осуществление некоторых файловых операций (выделение, копирование, перетаскивание, переименование) в паре правый-левый каталог или в паре правый-левый файловый список может также производиться с использованием мыши по правилам работы в системе  WINDOWS. Операции по дереву эффективны для текущего преобразования дерева каталогов, но занесению в сценарии не подлежат.

 

Одной из файловых операций является запуск внешнего процесса. Настройка и запуск внешнего процесса производятся в вызываемом окне "Запуск внешнего процесса". В нем следует выбрать из раскрывающегося списка имя внешнего приложения или через двойной клик мыши по опции {Выбор в диалоге} - файл внешнего приложения (например, d:\rab\file.doc) либо exe-файл (например, c:\exe\pkunzip.exe). Пользователь может также сам задать общепринятое имя внешнего приложения (например, для вызова калькулятора надо набрать calc).

 

При необходимости, для внешнего процесса может быть задана командная строка, где  имя файла или каталога (файловый элемент) можно задать в качестве параметра. Опция {Путь доступа от базы} устанавливает выбранный путь доступа как базовый, если до этого времени он не был определен, и определяет установку текущего каталога к моменту запуска внешнего процесса. Если новый выбранный параметр имеет путь доступа, отличный от базового и не является его подкаталогом, то производится запрос о замене прежнего базового каталога. Все выбираемые файловые элементы дозаписываются в строку параметров, за исключением целенаправленно выбранного базового каталога.

 

Для внешнего процесса, выбираемого в диалоге, может быть задан режим открытия (по умолчанию SW_RESTORE), краткое описание которого приводится рядом в комментарии, и время работы процесса в миллисекундах, определяющее момент автоматического закрытия этого процесса, иначе созданный процесс будет существовать автономно до его принудительного закрытия.

 

Клавиша {Запустить процесс} осуществляет загрузку внешнего процесса, после чего окно запуска закрывается и происходит возврат в редактор TeConv. Если запуск внешнего процесса осуществляется в цикле сценария и необходимо самому прервать этот цикл, то надо активизировать курсором родительское окно страничного блока TeConv и нажать клавишу {ESC}.

 

Клавиша {Просмотр и редактирование списков} обеспечивает вызов окна "Просмотр и редактирование файлов (списков)", которое позволяет увидеть созданные списки, отредактировать и записать их средствами Меню Файл(Список).

 

Клавиша {Просмотр каталогов и файлов} обеспечивает вызов окна "Обзор и выбор каталогов и файлов".

 

 

СЦЕНАРИЙ РЕДАКТИРОВАНИЯ

 

 

Работа со сценариями редактирования подразумевает две операции:

-  "Создание сценария"

-  "Выполнение сценария"

 

Оба процесса вызываются по клавише {Сценарий}, расположенной в нижней части Страничного блока, и далее в появившемся окне "Создание и выполнение сценария редактирования". Для каждой операции работы со сценарием выбирается соответствующая страница окна. Сценарии строятся из макросов, индивидуальных для каждой страницы и включающих в себя всю информацию о значениях входных и выходных параметров, а также о заданных режимах работы. Если в формировании параметров требуется данные других форм, то они также должны быть отображены в макросе. Например, для страницы, управляющей контекстной заменой, макрос имеет вид:

 

#[ЗАМЕНА КОНТЕКСТОВ] {1}

/1/входной текст (индекс):  <индекс по списку опции>

/2/выходной текст (индекс):  <индекс по списку опции >

/3/входной каталог:  <имя каталога>

/4/шаблоны входных файлов:  <строка шаблонов>

/5/искать в подкаталогах (признак):  <признак выбора опции>

/6/без учета регистра (признак):  <признак выбора опции>

/7/режим замены (индекс):  <индекс по списку опции >

/8/входная кодировка (индекс):  <индекс по списку опции >

/9/выходной каталог:  <имя каталога>

/10/рабочий каталог:  <имя каталога>

/11/сводный файл строк редакции (признак):  <признак выбора опции>

/12/только протокол (признак):  <признак выбора опции>

/13/вид протокола (индекс):  <индекс по списку опции>

/14/статистика для протокола (признак):  <признак выбора опции>

/15/файл запроса:  <полное имя файла>

[ПАРАМЕТРЫ ВЫХОДНОГО КАТАЛОГА]

/1/запись измененных файлов (индекс):  <индекс по списку опции>

/2/выходной каталог:  <имя каталога>

/3/сохранять копии (признак):  <признак выбора опции>

/4/рабочий каталог:  <имя каталога>

/5/копировать дерево файлов исходного каталога:  <признак выбора опции>

/6/копировать в рабочий каталог (индекс):  <индекс по списку опции>

>НАЧАТЬ: <код клавиши управления редактированием>

 

Начало редактируемой страницы определяется символом  решетка ( # ) в первой позиции строки заголовка, заключенного в квадратные скобки ( […] ).В фигурных скобках ( {…} ) находится номер макроса текущей страницы в сценарии. Строка-заголовок отражается в протоколе прохождения сценария _protscr.txt, расположенном в том же каталоге, где и основной загрузочный файл TeConv.exe и доступном для просмотра на первых трех страницах редактора. Параметр страницы характеризуется определенным номером ( /…/ ), за которым идет комментарий, заканчивающийся двоеточием ':', а далее - значение параметра, представленное в текстовом виде. Сценарий может включать в себя последовательную работу на нескольких страницах и состоит из наборов макросов для каждой страницы, входящей в сеанс редактирования.

 

Сценарий создается автоматически по признаку, формируемому при нажатии клавиши {Создать сценарий}. При этом макросы будут записываться в сценарий поэтапно для каждой страницы редактора TeConv, если пользователь подтвердит свое согласие при выполнении редакции на текущей странице. Чтобы снять признак создания сценария, необходимо отжать клавишу на Страничном блоке.

 

При создании сценария группа макросов, идентифицированных своим номером в сценарии, может быть оформлена как цикл. Для этого следует войти в специальное окно "Проектировщик циклов в сценарии" по кнопке {button Организовать цикл …, Klink(Help)} и вставить в нужные места операции начала и конца цикла:

#ЦИКЛ:<метка цикла>?<имя файла с параметрами цикла>

#КОНЕЦ: <метка цикла>

Файл с параметрами цикла должен быть предварительно создан, а также содержать в каждой строке набор заменяемых в цикле параметров, разделяемых одним или несколькими пробелами. Если параметр содержит пробел, то он должен быть заключен в двойные кавычки. Соответствующие изменению параметры в сценарии и файле запроса с таблицей контекстов должны быть вручную заменены на конструкцию подстановки '&n ' или '&n|m ', где  n – номер параметра замены из строки файла параметров, а m – метка цикла, по которой ищется соответствующий файл параметров. Если метка не задана, то по умолчанию берется файл параметров текущего цикла. Имя файла параметров может быть как с полным путем доступа, так и без пути, но тогда считается, что файл параметров находится в том же каталоге, что и файл текущего сценария.

 

Для выполнения сценария необходимо загрузить сценарий из файла в соответствующем окне и нажать клавишу {Выполнить сценарий}. При необходимости, перед выполнением сценарий можно отредактировать, вставить комментарии. Первый символ восклицательный знак '!' в строке комментирует текущую строку, а целый блок операторов можно закомментировать, используя конструкцию:

 

{

<строки сценария>

}

 

При прохождении сценария создается файл протокола _protscr.txt, расположенный там же, где и загрузочный файл Teconv.exe . Протокол содержит строки-заголовки макросов при прохождении каждой страницы сценария (в фигурных скобках заголовка находится текущий номер макроса) и доступен для просмотра на первых трех страницах редактора.

 

При записи и чтении должно быть задано полное имя файла сценария в окошке “Файл сценария”. Это окошко является раскрывающимся списком, элемент которого "Выбор в диалоге", вызываемая двойным кликом мышки, дает возможность пользователю выбрать файл из каталога в диалоговом окне, а не набирать вручную его полное имя. Если в опции выбран элемент "База данных", то сценарий может быть перенесен (загружен) из локальной базы данных, расположенной там же, где и загрузочный файл (база данных Paradox в файлах TeConvS.db, TeConvS.mb, TeConvS.px). База данных доступна для чтения, редактирования и записи сценариев при использовании клавиш загрузки или сохранения сценария. Работа с базой данных производится в специальном окне, которое содержит навигатор по базе данных и средства редактирования базы. Сценарий, выбираемый из базы или помещаемый в базу, отображается в обменном окошке, которое взаимосвязано с записью, выделенной в базе средствами навигации или добавленной в конец базы при использовании клавиши {Tab}. Запись отредактированного сценария в базу данных производится с кэшированием, т.е. требуется нажатие специальной клавиши для фиксации этих изменений в базе данных.

 

Сценарий редактирования, записанный в файл, может быть загружен для исполнения через командную строку. В этом случае первым параметром должен быть идентификатор вида конфигурации редактора (кроме ‘ED’), а второй параметр - имя файла сценария, причём если это имя задано без указания пути доступа, то считается, что файл сценария располагается в том же каталоге, где и основной загрузочный файл TeConv.exe. Например,

TeConv.exe   ALL  D:\script\tstscr.txt    

TeConv.exe   LED  script.txt    

 

 

ПЕРЕВОД МЕЖДУ СИСТЕМАМИ СЧИСЛЕНИЯ

 

Комплекс программ перевода осуществляет следующие преобразования:

 

Dec2Bin

-

перевод из десятичной в двоичную систему счисления;

Bin2Dec

-

перевод из двоичной в десятичную систему счисления;

Dec2Oct

-

перевод из десятичной в восьмеричную систему счисления;

Oct2Dec

-

перевод из восьмеричной в десятичную систему счисления;

Dec2Hex

-

перевод из десятичной в шестнадцатеричную систему счисления;

Hex2Dec

-

перевод из шестнадцатеричной в десятичную систему счисления;

Bin2Hex

-

перевод из двоичной в шестнадцатеричную систему счисления;

Hex2Bin

-

перевод из шестнадцатеричной в двоичную систему счисления;

Dec2BaseN

-

перевод из десятичной в произвольную (от 2 до 36) систему счисления;

BaseN2Dec

-

перевод  из произвольной (от 2 до 36) в десятичную систему счисления;

Arab2Rim

-

перевод из арабских цифр в римские;

Rim2Arab

-

перевод из римских цифр в арабские.

Для работы с программами создан удобный интерфейс, в котором отражаются входная и выходная константы. Кроме этого есть шаблон ввода/вывода, через который модно загружать входную константу и выгружать выходную, делая DblClick по соответствующему редакторскому окошечку. Переводу подлежит только целое число или каждое целое число из списка с символом-разделителем ';'.

 

РЕДАКТОР ФАЙЛОВ

 

Для просмотра и редактирования файлов предназначено специальное окно, войти в которое позволяет клавиша  {Редактор файлов}, расположенная на нижней панели Страничного блока. Редактор допускает возможность загрузки одновременно нескольких файлов, имена которых отображаются на отдельных загрузочных кнопках, что обеспечивает многодокументный режим редактирования. Работа в Редакторе файлов осуществляется через меню, основные операции которого вынесены на инструментальную панель в виде отдельных кнопок.

 

Опция меню {Параметры} предназначена для задания ряда параметров настройки.

 

Опция меню {Вид} определяет режим представления текста в редакторе: TXT (текстовый без переноса строк), WTX (текстовый с переносом строк), HEX (двоичное представление строк).

 

Опция меню {Кодировка} определяет входную кодировку файла: Win1251, KOI8-R, DOS .

 

Опция меню {Шрифт} определяет размер шрифта показа: крупный, средний и мелкий.

 

Опция меню {Файл} осуществляет работу с файлами: создание нового и открытие существующего файла, закрытие и сохранение файла, а также установка параметров страниц печати, предварительный просмотр и печать файла.

 

Опция меню {Правка} осуществляет работу с выделенными строками или их фрагментами:

- смена регистра набора для выделенных областей текста или для последнего набранного невыделенного фрагмента текущей строки,

- алфавитное упорядочивание строк файла по возрастанию или убыванию,

- выборка символов в буфер обмена Clipboard из допустимого набора шрифтов,

- выделение всего текста, а также отмена или возврат текущего шага редакции,

- замена HEX-констант в двоичных файлах,

- операции для выборки фрагмента двоичного файла,

- получение через буфер обмена Clipboard аналога целого числа прописью на русском или английском языке.

Подменю также включает установку ряда флагов:

- доступ к опции меню {Блок-редактор} (см. ниже),

- флаг показа сетки базовых линий для выдачи на фоне текста сетки заданного размера (по числу символов и строк), что может быть полезным при работе с текстом;

 

Опция меню {Поиск} открывает подменю, которое обеспечивает вызов диалогового окна для выполнения поиска и замены контекстов. В данной опции задействован также переход по файлу к заданному номеру строки или байта.

 

Опция меню {Сравнение} открывает подменю, которое обеспечивает вызов диалогового окна для задания параметров сравнения двух файлов.

 

Опция меню {Таблица} открывает диалоговое окно "Файл-Таблица", которое  обеспечивает создание интерактивной таблицы и сохранение её структуры в специальном tbl-файле, который используется в формат-ресурсе и спецнаборе;
 

Опция меню {Сервис} осуществляет работу с формат-ресурсом, проверку орфографии выделенного текста, его фрагмента или отдельного слова, а также выравнивание текста по ширине;

 

Опция меню {Помощь} открывает файл помощи для работы в редакторе TeConv.

 

Опция меню {Блок-редактор} открывает доступ к операциям на Cтраничном блоке редактора ТeConv, обеспечивает возможность просмотра и редактирования Файла запроса, содержащего контексты поиска и замены, со вставленной нумерацией между символами разделителя условий. Таким образом, создается временный файл с именем Файла запроса и расширением .tmp, в котором разделитель '::' имеет вид ':N:', где N - номер условия в текущем контексте, и после редактирования запись временного файла в выходной Файл запроса с обычным разделителем '::'; другие опции этого подменю позволяют просматривать общий архив (см. "Специальные средства для контекстного редактирования") и списки, а также определять по позиции курсора номер указанной строки в Таблице контекстов.

 

 

Параметры настройки

 

Настройка параметров производится в опции Главного меню {Параметры}. Часть настроек производится через диалоговое окно "Редактор файлов: параметры", которое  содержит  ряд вкладок, позволяющих устанавливать новые значения настроек или возвращаться к  значениям по умолчанию:

 

"Структура" - на вкладке задаются величины спецполей Min, Max и Off,  значения  которых используются при открытии файла; процесс открытия файла подразумевает создание внутренней файловой структуры из строк входного файла, причем размер внутренней строки структуры находится в диапазоне значений Min и Max ; для текстовых файлов стандартное значение Min равно 0, а значение Max определяет размер выдаваемой в редакторе строки в режиме с переносом строк (по умолчанию, это значение полагается равным 70) ; для нетекстовых файлов значение Min желательно задавать больше 0, т.к. в противном случае могут возникнуть ошибки создания внутренней файловой структуры при открытии файла. Значение Off определяет начальное смещение в байтах по файлу, начиная с которого строится внутренняя структура, т.е. тем самым начало файла игнорируется и не отображается в окне редактора; кнопка {Установить} - фиксирует новые параметры для текущего сеанса редактирования, кнопка {Открыть файл заново} - перегружает файл в редакторском окне с новыми параметрами, кнопка {Установить & Открыть файл заново} - фиксирует новые параметры и перегружает файл в окне редактирования; при открытии окна редактирования настройки параметров, отличные от значения по умолчанию, имеют справа контрольный переключатель и при его задании могут быть приведены к значению по умолчанию по открывающейся кнопке {Значения по умолчанию};

 

"Протокол" - на вкладке задаются режимы создания протокола (дозапись в протокол или создание протокола заново), а также максимальное число символов в строке файла протокола (по умолчанию - 128).

 

"Оформление" - на вкладке задаются цветовые характеристики окна редактора; выбор цвета может быть произведен в диалоговом цветовом меню, которое вызывается через контекстное меню в соответствующем редакторском  окне,  отражающем числовое описание выбранного цвета $BBGGRR ;

 

Другая часть настроек осуществляется через  диалоговое  окно  "Настройка параметров TeConv" на вкладке "Настройка общих параметров". Настройка также возможна для параметров автозамены.

 

В опции Главного меню {Правка} можно также установить ряд флагов, влияющих на интерфейс редактора:

 - открыть   опцию  Главного меню "Блок-редактор" для доступа к Страничному блоку ;

 - показать сетку базовых линий заданного размера по числу символов и строк (настройка в общих параметрах), которая  выдается на фоне текста ;

 - отобразить функциональную панель (содержит основные функциональные кнопки, буквенные кнопки, использующиеся в меню в качестве "горячих" клавиш, а также переключатель для задания определенных комбинаций (none, Alt, Ctrl, Shift).) как альтернативу "горячим" клавишам с использованием мышки.

 

Работа с файлами

 

Создание и открытие файла подразумевает генерацию внутренней структуры и отображение ее в окне редактора. Для файлов больших размеров время генерации структуры может быть заметным, что отображается индикатором хода процесса. Процесс открытия файла может быть прерван по клавише {ESC}.

 

Закрытие файла предусматривает контроль изменений во внутренней структуре и сохранение изменений в файле, после чего структура очищается.

 

Сохранение подразумевает размещение файла, сгенерированного из отредактированной структуры, на месте исходного файла, а опция {Сохранить как …} - в любом заданном через диалоговое окно файле. При этом, существует возможность сохранить файл в кодировках  Win, Koi8, Dos, а также в формате файла rtf или htm. Если есть начальное смещение по файлу (см. параметры настройки), существует возможность сохранить либо весь файл, включая начальное смещение, либо часть файла, соответствующую текущей структуре. В последнем случае, если исходный файл не сохраняется, то создается его копия с расширением .bak .

 

Предварительный просмотр файла может осуществляться в двух режимах: одностраничном показе последовательности страниц и многостраничном показе, состоящем из порции страниц, устанавливаемой заданием в меню процента сжатия страницы. Регулировка шрифта страницы печати (наименование, размер) производится через меню {Файл}à{Параметры шрифта …}. Лист печати может содержать идентификацию - нижний колонтитул страницы с указанием номера страницы и имени файла документа печати (например, 'Стр.1 из 5           prim.txt'),  нумерацию страницы с заданным расположением номера страницы, наличие или отсутствие нумерации первой страницы. Эти установки производятся через меню {Файл}à{Параметры нумерации и печати …}.

 

Печать файла осуществляется на основе внутренней структуры, создающейся при открытии файла. Процесс подготовки к печати включает в себя настройку параметров принтера и шрифта печати через системные диалоги, а также предварительный просмотр печатаемых страниц в уменьшенном и полном масштабах. Перед выводом на печать текст может быть отформатирован. Процесс подготовки к печати включает в себя настройку параметров принтера и шрифта печати, а также предварительный просмотр печатаемых страниц в уменьшенном и полном масштабах. Настройка принтера (расположение текста на бумаге, номера листов печати, количество копий и др.) производится через меню {Файл}à{Параметры принтера …}. Дополнительные диапазоны печати только четных и нечетных страниц производятся через меню {Файл}à{Параметры нумерации и печати …}.

 

 

Команды ручного редактирования

 

Эти команды используются при ручном редактировании файла. При работе с текстовым представлением файла ручное редактирование может производиться как в режиме без переноса строк, так и в режиме с переносом строк. Различия заключаются только в выделении фрагментов строк, кроме этого в режиме с переносом строк нельзя выделять блоки в виде столбцов. В статусной строке отображается номер текущей строки, номер символа относительно текущей строки файла, а также кодировка этого символа. Если символы были набраны не в том регистре, то при нажатии клавиши {F12} произойдет смена регистра набора (Ru/En) на альтернативный (En/Ru) и последний набранный с клавиатуры фрагмент текста, либо фрагмент текста, выделенный курсором, будет переведен на альтернативный регистр.

 

При работе с двоичным представлением файла также разрешается ручное редактирование символов для обоих кодовых полей (двоичного и символьного), при этом редактирование происходит в режиме замены HEX-констант. В статусной строке отображается номер текущей строки, номер символа относительно всего файла, а также кодировка этого символа.

 

 

Команды для работы с курсором (для текстового и двоичного вида):

 

ВЛ (стрелка влево)

-

сдвиг курсора на символ влево;

ВП (стрелка вправо)

-

сдвиг курсора на символ вправо;

ВВ (стрелка вверх)

-

сдвиг курсора на строку вверх;

ВН (стрелка вниз)

-

сдвиг курсора на строку вниз;

PgUp

-

сдвиг курсора на страницу вверх;

PgDn

-

сдвиг курсора на страницу вниз;

HOME

-

сдвиг курсора в начало строки;

END

-

сдвиг курсора в конец строки (в двоичном представлении - на начало символьного представления);

Ctrl+HOME

-

переход в начало файла;

Ctrl+END

-

переход в конец файла;

Alt+HOME

-

переход в начало файла с сохранением X-координаты текущей строки;

Alt+END

-

переход в конец файла с сохранением X-координаты текущей строки;

TAB

-

переключение курсора с двоичного представления на символьное (только для двоичного вида);
на начало строки (при сравнении файлов пофрагментно).

 

 

Команды редактирования строк (для текстового вида):

 

INS

-

включение/отключение режима вставки;

Enter

-

вставка строки;

Ctrl+Y

-

удаление строки;

Backspace

-

стирание символа слева от курсора;

Delete

-

стирание символа справа от курсора;

Shift+F7

-

запоминание образца строки, отмеченной курсором (начало абзаца или списка с "перечислителем" одного из видов: ‘-’ , ‘1.’, ‘1)’, ‘a)’, ‘Б)’, ‘I.’ );

Ctrl+F8

-

выравнивание строк абзаца или списка без переноса слов по запомненному образцу в выделенном фрагменте текста либо от строки с курсором до пустой строки, являющейся ограничителем абзаца или списка;

Ctrl+F9

-

выравнивание строк абзаца или списка с переносом слов по запомненному образцу в выделенном фрагменте текста либо от строки с курсором до пустой строки, являющейся ограничителем абзаца или списка;

F10

-

перекодировка вновь набранного или выделенного текста на нижний регистр;

F11

-

перекодировка вновь набранного или выделенного текста на верхний регистр;

F12

-

изменение регистра вновь набранного или выделенного текста:
Ru->En  или  En->Ru .

 

 

Команды работы с блоками (для текстового вида):

 

Shift+ВЛ/ВП

-

выделение символа;

Shift+ВН/ВВ

-

выделение строки (курсор в начале);
выделение части строки (курсор не в начале);
выделение столбца (курсор после
Shift+ВЛ/ВП);

Ctrl+Insert

-

копирование блока в буфер Clipboard;

Ctrl+Delete

-

вырезка блока;

Shift+Insert

-

вставка содержимого буфера Clipboard на место курсора;

Shift+Delete

-

вырезка блока и помещение его в буфер Clipboard;

Ctrl+ВП

-

выделение от курсора до конца строки;

Ctrl+ВЛ

-

выделение от начала строки до курсора.

 

 

Контекстное редактирование

 

Контекстный поиск и замена могут производиться для любого вида представления файла в окне редактора (текстового без переноса строк, текстового с переносом строк, двоичного представления). Для двоичного представления предусмотрена возможность работать c контекстами, которые используют служебные конечные символы строки (например, контекст поиска ?\0d  находит любой последний неслужебный символ строки, расположенный перед концом строки #$d). При этом поиск/замена контекстов может происходить в разных режимах: от начала файла, от конца файла, вниз от курсора, вверх от курсора, а также с учетом и без учета регистра символов. Однако следует иметь в виду, что замена контекстов, содержащих конечные символы строки \0d или \0a, может происходить только от начала файла.

 

Задание параметров поиска и замены производится при вызове опций Главного меню {Поиск}à{Найти…} или {Поиск}à{Заменить…} диалогового окна “Редактор файлов: контекстный поиск и замена”, в котором на соответствующих вкладках задаются параметры только для поиска или для поиска и замены контекстов. Параметры задаются путем заполнения таблицы контекстов и задания опций режима работы:

 

{Без учета регистра} - индикатор, указывающий учитывается ли регистр символов при поиске контекстов;

 

{Выдавать строки замены в протокол} - индикатор, определяющий вид информации, заносимой в протокол (определяет протокол типа 1 или типа 2).

 

{Направление поиска} – раскрывающийся список для определения того, в каком направлении по файлу будет вестись поиск:

  - от начала файла;

  - от конца файла;

  - вперед от позиции курсора;

  - назад от позиции курсора.

 

Для оперативного доступа к описанию спецсимволов контекстов можно воспользоваться блоком справочной информации, располагающемся в этом же окне. Клавиша  {Начать}  начинает процесс поиска/замены, причем замена осуществляется через диалоговое окно ”Управление редактированием файлов”, в котором можно прервать процесс. Для продолжения процесса поиска/замены контекстов следует нажать клавишу {Дальше} (или "горячую" клавишу {F3} ).

 

 

Маркеры – точки перехода по файлу

 

Маркеры используется для определения точек (позиций) в тексте файла, в которые можно перейти в процессе работы с файлом. Максимальное их количество 20. Установка и снятие визуального маркера для перехода по тексту файла в окне редактора производится в текущем файле для символа, отмеченного курсором, через опции Главного меню:

{Правка}à{Вставить маркер (точка перехода)}   ("горячие" клавиши {Alt+Ins})   и

{Правка}à{Удалить маркер (точка перехода)}   ("горячие" клавиши {Alt+Del}) .

 

 Маркер изображается альтернативным цветом в виде квадратной открывающей скобки перед заданным курсором символом, координаты которого определяются номером полной строки и номером байта в строке. При этом работа с маркерами может производиться в режимах показа полной (TEX) и короткой строки (WTX). Маркер может быть установлен в любую позицию строки, причем в одной строке может быть установлено несколько маркеров. При редактировании текста (разделении, удалении, вставке, замене) может произойти изменение координат маркера, тогда его позиция автоматически корректируется.

 

Каждая установка маркера добавляется отдельной строкой в список маркеров текущего файла и содержит, не зависимо от режима показа файла (TEX, WTX):  <номер полной строк>:<номер байта в строке>:<начальный текст от маркера >.

При этом кнопка [Mrk] на инструментальной панели активизируется, и при нажатии этой кнопки, открывается список маркеров текущего файла. Нажатие мышкой по строке списка, осуществляет переход по соответствующему маркеру списка и показ в окне редактора фрагмента файла, содержащего этот маркер. Вызов контекстного меню правой клавишей мыши содержит опцию для полной очистки списка маркеров. Для каждого файла загрузки в окне редактора формируется свой список маркеров, который сохраняется и загружается при открытии в окне соответствующего файла.

 

 

Табуляторы – точки перехода по строке

 

В Редакторе TeConv предусмотрена возможность установки и снятия точек табуляции (табуляторов) по которым может происходить пошаговое перемещение курсора по строке файла. Последовательность позиций пошагового смещения курсора устанавливается в специализированной информационной шкале, вызываемой из Главного меню: {Правка}à{Табуляция (установка и снятие)}. Эта шкала соответствует градации номеров символов строки в окне редактора, а установка табуляторов заключается в том, что необходимо для каждого табулятора (не обязательно последовательно по позициям шкалы) выполнить следующие действия: отметить курсором в нижнем отделе шкалы позицию табулятора, а затем зафиксировать её клавишей {Enter}. При этом выбранная позиция отметится на шкале красным T-образным знаком. Повторная выборка этой позиции как табулятора, ведет к снятию знака и исключению табулятора из шкалы. Красный пунктир показывает установленное значение длины короткой строки.

 

 Кнопки шкалы табуляторов:

 

 [X]        -  закрытие шкалы без её изменения;

 [@]       -  очистка шкалы;

 [Ok]     -  создание и сохранение таблицы табуляции по заданной шкале табуляторов;

 

 Клавиши табуляции по тексту:

 

 Tab           -  переход от текущей позиции курсора по строке вперед к ближайшему справа значению табулятора

                      из таблицы табуляции; если таблица табуляции исчерпана, то происходит переход на первое её

                      значение в следующей строке файла; находясь в конечной строке файла можно добавить в файл

                      новую строку (установить курсор в конце файла и нажать клавишу {Enter}), после чего возобновить

                      табуляцию;

 

Shift+Tab   - переход от текущей позиции курсора по строке назад к ближайшему слева значению табулятора

                       из таблицы табуляции; если таблица табуляции исчерпана, то происходит переход на последнее

                       её значение в предыдущей строке файла, но при нахождении в начальной строке файла никаких

                       действий не производится;

 

Замечание. При выходе из Редактора Тесоnv значения таблицы табуляции сохраняются и при новой загрузке Редактора отображаются в текущей шкале табуляторов.

 

 

Замена HEX-констант

 

В двоичном представлении каждый символ кодируется двумя 16-ричными цифрами и чтобы заменить кодировку этого символа надо отредактировать последовательно каждое число этой пары. В статусной строке отображается номер байта, отмеченного позицией курсора, относительно всего файла, кодировка этого байта и числовое значение при рассмотрении нескольких байтов текста, начиная с указанного позицией курсора, в виде целых и вещественных чисел.

 

Тип представления числа устанавливается в контекстном меню, вызываемом нажатием правой клавиши мыши. В зависимости от выбранного типа, определяется количество байт, занимаемое константой, начиная от позиции курсора. Возможны следующие варианты численных представлений (в скобках указан тип числа): UInt1 (Byte), Int2 (SmallInt), UInt2 (Word), Int4 (Integer), UInt4 (LongWord), Float4 (Single), Float8 (Double).

 

Соответствующее численное представление (для любого из кодовых полей – двоичного и символьного) можно также отредактировать через специальное редактирующее окно "Замена HEX-констант", вызываемое из опции меню {Правка}, причем при замене количество байт в файле не изменяется. Начальный байт замены в файле определяется позицией курсора, а количество байтов замены - установленным на момент редактирования через контекстное меню видом представления. Для замены необходимо в строке замены набрать константу из указанного диапазона и нажать клавишу {Отредактировать}.

 

 

Выборка фрагмента двоичного файла

 

Выборка фрагмента двоичного файла производится по байтовому диапазону, задаваемому целыми или шестнадцатеричными (начинаются с символа '$') числами. Номер начального  и  конечного байта выборки определяется по левому адресному столбцу, отражающему номера байтов в режиме показа двоичного файла. При необходимости, можно обеспечить запись в конец сделанной выборки символа конца файла EOF($1A). Выбранный фрагмент записывается в файл, который определяется через файловый диалог. Процесс выборки фрагмента производится в специальном окне "Выбор фрагмента двоичного файла", которое вызывается из опции меню {Правка}.

 

 

Сортировка строк файла

 

Сортировка строк текстового файла производится по первому, второму и т.д. символам в строках файла в соответствии с алфавитом и выбираемым режимом:

  -  по возрастанию;

  -  по убыванию.

Обращение к сортировке производится из опции меню {Правка}.

 

 

Получение аналога целого числа прописью

 

Словесный аналог целого числа (до 19 цифр) может быть получен в русской (Ru) или английской (En) записи. Исходную константу необходимо выделить в тексте и записать в буфер обмена Clipboard, после чего выбрать соответствующий запрос в опции Главного меню {Правка}. Полученный текст помещается в буфер Clipboard, далее результат может быть вставлен из Clipboard в текст с указанной позиции курсора. Аналог целого числа прописью также может быть получен через блоковую функцию BlockNumb (см. "Специальные средства для контекстного редактирования").

 

 

Вставка кодов шрифтов, спецсимволов HTML, календарных дат

 

Выбор кодов шрифтов производится в открывающемся окне  "Таблицы символов шрифтов", где следует выбрать имя шрифта из списка доступных шрифтов. Символы шрифта появляются в оконной таблице, из которой можно выбирать мышкой один или несколько символов и они будут отображаться в накопителе и для экспорта его содержимого надо нажать клавишу {Копировать в буфер}. В дальнейшем, информацию из буфера можно вставить в позицию курсора открытого для редактирования файла обычным способом.

 

Выбор спецсимволов HTML производится в открывающемся окне "Таблицы спецсимволов HTML", где следует выбрать одну из таблиц списка:

     -  Математические знаки

     -  Знаки пунктуации

     -  Стрелочные символы

     -  Буквы с метками

     -  Греческие буквы

     -  Римские цифры

     -  Символы-картинки

     -  Кириллица и латиница

В загруженной таблице появятся тематические спецсимволы и, как правило, ссылки на их символьный и числовой коды, выборка которых мышкой обеспечит их появление в накопителе. Иногда, для корректного отображения спецсимвола в браузере, необходимо задать предшествующий ему тег со специальным шрифтом (вариант этого шрифта приводится в комментарии к соответствующей таблице). Таблица 'Кириллица и латиница' позволяет набирать в спецсимволах целые предложения, а для просмотра их служит контрольная строка, которую можно редактировать синхронизированно с накопителем. Далее экспорт спецсимволов будет аналогичен, описанному выше для кодов шрифтов.

 

Выбор календарной даты производится в открывающемся окне "Календарь", в котором можно установить число, месяц и год (в пределах 1-4000), после чего это отразится в календарной сетке с указанием дня недели. В качестве выбранной даты можно представить её с написанием месяца прописью или числом с выбранным разделителем (слеш, точка и др.), а также днем недели. Далее экспорт даты будет аналогичен, описанному выше для кодов шрифтов.

 

 

Сервисная обработка текста

        Формат-ресурс как база форматирования текста

 

Редактор TeConv не имеет явно графической направленности, однако он имеет ряд встроенных средств для стилевого и структурного форматирования текста с последующим его представлением в форматах rtf или htm, поддерживающих форматирование. Одним из способов форматирования файла является создание формат-ресурса путем вставки в текст тегов разметки:

 

[h]

-

тег перед заголовком текста документа (обязательный);

[p]

-

тег перед разделом текста (обязателен  только после заголовка документа);

[t]

-

тег с информацией о таблице вставки,

(см. раздел "Создание Таблиц");

[g]

-

тег для внедрения картинки в текст из файла графического  формата,

(см. раздел "Внедрение Картинок");

[l]

-

тег для задания начала основного/вложенного списка,

(см. раздел "Создание Списков различной маркировки");

[lh]

-

тег для задания заголовка списка;

 

[li]

-

тег для задания элемента списка;

[/l]

-

тег для задания конца списка;

[mr]

-

тег для задания закладки (якоря),

(см. раздел "Вставка закладки (якоря)");

[hm]

-

тег для задания гиперссылки на внутренний ресурс,

(см. раздел "Вставка гиперссылки на внутренний ресурс");

[hp]

-

тег для задания гиперссылки на внешний ресурс,

(см. раздел "Вставка гиперссылки на внешний ресурс");

[f] [/f]

-

теги начала и конца текста, который должен сохранить свой  формат  записи (преформатирование); каждый тег располагается в начале строки;

[i] [/i]

-

теги начала и конца текста, форматируемого стилем "курсив",

(см. раздел "Стилевое оформление текста");

[b] [/b]

-

теги начала и конца текста, форматируемого стилем "жирный",

(см. раздел "Стилевое оформление текста");

[u] [/u]

-

теги начала и конца текста, форматируемого стилем "подчеркивание",

(см. раздел "Стилевое оформление текста");

[ ]

-

тег для  задания  обязательного  числа  пробелов  в данном месте выходной  строки (число пробелов явно размещается в границах тега);

[br]

-

тег конца строки (переход на новую строку).

 

Файл формат-ресурса может быть сохранен как rtf-файл или htm-файл и показан в MsWord или WebBrowser.  Эти действия осуществляют сервисные опции Главного меню:

 

{Сервис}à{Сохранить как Rtf ...}

{Сервис}à{Сохранить как Htm ...}

{Сервис{à{Сохранить как формат-ресурс …}

{Сервис}à{Показать формат-ресурс в TeConv}

{Сервис}à{Показать файл/формат-ресурс в Word}

{Сервис}à{Показать файл в WebBrowser}

 

 

        Стилевое оформление текста

 
Стилевое оформление текста осуществляется через создание формат-ресурс, где одним из способов его создания является явная вставка в текст соответствующих тегов, используя опцию меню {Сервис}à{Вставить тег в позицию курсора} (см. раздел "Формат-ресурс как база форматирования текста").
 

Второй способ является визуальным, позволяющим отображать задаваемый стиль фрагмента текста на экране. Для этого фрагмент, к которому будет применен стиль, предварительно выделяется на экране, иначе берется слово, стоящее перед курсором, и из подраздела меню {Сервис}à{Стилевое оформление фрагмента текста} выбирается нужный вариант стиля. Такому визуально- отформатированному файлу соответствует формат-ресурс, который содержит соответствующие стилевые теги разметки и может быть сохранен, а впоследствии представлен в TeConv,  MsWord или WebBrowser с визуальным  стилевым оформлением (см. раздел "Формат-ресурс как база форматирования текста").

 
Ниже представлен набор опций стилевого оформления в соответствии с возможной комбинацией тегов:
 

"Курсив"

 

[i]……..[/i]

"Полужирный"

 

[b]…….[/b]

"Подчеркнутый"

 

[u]…….[/u]

"Курсив&Полужирный"

 

[i][b]….[/b][/i]

"Курсив&Подчеркнутый"

 

[i][u]….[/u][/i]

"Полужирный&Подчеркнутый"

 

[b][u]…[/u][/b]

"Разрядка"

 

в ы д е л е н н ы й  т е к с т

 
Для стилевого оформления текста можно также использовать окно  Стилевое оформление файла по контексту поиска, которое вызывается через опцию меню {Сервис}à{Стилевое оформление по контексту ...}. В этом окне устанавливаются параметры стиля текста, направления поиска, учет регистра набора, а также задается  контекст поиска по строке файла в виде конкретного слова, либо в виде шаблона, содержащего один из спецконтекстов:
 

xxxxxx[ ,;.\0d]

-

лексема xxxxxx и перечень её символов окончания [...] ; \0d  - конец строки;

{xxx[?* ]}

-

часть лексемы xxx и произвольные символы до пробела [?* ] -  это образует группу {...} ;

{xxx[?* ]}|{xxx[?*,]}|{xxx[?*.]}|{xxx[?*\0d]}

-

альтернативный перечень групп для разных окончаний лексемы;

 

(Подробнее о спецконтекстах см. "Текстовый Редактор TeConv. Специальные средства для контекстного редактирования").

 
Для выборки спецконтекста следует через DblClick занести его в окошко контекста поиска и отредактировать для конкретного слова или части слова поиска, а также возможных символов окончаний. Например, для поиска слов: 'статья,' или 'статью.' или 'статьей ' следует задать спецконтекст:
{стать[?* ]}|{стать[?*,]}|{стать[?*.]} 
 
Форматирование найденного контекста поиска заключается в обрамлении  его тегами, определяющими заданный стиль, либо разрежение символов контекста пробелами.

 

 

        Создание Списков различной маркировки

 

Списки - один из самых эффективных способов организации и представления информации. Различают списки по видам: упорядоченные, имеющие  маркеры-перечислители (арабские и римские цифры, латинские буквы) для своих элементов и неупорядоченные, не имеющие маркеров или имеющие  однотипные  маркеры  (тире, жирные точки и другие графические знаки или картинки).

 

В Редактор  TeConv включена возможность создать формат-ресурс с тегами, определяющими структуру и маркеры списков, явно не заботясь о визуальной иерархической структуре вложенных списков. Генерируемый из формат-ресурса файл типа rtf или  htm, наглядно отобразит структуру вложенных списков, что можно просмотреть через MsWord  или  WebBrouser. визуальной иерархической структуре вложенных списков. Теги для создания списков:

 

[l]

-

Тег для задания начала основного/вложенного списка, за которым  в  круглых скобках задаются параметры списка, определяющие выходной вид списка:

type=" "  -  определяет тип маркера списка:

           не задан - без маркера;

                     0   - маркер в виде "-";

                     1   - маркер в виде арабских цифр (1,2,3...);

                     2   - маркер в виде больших римских цифр (I,II,III...)   ;

                     3   - маркер в виде маленьких римских цифр (i,ii,iii...)   ;

                     4   - маркер в виде прописных латинских букв (A,B,C...);  

                     5   - маркер в виде строчных латинских букв (a,b,c...);  

                     6   - маркер в виде диска;

                     7   - маркер в виде квадратика;  

                     8   - маркер в виде кружка;

                     9   - маркер из графического файла

                           (только для htm-файла, иначе не задан);

lidelim=" "  -  определяет конечный символ маркера-перечислителя:

                           не задан или '.' - конечный символ “точка” (например, 1. , I. , a. );

                           произвольные символы - (например, 1) , I: , a>> );

liurl=""      -   определяет url-адрес графического файла с картинкой  маркера

                       (только для htm-файла); файл-маркер должен находиться в одном

                        каталоге с формат-ресурсом, иначе он переписывается туда

                        автоматически при вставке через опции Главного меню:

                        {Сервис}-->{Вставить тег в формат-ресурс}-->

                        {<для 'liurl' из [l](...)> - ссылка на маркер списка ...};

liposit=" "  -   определяет позицию маркера по отношению к тексту:

                           не задан или 'out' - текст пункта при переводе строки  оставляет

                           висячий маркер;

                           'ins' - текст пункта при переводе строки начинается под маркером;

lilength=" "  -  определяет количество знаков в маркере-перечислителе, если не

                        задан, то по умолчанию задается 3 числовых знака;

lhstyle=" "  -   определяет стиль шрифта заголовка и допускает различное

                        сочетание этих значений:

                           не задан - текущий шрифт;

                           'i'   - курсив;

                           'b'   - полужирный;

                           'u'   - подчеркивание;

lhsize=" "  -    определяет размер шрифта заголовка:

                           не задан - текущий размер;

                           'l'   - увеличенный;

                           's '  - уменьшенный;

 

 (например, [l](type="9" lidelim="" liurl="mrk.gif" liposit="" lilength="4" lhstyle=" " lhsize="l")); этот тег вставляется в основной текст документа в начале строки, отмеченной курсором, через Главное  меню {Сервис}à{Вставить тег в формат-ресурс}à{[l](…) – начало списка} , параметрам, в случае необходимости, надо присвоить нужные значения и сохранить файл-ресурс перед дальнейшими операциями; при изменении параметров lidelim  или liposit, заданных по умолчанию, корректный просмотр списка возможен только через Browser; см. формат-ресурс списка;

[lh]

-

тег для задания заголовка списка (располагается перед заголовком);

размер шрифта заголовка определяется параметром lhstyle;

[li]

-

тег для задания элемента списка (располагается  перед  текстом  каждого пункта списка);

[/l]

-

тег для задания конца списка;

 

Генерируемый из формат-ресурса файл типа rtf или htm, наглядно отобразит структуру вложенных списков, что можно просмотреть через Word или WebBrouser. Теги формат-ресурса, определяющие структуру списка, их предназначение, параметры и способы задания см. здесь.

 

Пример формат-ресурса для генерации файлов типа rtf и htm:

 

[l](type="1" lidelim=")" liurl="" liposit=" " lilength=" " lhstyle="u" lhsize="l")

[lh]Примерный список

[li]Пункт списка 1

[li]Пункт списка 2

[li]Пункт списка 3

[l](type="2" lidelim="." liurl="" liposit=" " lilength=" " lhstyle="" lhsize=" ")

[lh]Вложенный список 3

[li]Пункт списка 3.1

[li]Пункт списка 3.2

[li]Пункт списка 3.3

[l](type="6" lidelim="" liurl="" liposit="ins" lilength=" " lhstyle="iu" lhsize="l")

[lh]Вложенный список 3.3

[li]Пункт списка 3.3.1 - строка 1[br]

Пункт списка 3.3.1 - строка 2

[li]Пункт списка 3.3.2

[/l]

[/l]

[li]Пункт списка 4 - строка 1[br]

Пункт списка 4 - строка 2[br]

Пункт списка 4 - строка 3

[li]Пункт списка 5

[/l]

[p]Список создан!

 

Сгенерированный rtf-файл:                           Сгенерированный htm-файл:

 

{\rtf1\ansi

{\fonttbl

{\f0\froman\fcharset204\fprq2Times New Roman;}

{\f2\fmodern\fcharset204\fprq1Courier New;}

}

{\info{\title \'d4\'e0\'e9\'eb\'2d\'f1\'f2\'f0\'f3\'ea\'f2\'f3\'f0\'e0}

{\author NIVC MGU}}

\paperw11906\parerh16838\margl1701\margr850\margt1134\margb1134

\pard\plain \ql\fs26\f0\li500

{\ul\'cf\'f0\'e8\'ec\'e5\'f0\'ed\'fb\'e9 \'f1\'ef\'e8\'f1\'ee\'ea\ul0}

\par

\trowd\lastrow\cellx500\cellx9355

\pard\plain \qr\fs22\f2\intbl

{1)\~}\cell

\pard\plain \ql\fs24\f0\intbl

{\'cf\'f3\'ed\'ea\'f2 \'f1\'ef\'e8\'f1\'ea\'e0 1}

\cell\row

…………………………………………………………

.......................................................................................

\trowd\lastrow\cellx500\cellx9355

\pard\plain \qr\fs22\f2\intbl

{3)\~}\cell

\pard\plain \ql\fs24\f0\intbl

{\'cf\'f3\'ed\'ea\'f2 \'f1\'ef\'e8\'f1\'ea\'e0 3}

\cell\row

\pard\plain \ql\fs24\f0\li1000

{\'c2\'eb\'ee\'e6\'e5\'ed\'ed\'fb\'e9 \'f1\'ef\'e8\'f1\'ee\'ea 3}

\par

\trowd\lastrow\cellx1000\cellx9355

\pard\plain \qr\fs22\f2\intbl

{I.\~}\cell

\pard\plain \ql\fs24\f0\intbl

{\'cf\'f3\'ed\'ea\'f2 \'f1\'ef\'e8\'f1\'ea\'e0 3.1}

\cell\row

\trowd\lastrow\cellx1000\cellx9355

\pard\plain \qr\fs22\f2\intbl

…………………………………………………………

.......................................................................................

\trowd\lastrow\cellx500\cellx9355

\pard\plain \qr\fs22\f2\intbl

{5)\~}\cell

\pard\plain \ql\fs24\f0\intbl

{\'cf\'f3\'ed\'ea\'f2 \'f1\'ef\'e8\'f1\'ea\'e0 5}

\cell\row

\pard\plain \qj\fs24\f0

{\'d1\'ef\'e8\'f1\'ee\'ea \'f1\'ee\'e7\'e4\'e0\'ed!}

}

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">

<html>

<head>

<meta http-equiv="Content-Type" content="text/css"; charset="windows-1251">

<title>Файл-структура</title>

<style>

<!--

/* Style Definition */

p.MsoNormal

     {margin:0cm;

     margin-bottom:.0001pt;

     font-size:12.0pt;

     font-family:"Times New Roman";

     text-align:"justify";}

/* Page Definition */

@page Section1

     {size:595.3pt 792.0pt;

     margin:2.0cm 42.5pt 2.0cm 3.0cm;}

div Section1;

      {page:Section1;}

-->

</style>

</head>

 

<body lang=RU style='text-justify-trim:punctuation'>

<div class=Section1>

<ul style="list-style: none url(bl_arrow.gif) inside">

<lh><p class=MsoNormal style='text-autospace:none'><font size=+1><i>Вложенный список 3.1</i></font>

<li><p class=MsoNormal style='text-autospace:none'>Пункт списка 3.1.1

<li><p class=MsoNormal style='text-autospace:none'>Пункт списка 3.1.2

</ul>

</div>

</body>

</html>

 

Просмотр выходного файла:

Примерный список

1) Пункт списка 1

2) Пункт списка 2

3) Пункт списка 3

Вложенный список 3

    1. Пункт списка 3.1
    2. Пункт списка 3.2
    3. Пункт списка 3.3

Вложенный список 3.3

      • Пункт списка 3.3.1 - строка 1
        Пункт списка 3.3.1 - строка 2
      • Пункт списка 3.3.2

4) Пункт списка 4 - строка 1
Пункт списка 4 - строка 2
Пункт списка 4 - строка 3

5) Пункт списка 5

Список создан!

 

 

        Создание Таблиц, взаимосвязь с таблицами файлов других форматов

 

Для создания таблиц служит диалоговое окно "Интерактивная файловая Таблица", вызываемое через опцию Главного меню  {Таблица}. Таблица визуально отражает её расположение в границах максимальной длины строки Редактора TeConv. Параметры таблицы определяют число её строк и столбцов, а также левое и правое поле таблицы.

 

Ячейки таблицы заполняются непосредственно или через шаблон-строку, которая может содержать многострочную информацию (обмен информацией: DblClick по ячейке для записи в нее шаблон-строки, кнопка загрузки для записи выделенной ячейки в шаблон-строку). Заголовок таблицы также может быть многострочным и позиционируется выравниванием относительно ячеек таблицы. Задание опций позволяет отформатировать стиль и размер шрифта, а также расположение заголовка относительно таблицы. Текст, загружаемый в ячейку можно задать моноширинным шрифтом CourierNew для чего надо задать соответствующую  опцию.

 

Файл для хранения структуры таблицы имеет расширение .tbl и может использоваться в качестве ссылки на таблицу в основном тексте Редактора TeConv, тогда при сохранении этого текста в формате rtf-файла или htm-файла эта таблица будет встраиваться в файл. Кроме этого возможно сохранить таблицу как отдельный файл формата rtf или htm, а в текстовом файле содержимое ячеек Таблицы по строкам или по столбцам с задаваемым по запросу разделителем.

 

В опции меню {Правка} предусмотрены различные варианты редактирования и трансформирования строк и столбцов всей Таблицы (в том числе сортировка и перестановка) или отдельно фиксированной и информационной зоны.

 

Признаком вставки Таблицы в файл служит наличие в начале строки тега [t], за которым в круглых скобках располагается полный путь файла с расширением .tbl ( например, [t](D:\RA\table.tbl) ). Этот табличный файл должен быть заранее создан как интерактивная файловая Таблица. Для вставки Таблицы в основной текст документа необходимо поставить курсор в начале строки с указанной конструкцией и обратиться к опциям Главного меню {Сервис}à{Вставить тег в формат-ресурс}à{[g](…) - ссылка на таблицу ...} .

 

В меню имеется возможность записать в Таблицу данные из текстового файла. При этом можно выбрать различные варианты загрузки ячеек Таблицы и задания данных в файле путем задания в открывающемся окне " Параметры загрузки Таблицы"  параметров: имя Файла данных, область загрузки Таблицы, расположение данных и номер строки или столбца, разделитель данных в Файле для ячеек Таблицы. Таким образом, задание параметров определяет будет ли Таблица заполняться целиком или только отдельным столбцом или строкой, с фиксированной зоной или без неё, а также как считывать данные из Файла в зависимости от выбранного разделителя, могущего включать один или несколько символов (перевод строки, табуляция, пробел, точка с запятой или вариант пользователя). Доступ через опции Главного меню {Файл-Таблица}à{Записать в Таблицу данные из TXT-файла ...}

 

Создан интерфейс для занесения данных в Таблицу из Web-файлов (с расширениями .htm и .html) и doc-файлов (с расширениями .doc и .rtf) через работу в окне "Файл-структура". В этом окне выбранный Web-файл отображается с разметкой начала существующей в нём таблицы (тег <table>) в виде иконки со стрелкой. Границы таблицы  визуально  отражаются при наведении мышки на изображение иконки, а для экспорта следует выделить необходимые таблицы путем нажатия по иконке или непосредственно мышкой. Экспорт может происходить в одном из режимов: 'Новая таблица'  или  'Добавить в таблицу'. При этом установленные параметры интерактивной Таблицы (размеры по строкам и столбцам, фиксированные зоны) при создании новой Таблицы игнорируются и устанавливаются в соответствии с размерами экспортируемой таблицы, а при добавлении в Таблицу корректируются по максимальному количеству столбцов и строк объединенной Таблицы (фиксированные зоны отсутствуют). При экспорте Doc-файла включается невизуальное приложение WORD, в котором выбранный файл преобразуется в файл _tmp.htm (располагается в том же каталоге, где TeConv.exe) и подключается к аппарату для работы с Web-файлами. Доступ через опции меню:

 {Файл-Таблица}à{Записать в Таблицу данные из Web-файла ...}

 {Файл-Таблица}à{Записать в Таблицу данные из Doc-файла ...}

 

Ряд опций меню предназначено для взаимосвязи Интерактивной Таблицы с приложением EXCEL. Предлагается выбор области действия Таблицы (с фиксированной зоной и без неё), формат текстовых или числовых данных для EXCEL. На базе загруженной Таблицы с числовыми данными можно построить средствами EXCEL диаграммы (графики) по задаваемым в вызываемом окне  "Параметры создания диаграммы в EXCEL" параметрам: тип и форма вывода диаграммы, расположение данных в Таблице, заголовок диаграммы, подписи осей, отражение легенды, отражение таблицы, расположение диаграммы на листе. Дальнейшая обработка этих объектов производится уже средствами приложения EXCEL до его закрытия и возвращения в Редактор TeConv. Доступ через опции меню {Файл-Таблица}à{Построить диаграмму в Excel по данным Таблицы ...}

 

         Внедрение Картинок для отображения в файлах других форматов

 

Редактор TeConv не имеет средств явно отображать файлы с изображениями, однако существует возможность создать формат-ресурс для вставки ссылки на картинку, и получить из него файл типа rtf или htm, который можно просмотреть через Word или WebBrouser. Для внедрения картинки используется тег [g], который всегда располагается в формат-ресурсе в начале строки и вставляется в позицию курсора через Главное меню {Сервис}à{Вставить тег в формат-ресурс}à{[g](…) - ссылка на картинку ...} . ( например, [t](D:\RA\table.tbl) ). Тег [g] имеет в круглых скобках список шаблон-параметров:

 

[g]

-

тег для  внедрения картинки в текст из файла графического  формата, за которым в круглых скобках задаются параметры картинки:

src=" "         - путь к графическому файлу (обязательный параметр);

                     допустимые расширения графических форматов:

                     jpg,jpeg,ico,bmp,gif (RTF); допустимый формат (HTM);

 width=" "   - ширина картинки в пикселях (HTM,RTF), процентах (HTM);

 height=" "  - высота картинки в пикселях (HTM,RTF), процентах (HTM);

 hspace=" " - пустое пространство в пикселях слева и справа картинки (HTM);

 vspace=" " - пустое пространство в пикселях выше и ниже картинки (HTM);

 align=" "   - расположение картинки и текста определяется значениями:

                        center - картинка автономна и выравнивается по центру (HTM);

                        картинка  выравнивается по центру, текст обтекает картинку

                        с двух сторон (RTF);

                        left   - картинка слева, текст обтекает справа (HTM,RTF);

                        right  - картинка справа, текст обтекает слева (HTM,RTF);

                        top,middle,bottom -  картинка слева, текст начинает  размещаться

                        справа в соответствии со значением параметра - сверху, из центра,

                        внизу (по умолчанию), но только до [br], далее текст размещается

                        под картинкой (HTM);

   border=" " - толщина рамки в пикселях (HTM); 1 - тонкая рамка, >1 - жирная

                       рамка (RTF); по умолчанию 0 - без рамки;

   title=" "  - краткое описание картинки (HTM);

 

(например, [g](src="D:\arch\sh.jpg" width="50" height="50" align="" border="1" title="Книжка")); этот тег вставляется в основной текст документа в начале строки, отмеченной  курсором, через опции      Главного меню {Сервис}à{Вставить тег в формат-ресурс}à{[g](…) – ссылка на картинку …} ; при вставке ссылки параметр src заполняется автоматически, а другие параметры заполняются пользователем при необходимости;

 

Одним из важных параметров является параметр выравнивания align, который управляет расположением картинки в тексте. Однако картинка может располагаться автономно от текста при наличии тегов [p], которые удобно располагать на отдельных строках до и после тега [g](…). В этом случае параметр выравнивания указывает на автономное расположение картинки. По умолчанию, выравнивание текста в абзаце  производится по обоим полям документа.

 

Замечания по вставке картинки через формат-ресурс

1. В силу того, что TeConv не является графическим редактором, способ вставки в rtf-файл производится через мета-канву, т.е. графические файлы любого формата предварительно преобразуются и могут занимать значительный битовый объем. Поэтому рекомендуется вставлять картинки в rtf-файл не очень большого размера, ограничений в размерах картинок для вставки в htm-файл нет.

2. Исходная картинка в gif-формате может быть анимационной, однако это свойство сохраняется только при создании htm-файла и просмотре его через WebBrowser.

3. Наиболее качественное выравнивание картинки относительно текста может быть достигнуто только при создании htm-файла, впоследствии этот формат можно преобразовать в документ средствами Word.

4. Если при создании htm-файла, размещаемый на уровне картинки абзац текста не занимает всё поле картинки и есть необходимость начать следующий абзац ниже поля картинки, то это можно сделать, если в начале следующей строки разместить автономный тег [br].

5. Выравнивание текста в строке абзаца при встрече в ней тега переноса [br] производится для rtf-файла и не производится для htm-файла.

 

 

         Вставка закладки (якоря)

 

Создание текстовых структурированных интерактивных документов требует средств разметки документов путем задания закладок в rtf-файлах или якорей в htm-файлах. Каждый из этих элементов определяет URL-адрес для  гиперссылки на внутренний ресурс. Редактор TeConv может выполнить эту задачу только опосредованно, путем создания  формат-ресурса, используя тег маркировки [mr], с последующей генерацией из него файлов форматов RTF или HTM, используя опции Главного меню:

 {Сервис}à{Сохранить как Rtf  …}

 {Сервис}à{Сохранить как Htm  …}

 

Тег [mr] всегда применяется к выделенному тексту, используя  опции  Главного меню {Сервис}à{Вставить тег в формат-pесурс}à{[mr](…) - ссылка на закладку (якорь) …} . Этот тег замещает в тексте выделенный фрагмент и имеет в круглых скобках два параметра: имя закладки (якоря), которое следует задать в вызываемом окне "Информационный запрос" (имя является идентификатором и, как правило, формируется из выделенного текста) и через пробел выделенный текст. Например, для выделенного фрагмента Внешний цикл в текст вставится текст [mr](Внешнийцикл Внешний цикл). Набор тегов [mr] при загрузке формат-ресурса в окно редактора порождает список URL-адресов для выбора внутренних гиперссылок.

 

 

         Вставка гиперссылки на внутренний ресурс

 

Адрес внутреннего ресурса может содержать имя закладки в rtf-файле или имя якоря в htm-файле (для однозначности далее будем оперировать термином 'закладка'). Закладка определяет конкретную точку текста с назначенным ей именем, на которую возможен переход курсора по гиперссылке. Закладка может находиться в том же документе при генерации файлов типа rtf и htm, или в другом документе при генерации файла типа htm. Перед вставкой тега гиперссылки в текст надо вставить тег [mr] соответствующей закладки для определения адреса внутреннего ресурса. URL-адрес может быть двух видов:

  1) #<имя закладки>

       (например,  #Списоктем)

  2) <внешний URL-адрес>#<имя закладки>

       (например, ../examples.htm#Списоктем)

 

В Редактор TeConv влючена  возможность создать формат-ресурс с тегом [hm], определяющим создание гиперссылки на внутренний ресурс при генерации  файлов  типа  rtf или htm, которые можно просмотреть средствами приложений Word или Brouser.  Для  URL-адреса первого вида тег [hm] должен иметь в круглых скобках в качестве параметров  не менее одной лексемы, первая  из которых является URL-адресом, а остальные составляют текст, к которому "привязывается" этот URL-адрес и образуется гиперссылка. Если текст выделения отсутствует, то он заменяется текстом URL-адреса. URL-адрес второго типа дополняется только именем закладки, вставляемым в позицию курсора, который должен располагаться сразу после символа '#'.

 

Тег [hm] применяется к выделенному тексту или, если его нет, к позиции курсора, используя опции Главного меню {Сервис}à{Вставить тег в формат-ресурс}à{[hm](…) - гиперссылка на внутренний URL-адрес …}. При этом вызывается окно информационного запроса, в котором можно выбрать имя закладки из предлагаемого списка закладок текущего формат-ресурса. Этот список формируется автоматически при открытии формат-ресурса в окне  редактора из тех закладок, которые уже содержатся в формат-ресурсе. Для URL-адреса первого вида текст информационного запроса приформировывается в качестве первой лексемы к выделенному тексту и помещается в формат-ресурс в виде: [hm](<имя закладки> <выделенный текст>), а при отсутствии выделенного текста в виде: [hm](<имя закладки>) .

 

 

         Вставка гиперссылки на внешний ресурс

 

Адрес внешнего ресрсурса может определять абсолютный URL (например, www.мособлеирц.рф, http://teconv.srcc.msu.ru) или относительный URL (например, .../examples.htm, d:/book/decs/art1.htm). Этот адрес можно использовать для создания гиперссылки в форматов документов (rtf,htm), поддерживающих переход по ним.

 

В Редактор TeConv включена возможность создать формат-ресурс с тегом [hp], определяющим создание гиперссылки при генерации файлов типа rtf или  htm, которые можно просмотреть средствами приложений Word или Brouser. Тег [hp] должен иметь в круглых скобках в качестве параметров не менее одной лексемы, первая из которых является URL-адресом, а остальные составляют текст, к которому "привязывается" этот URL-адрес и образуется гиперссылка. Если текст выделения отсутствует, то он заменяется текстом гиперссылки.

 

Тег [hp] применяется к выделенному тексту или, если его нет, к позиции курсора, используя опции Главное меню {Сервис}à{Вставить тег в формат-ресурс}à{[hp](…) - гиперссылка на внешний URL-адрес …} .  При  этом вызывается окно информационного запроса, в котором можно набрать URL-адрес или выбрать его из предлагаемого списка URL-адресов. Этот список формируется автоматически из директории ...Избранное/Гиперссылки, где Избранное (Favorites) является системной папкой, которая доступна для  наполнения из WebBrowser, где нужно заранее сохранить адрес загруженного сайта во вложенной папке (подкаталоге) Гиперссылки . Содержимое информационного запроса приформировывается в качестве первой лексемы к выделенному тексту и помещается в формат-ресурс в виде: [hp]('URL-адрес' 'выделенный текст'), а при отсутствии выделенного текста в виде: [hp]('URL-адрес')  .

 

 

        Выравнивание текста по ширине

 

Выравнивание текста по ширине может происходить несколькими способами: выравнивание без переноса слов, выравнивание с переносом слов (русские и английские слова), а также выравнивание по заданному  шаблону с использованием клавиатуры. Эти преобразования осуществляются через опции Главного меню:

 {Сервис}à{Выровнять по ширине без переноса слов}

  {Сервис}à{Выровнять по ширине с переносом слов}

 

В первых двух случаях шаблон выравнивания (отступ "красной строки" и длина строки) определяется автоматически по первой строке выделенного текстового файла или фрагмента текста, к которому будет применено выравнивание. Таким образом, шаблон-строка должна быть предварительно отформатирована вручную по требуемым параметрам.

 

Для выравнивания по заданному шаблону всего текста, текстового абзаца или списка необходимо сначала выделить и запомнить ({Shift+F7}) шаблон-структуру первой строки абзаца (отступ "красной строки" и длина строки) или одной/двух строк с "перечислителем" (вид "перечислителя" списка: '<текстовая лексема> -' , '-' , '1.', '1)', 'a)',  'Б)' ,  I.' , пробельные отступы и длина строки). Затем применить образец к выделенному фрагменту текста или фрагменту текста, ограниченному пустой строкой ({Ctrl+F8} для выравнивания без переноса слов или {Ctrl+F9} для выравнивания с переносом слов).

 

 

        Проверка орфографии

 

Для проверки орфографии  русского или английского текста используется аппарат контроля слов, содержащийся в стандартной программе Windows Microsoft Offis Word, к которой и производится  подключение. Обращение к контролю орфографии доступно для текста, представленного в одном из видов: без переноса или с переносом строк. Перед запуском программы проверки необходимо указать диапазон текста, подлежащего контролю.

 

 Предусмотрены различные диапазоны выборки текста для проверки слов, разделенных пробелами-разделителями. Для проверки одного слова необходимо установить курсор за последней буквой слова (перед пунктуационным знаком, если он замыкает слово), для проверки группы слов или предложений необходимо выделить их в тексте, а для проверки всего текста надо выделить его весь целиком. Запуск программы проверки орфографии производится через опции Главного меню:

 {Сервис}à{Проверить орфографию визуально}

 {Сервис}à{Проверить орфографию с протоколом}

 

В режиме визуальной проверки при обнаружении ошибочно написанного слова на экране появляется Список, содержащий одно или несколько слов  для замены, если они были найдены в базе Word. Для замены слова в тексте следует  сделать DblClick по выбранному слову в Списке, а для отмены исправления слова в тексте надо выбрать опцию Списка '>отменить'. Возможна ситуация, когда программа определила слово как ошибочное, но не выдала слов  для  замены либо не устраивает ни одно  предлагаемое слово замены, тогда надо воспользоваться опцией Списка '>задать...', которая вызывает диалоговое окно "Задайте слово для замены", где пользователь сам может указать заменяющее слово.

 

Специальный режим контроля орфографии файла (имеет "горячую" клавишу {F7}) предусматривает выдачу протокола, отражающего строку файла с ошибкой, ошибочное слово и варианты его замены. Если создан протокол ошибок орфографии, то производится запрос на задание имени для его сохранения как нового файла (Ok), либо как дозапись в указанный файл (All). Контроль орфографии файла с выдачей протокола также выполняется через блоковую функцию BlockOrfg (см. "Специальные средства для контекстного редактирования").

 

 

      Редактирование с использованием автозамены и автотекста

 

Автозамена являeтся удобным средством автоматического редактирования вводимого текста и обеспечивает удобный набор ряда спецсимволов,  которые не представлены текстовыми клавишами, но имеют кодировку в русской версии Windows. Пользователь может дополнить стандартный набор  автозамен через опцию Главного меню {Параметры}→{Параметры автозамены …), которая открывает одноименное окно, где задаются ключи автозамены и корректируются  набор автозамен пользователя. Набор автозамены определяется парой <символы поиска>=<символы замены> и сохраняются в файле AutoRepl.dot  (находится в каталоге вместе с TeConv.exe). Нетекстовые спецсимволы замены, которые  набираются на цифровой клавиатуре, можно задать как NUMLOCK_N, где N - числовой код в диапазоне 128..191 (символы с кодами 0..31 и 127 относятся к служебным кодам). Стандартный набор автозамен включает в себя:

 

   (c)  -->    ©         (tm)  -->            (*)  -->   °

   (e)  -->    Є         ($)    -->      §         (+-) -->   ±

   (r)  -->    ®         (...)  -->              (o)  -->   ¤

 

 

Автотекст предназначен для ввода текстовых конструкций (слов, словосочетаний, набора предложений), по образцу. Пользователь формирует наборы элементов автотекста, состоящие из имени элемента (текст поиска) и образца (текст замены). Наборы автотекста хранится в файле AutoText.dot (находится в каталоге вместе с TeConv.exe). Работа с наборами  автотекста осуществляется через опцию Главного меню {Сервис}→{Автотекст …} (или "горячими" клавишами {Ctrl+F3}), которая открывает одноименное окно с двумя вкладками "Выбор элемента автотекста" и "Создание элемента автотекста".

 

Для создания нового элемента автотекста необходимо выделить нужный образец в исходном тексте, зайти на вторую вкладку (выделенный образец для элемента автотекста отобразится автоматически) и перед добавлением этого элемента автотекста задать его имя. Также можно использовать первую вкладку для добавления или удаления элемента автотекста, предварительно заполнив соответствующие поля для имени и образца элемента автотекста.

 

Вставка элемента автотекста в редакторе может производиться в двух режимах: вставка в позицию курсора и замена произвольного фрагмента выделения (наличие выделения определяет доступ к соответствующей кнопке на первой вкладке). Текст автозамены выбирается из списка по образцу. Другой удобный способ использования автотекста - набрать и выделить в тексте имя элемента автотекста, а затем нажать клавиши {Alt+F3} для замены его на образец.

 

 

        Нахождение синонимов и антонимов слова

 

При написании текста в Редаторе файлов может возникнуть  необходимость найти синонимы или антонимы для определенного слова. Этот поиск производится на базе приложения Microsoft  Office Word через Тезаурус с использованием специализированных лексико-семантических словарей. Текущее слово может быть задано путем выделения его в тексте и автоматическом переносе в поле входного параметра, либо непосредственно набрано или записано туда из буфера ввода. Поле входного параметра ('Текущее слово: ') появляется в новом  окне,  вызываемом из Главного меню через опцию {Сервис}à{Тезаурус (синонимы и антонимы)} ("горячие" клавиши {Ctrl+F7}).

 

Кнопка {Найти варианты} запускает  процесс  поиска через Тезаурус вариантов синонимов и антонимов слова, которые отображаются в соответствующих таблицах, из которых мышкой можно выбрать нужное слово (вариант поиска) для помещения в поле выходного параметра ('Заменить на:'). Слово замены можно поместить в буфер обмена, либо записать в текст. При этом выбранный вариант заменяет выделенное слово или вставляется в место курсора при отсутствии выделения слова.

 

Замечания.

1. При поиске вариантов Тезаурус может не найти ни одного варианта, или же выдавать ошибку поиска, возможно, при нехватке  оперативной памяти.

2. Если текущее слово поиска начинается с прописной буквы, то слово замены тоже начинается с прописной буквы.

 

 

        Перевод текста на другие языки

 

Перевод текста на другой язык производится через подключение онлайн-сервиса 'GoogleTranslateAPI' для чего используется одноименный dll-файл, который необходимо поместить в тот же каталог, где и основной загрузочный файл TeConv.exe. Вызов этого подключения производится в окне, вызываемом из Главного меню Редактора файлов через опции {Сервис}à{Перевод текста на другие языки} ("горячие" клавиши {Ctrl+F8}).

 

     Предусмотрен взаимный перевод текста c языков:

 

          ru - русский,       en - английский,

          de - немецкий,     fr - французский,

          es - испанский,    it - итальянский.

 

Входной текст может быть набран в ручном режиме, получен через буфер обмена из Редактора файлов, либо загружен из файла, с выбранным именем. При этом файл большого объема может не переводиться сразу полностью, тогда его следует подавать на перевод порциями. Задав объем порции, можно узнать число таких порций в файле (N), и далее задавать номер  N>=1 для получения этой порции файла в качестве входного текста. Для N=0 в качестве входного текста загружается весь файл целиком, но в этом случае велика вероятность перевода только части текста, т.к. лимит разового перевода ограничен 500 символами. Можно попытаться подобрать размер порции с помощью опции контекстного меню {Определить номер байта по курсору}, установив курсор во входном тексте там, где перевод прервался. При этом позиция курсора для текущей порции выдается с учетом начала порции в файле.

 

Для N=-1  предусмотрена загрузка текста для перевода циклически, порциями с номерами от единицы до максимального значения, которое надо определить по кнопке {Подсчитать порции} (число порций зависит от задаваемого размера порции). При этом перевод каждой порции будет добавляться в выходной текст, перемежаясь разделительными строками с указанием номера порции. Номер порции перевода в информационном окошке (вместо -1) и входной текст будут циклически меняться, а на работу переводчика в таком режиме будет указывать появившийся индикатор (при начальном заполнении входного текста из файла загружается первая порция).

 

Выходной текст формируется после нажатия кнопки {Перевести входной файл} и помещается в выходное поле с учетом заданного признака дозаписи. Далее перевод может быть записан в файл (новый или в режиме дозаписи), а также скопирован в буфер обмена и вставлен по позиции курсора в поле Редактора файлов.

 

Замечание. Двойные кавычки убираются из входного текста, т.к. приводят к ошибочной ситуации - прерыванию процесса перевода.

 

 

Спецнабор для отображения нетекстовых структур

 

Понятие спецнабора

Редактор TeConv не имеет явно графической направленности, однако он имеет ряд специальных средств для генерации и печати нетекстового документа, включающего в себя математические формулы, картинки и таблицы. Эти возможности определяются в формируемом спецнаборе, текст которого может включать ряд управляющих тегов:

 

[h]

[hN]

-

тег, находящийся в начале каждой строки заголовка и задающий параметры выдачи заголовка всего документа или его разделов; число N=1,2,3 определяет поправку увеличения размера шрифта от базового height (height+1,height+2,height+3), а по начальному символу текста заголовка (он может начаться с тега стилевого форматирования) определяется как размещается заголовок в строке (пробел - по центру, иначе - от начала строки); ограничителем заголовка служит пустая строка или любой другой тег, кроме закрывающего тега или тега стилевого форматирования; например,

[h3] [b]СПЕЦНАБОР ДЛЯ ГЕНЕРАЦИИ НЕТЕКСТОВЫХ ОБЪЕКТОВ[/b]

[h2] [i]/математические формулы, картинки, таблицы/[/i]

[/h]

-

тег конца заголовка (обязателен, если сразу за ним в строке начинается основной текст);

[p]

-

тег начала абзаца для пустой строки;

[p]…

-

тег начала абзаца, причем последующий текст возможно начать с "красной строки";

[pp]…

-

тег начала абзаца всегда без "красной строки";

[/p]

-

тег конца абзаца (не обязательный тег); альтернатива – пустая строка или тег начала абзаца;

[sp](N)

-

тег для вставки N обязательных пробелов в строке;

[fn](fName [,fSize])

-

tag for installing a new font other than the base one, to issue the next paragraph or line:

      fName - the name of the font instead of the base one

                      for issuing the following text:

                  Arl - Arial font,

                  Cur - Courier New font,

                  Rom - font Times New Roman;

                      0 - return to the base font and adjust its size;

        fSize - correction to the base font size for the output

                    of the following text (the parameter may be

                     missing):

                     N - the correction value is a signed integer;

This tag allows you to output a text string in a font other than the base one, for example, to output a paragraph in the monocrift with the reduced size:

[fn](Cur,-1)

[pp]текстовый фрагмент[/p]

[fn](0)

[sz](N)

-

поправка к исходному размеру шрифта size (N - положительное или отрицательное целое);

[sh](J1|J2)

[sh](0)

-

сдвиг последующих абзацев на J1 позиций от левого поля страницы и на J2 позиций от правого поля страницы, возврат к исходному состоянию задается 0-ым значением параметра;

[cl](Colr)

[cl](none)

-

цвет Colr вывода текстового фрагмента:

none - по умолчанию (черный) или отмена заданного цвета,

black - черный, maroon - темно-красный, green - зеленый,

olive - оливковый, navy - темно-синий, purple - пурпурный,

teal - стальной, gray - серый, silver - серебряный,

red - красный, lime - ярко-зеленый, yellow - желтый,

blue - синий, fuchsia - фиолетовый, aqva - бирюзовый, white - белый;

[br]

-

тег перехода на новую строку;

[fl]

-

обязательное выравнивание строки перед переходом на новую строку [fl][br] или конечной строки абзаца [fl][/p];

[ml]

-

центрирование текущей строки абзаца по  ширине страницы (например, центрирование  пронумерованной  формулы:

 [pp][s]...[/s][ml] (1)[fl] );

[pg]

-

переход на новую страницу (тег находится в начале отдельной строки и отделяется от предыдущего текста пустой строкой);

[s]…[/s]

-

обрамляющие теги специального текстового кода для визуализации  формул, символов и знаков (см.раздел "Математические формулы на базе Img-приложения";

[po](...)

-

текст, заключенный в круглые скобки, выводится между предыдущей и последующей строкой, не занимая отдельной строки; например, для межстроковой нумерации двух матформул:

  [pp][s]...[/s]      //матформула

  [po]([pp](7)[fl])   //нумерация справа (7)

  [pp][s]...[/s]      //матформула

[r](link,"text")

-

тег для задания внешней ссылки (web или mail) или внутренней ссылки (bookmark) с двумя параметрами:

  link  -  ссылка без пробелов вида:

       https://... (адрес внешней web-ссылки)

       mailto: ... (адрес внешней mail-ссылки)

       bmark:... (имя закладки в тексте для внутренней ссылки)

   "text" -  текст под ссылку, заключенный в двойные кавычки);

[m](bookmark) 

-

тег установки в тексте закладки для внутренней ссылки, всегда располагающийся в начале строки  (bookmark - имя закладки без пробелов); в начале каждой страницы автоматически устанавливается закладка вида [m](Page#n), где n - номер страницы, а в тексте документа можно установить на нее ссылку; если строке с закладкой предшествует непустая строка абзаца, то абзац обязательно должен закрываться тегом [/p].

Примеры ссылок:

  [r](https://orcid.org/0000-9941-2248,"0000-9941-2248")

  [r](mailto:zaripov.di@mail.ru,"zaripov.di@mail.ru")

  [r](bmark:Avtors,"Иванов И.И.")

  [m](Avtors)текст после закладки

  [r](bmark:Page#5,"стр.5")

[l]

-

тег для задания основного или вложенного списка с параметрами, за которым в круглых скобках задаются параметры списка, определяющие тип маркера списка, вид заголовка и расположение строк (см. раздел "Списки различной маркировки";

[lh]

-

тег для задания заголовка списка;

[li]

-

тег для задания пункта списка;

[/l]

-

тег для задания конца списка;

[t]…

-

тег для генерации вставки текста таблицы, из файла с расширением .tbl, полный путь к которому помещается в качестве  параметра тега  в круглых скобках (см. раздел "Таблицы из tbl-файлов");

[g]…

-

тег для генерации вставки в текст картинки из файла графического формата, за которым в круглых скобках задаются параметры картинки, определяющие полный путь к файлу, её размеры,  вид и расположение (см. раздел "Картинки из файлов графических форматов");

[i][/i]

-

теги начала и конца текста, форматируемого стилем "курсив";

[b][/b]

-

теги начала и конца текста, форматируемого стилем "жирный";

[u][/u]

-

теги начала и конца текста, форматируемого стилем "подчеркивание";

[i][u]...[/u][/i] [u][i]...[/i][/u]

-

теги начала и конца текста, форматируемого стилем

"курсив" + "подчеркивание";

[i][b]...[/b][/i] [b][i]...[/i][/b]

-

теги начала и конца текста, форматируемого стилем

"курсив" + "жирный";

[b][u]...[/u][/b] [u][b]...[/b][/u]

-

теги начала и конца текста, форматируемого стилем

"жирный" + "подчеркивание";

 

Просмотр и печатать спецнабора осуществляется через опции Главного меню {Спецнабор}→{Просмотр и печать}. Документ отображается в специальном окне, в котором можно, используя кнопку-ключ, задавать параметры просмотра:

-имя шрифта (Arial, Courier New, Times New Roman);

- размер шрифта (увеличенный, средний, уменьшенный);

- оформление страниц (нумерация, отступы "красной строки");

- колонтитулы;

- номера страниц, выдаваемых на печать.

 

        Математические формулы на базе Img-приложения

 

Редактор TeConv имеет специальные средства для генерации и печати нетекстового документа и одно из них - воспроизведение математических формул. Эта возможность обеспечивается специальным Img-приложением (разработчик Антон Григорьев: grigorievab@mail.ru ), доступ к которому осуществляется через опции Главного меню {Спецнабор}→{Набор текста формулы}. Img-приложение содержит Справочник математических символов, знаков, зарезервированных слов (токенов) и функций с их кратким описанием.

 

Существует возможность на базе элементов справочника сформировать текстовое представление необходимой математической конструкции, просмотреть её графическое представление и занести текстовое представление, оформленное обрамляющими тегами [s]…[/s] в буфер для последующей вставки в спецнабор в Редакторе файлов. Такая конструкция может быть вставлена в любое место строки, но без переноса её части на другую строку, т.к. обрамляющие теги должны находиться в одной строке.

 

Специальные возможности:

-       можно в одних спецтегах сразу задать несколько формул, где N разделяющих пробелов между формулами задается конструкцией ' & space(N) & ' или '&space(N)&', либо обрамлять каждую формулу отдельными тегами, а в качестве разделительных пробелов использовать конструкцию '[sp](N);

-       для подгона формулы на текущей строке ближе к формуле, расположенной на следующей строке, можно использовать перед формулой префикс: [s]_dn_…[/s] или  [s]_dnN_…[/s] (надстрочная формула, приспущенная на 1/2 высоты строки,  при задании N>=0 увеличивается высота опускания);

-       для подгона формулы на текущей строке ближе к формуле, расположенной на предыдущей строке, можно использовать перед формулой префикс: [s]_up_…[/s] или [s]_upN_…[/s] (подстрочная формула, приподнимается на 1/2 высоты строки, а при задании N>=0 увеличивается высота поднятия); например, с начальной подгонкой пробелами к основной  формуле [sp](10)[s]_up2_K>0[/s].

-        .

 

Работа со Справочником осуществляется таким образом:

   - выбрать нужную математическую конструкцию из справочника;

   - изучить описание выбранной конструкции и визуальные примеры;

   - выбрать из нижерасположенного списка текстовое представление нужного примера и через DblClick вставить в окно текстового набора формулы в позицию, указанную курсором; это окно также можно самому редактировать;

   - кнопкой {Показать графически} получить контрольное графическое представление;

   - записать текстовое представление в буфер для дальнейшей вставки в спецнабор;

   - записать текстовое представление в буфер для дальнейшей вставки в спецнабор;

   - сохранить, если нужно, текстовое представление формулы в стандартном архиве формул MathFormul.dot из директории загрузочного файла TeConv.exe, или в тематическом личном архиве;

   - выбрать, если нужно, из списка архива формулу и через DblClick вставить в окно текстового набора формулы в позицию, указанную курсором.

 

        Картинки из файлов графических форматов

 

Редактор TeConv имеет специальные средства для генерации и печати нетекстового документа и одно из них - использование тега [g] в спецнаборе для вставки картинки (рисунка) в документ. Этот тег имеет в круглых скобках список шаблон-параметров в виде лексем:

имя параметра="значение параметра".

Нужные параметры надо заполнить, а если значение не задано, то параметры со значениями "" или " " игнорируются, либо лексему в списке можно опустить.

 

Шаблон-параметры тега [g] для графических файлов:

 

[g]

-

тег для внедрения картинки в текст из файла графического формата, за которым в круглых скобках задаются параметры картинки:

src=" "         - путь к графическому файлу (обязательный параметр);

                     допустимые расширения графических форматов:

                     jpg, jpeg, ico, bmp, gif ;

 width=" "   - ширина картинки в пикселях или в % от фактической в файле;

 height=" "  - высота картинки в пикселях или в % от фактической в файле;

 hspace=" " - пустое пространство в пикселях слева и справа картинки,

                      при обтекании картинки текстом означает размер отступа текста;

 vspace=" " - пустое пространство в пикселях выше и ниже картинки;

 align=" "   - расположение картинки и текста определяется значениями:

                      'center' - картинка автономна и выравнивается по центру,

                                    теги [p], удобно располагать на отдельных строках

                                    до и после тега [g](…);

                      'left'   - картинка слева, возможно обтекание её текстом справа,

                                 и текст начинается на следующей строке без тега начала

                                 абзаца [p] или[pp];

                      'right'  - картинка справа, возможно обтекание её текстом слева,

                                   и текст начинается на следующей строке без тега начала

                                   абзаца [p] или [pp];

                         'line'   - картинки и таблицы, теги которых [g] и [t] заданы

                                      подряд в спецнаборе, располагаются в ряд по строке;

  border=" "    - толщина рамки в пикселях; по умолчанию 0 - без рамки;

  offtitsz="-1"   -  коррекция размера текущего шрифта для выдачи подписи

                            подписи (по умолчанию уменьшение на -1, для сохранения

                            текущего значения - 0); 

   title=" "         - подпись под картинкой, усеченная размером ширины картинки

                           (допускается многострочная подпись с разделителем [br],

                            а также теги форматирования, размер шрифта - уменьшенный);

 

Например,

[g] (src="D:\arh\r1.gif" width="35%" height="20" hspace="" vspace="" align="left" border="" title="")

Этот тег вставляется в основной текст документа в начале строки, отмеченной курсором, через опции Главного меню {Спецнабор}à{Вставить тег в спецнабор}à{[g](…) – ссылка на картинку …}; при вставке ссылки параметр src заполняется автоматически, а другие параметры заполняются пользователем при необходимости;

объекты, разделенные строкой с тегом [sz]() , размещаются на странице один под другим и могут обтекаться  текстом совместно; например, при задании картинки под таблицей с заданным уменьшенным размером шрифта:

. . . . . . . . . . .

[sz](-1)

[t](C:\resr\tab.tbl) 

[sz](0)

[sz]()

[g](src="C:\resr\img.gif" ... ) 

. . . . . . . . . . .

 

 

 

        Таблицы из tbl-файлов

 

Редактор TeConv имеет специальные средства для отображения таблиц. Эта возможность обеспечивается через интерактивную таблицу, доступ к которой осуществляется через опцию Главного меню {Таблица}.

 

Открывающееся окно позволяет в визуальном режиме задать таблицу нужного размера (число строк и столбцов), её стилевое оформление (информационные и фиксированные зоны, прорисовка разделительных линий, размещение  заголовка и его стиль), расположение таблицы на странице (позиции левого и правого отступов). Далее необходимо заполнить таблицу значениями вручную или загрузить из других файлов-источников. Созданная таблица должна быть сохранена как tbl-файл, который может являться параметром тега [t].

 

В тексте спецнабора тег [t] всегда должен находиться в начале строки, например,

[t](D:\RA\tabldata.tbl)

 

При использовании в спецнаборе тег [t] может иметь дополнительные параметры для определения R областей объединенных столбцов и строк для задания текстовых заголовков или изображений через конструкции вида "img:графический файл формата bmp, gif, jpg, ico и др.", при этом файл изображения задается с полным путем доступа или относительно каталога с адресом текущей таблицы) в области объединенных строк J и объединенных столбцов N таблицы через дополнительные параметры:

 

      R{N}="Текст"

      R{N1:N2}="Текст"

      R{J#N}="Текст"

      R{J1:J2#N1:N2}="Текст"

 

Область R можно задать через номера фиксированных строк: абсолютных (J от до RowFixCount-1) и относительных (-J при отсчете от RowFixCount), столбцов: абсолютных (N от 0 до ColCount-1) и относительных (-N при отсчете от ColCount), а заголовки могут содержать теги форматирования и перевода строки. При определении области R может задаваться либо единичный номер строки или столбца, либо через ':' диапазон строк или столбцов, а если диапазон фиксированных строк не задан, то предполагается работа с 0-й фиксированной строкой; например, для задания заголовка над 0-ым и над остальными столбцами таблицы:

[t](D:\tabl.tbl R{0}="Рубрики" R{1:-1}="Характеристики,[br]полученные за период наблюдений")

 

Изображение может быть также вставлено в любую ячейку информационной зоны таблицы в виде конструкции "img:<графический файл формата bmp, gif, jpg, ico и др.>", при этом файл задается с полным путем доступа или относительно каталога с адресом текущей таблицы.

 

Текст в ячейке можно расположить вертикально, задав соответствующий размер ячейки по вертикали, достаточный для его размещения, и указав перед текстовой строкой тег: 

        [vt]...  текст, расположенный после этого тега должен содержать только

                   текстовые символы и располагается в ячейке  вертикально "снизу

                   вверх".

 

Ячейку таблицы можно визуально разделить диагональю, имеющей вершины, сдвинутые по горизонтали от противоположных углов таблицы на N% от ширины ячейки, для этого перед текстом, содержащимся в ячейке, помещается тег: 

 

        [dg](N%)   задание диагонали через ячейку таблицы со сдвижкой вершин

                         от верхнего левого  и

        [dg]()        правого нижнего углов на N% (N=0,1,...)

                        или прямо от углов, если параметр отсутствует;

 

В ячейке таблицы можно установить индивидуальный фон подложки, для этого перед текстом, содержащимся в ячейке, помещается тег: 

 

         [bg](Сolr) задание цвета фона ячейки таблицы, значение

                        параметра Сolr - см.тег [cl]; например, [bg](gray)12.345

 

Расположение тегов [t] в спецнаборе влияет на расположение таблиц на странице:

- для задания обтекания таблицы текстом надо начать текст на следующей строке без тега начала абзаца [p] или [pp],при этом обтекание произойдет с той стороны таблицы, у которой задана наибольшая позиция отступа от края страницы, а смещение начала текста от границы таблицы задается величиной наименьшей позиции отступа, например,

[p]

[t](D:\RA\table_obtek.tbl)

Здесь начинается текст, который будет обтекать таблицу ...

[p]

- для расположения таблиц в один ряд на странице надо в спецнаборе задать теги [t] на соседних строках, например,

[p]

[t](D:\RA\tabldata_1.tbl)

[t](D:\RA\tabldata_2.tbl)

[p]

- для расположения таблиц в один ряд на странице надо в спецнаборе задать теги [t] на соседних строках, например,

[p]

[t](D:\RA\tabldata_1.tbl)

[t](D:\RA\tabldata_2.tbl)

[p]

- для "слияния" таблиц, имеющих одинаковую ширину столбцов, например, при объединении ячеек и столбцов внутри общей таблицы; для этого следует использовать между таблицами связующую строку с тегом [sz]() :

[sz](-1)                            //установка уменьшенного размера текста в таблице

[t](D:\tab1.tbl R{ ... }="Текст" ...) 

[sz]()

[t](D:\tab2.tbl R{ ... }="Текст" ...) 

[sz]()

[t](D:\tab3.tbl R{ ... }="Текст" ...) 

[sz](0)                             //восстановление исходного размера текста

Текст для обтекания таблицы

- другие объекты, разделенные строкой с тегом [sz]() , также размещаются на странице один под другим и могут обтекаться  текстом совместно; например, при задании картинки под таблицей с заданным уменьшенным размером шрифта:

. . . . . . . . . . .

[sz](-1)

[t](C:\resr\tab.tbl) 

[sz](0)

[sz]()

[g](src="C:\resr\img.gif" ... ) 

. . . . . . . . . . .

 

Управляющий тег вставляется в позицию курсора через Главное меню: {Спецнабор}à{Вставить тег в спецнабор}à{[t](…) – ссылка на таблицу …} (при вставке ссылки на таблицу делается запрос файла для параметра).

 

 

        Списки различной маркировки

 

Списки - один из самых эффективных способов организации и представления информации. Различают списки по видам: упорядоченные, имеющие маркеры-перечислители (арабские и римские цифры, латинские буквы) для  своих  элементов и неупорядоченные, не имеющие маркеров или имеющие  однотипные маркеры (тире, жирные точки и другие графические знаки). Часто  создание списка сложной структуры вызывает затруднение и для удобства в спецнабор включена возможность через систему специальных тегов генерировать списки различной конфигурации, явно не заботясь о визуальной иерархической структуре вложенных списков.

 

Теги для создания списка (всегда располагаются в начале строки):

 

[l]

-

Тег для задания начала основного/вложенного списка, за которым в  круглых скобках задаются параметры списка, определяющие выходной вид списка:

type=" "  -  определяет тип маркера списка:

           не задан - без маркера;

                     0   - маркер в виде "-";

                     1   - маркер в виде арабских цифр (1,2,3...);

                     2   - маркер в виде больших римских цифр (I,II,III...)   ;

                     3   - маркер в виде маленьких римских цифр (i,ii,iii...)   ;

                     4   - маркер в виде прописных латинских букв (A,B,C...);  

                    4r   - маркер в виде прописных русских букв (А,Б,В...);  

                     5   - маркер в виде строчных латинских букв (a,b,c...);  

                    5r   - маркер в виде строчных русских букв (а,б,в...);  

                     6   - маркер в виде диска;

                     7   - маркер в виде квадратика;  

                     8   - маркер в виде кружка;

lipref=" "    -  определяет начальные символы маркера-перечислителя:

lidelim=" "  -  определяет конечный символ маркера-перечислителя:

                           не задан или '.' - конечный символ точка (например, 1. , I. , a. );

                           произвольные символы - (например, 1) , I: , a>> );

                           начальный и конечный символ скобка (например, (1) , (а) );

liposit=" "  -   определяет позицию маркера по отношению к тексту:

                           не задан или 'out' - текст пункта при переводе строки оставляет

                           висячий маркер; 'ins' - текст пункта при переводе строки

                          начинается под маркером;

lilength=" "  -  определяет количество знаков в маркере-перечислителе, если не

                        задан, то по умолчанию задается 3 числовых знака; при

                        отсутствии маркера строки списка (type="-1") задание этого

                         параметра определяет сдвижку "красной строки" в начале

                         каждого пункта этого списка;

lioff="."    -  число позиций сдвига строки вложенного цикла

                     относительно внешнего цикла (по умолчанию - 2);

                     чтобы игнорировать сдвижку строк надо задать "-1";

listyle=" "  -  определяет стиль шрифта элемента списка:

     не задан – текст без стиля;

                'i'   - курсив;

                'b ' - полужирный;

                'u'  - подчеркнутый;

lifont="..." имя шрифта элементов списка:

      не задан  - текущий шрифт,

                msf  - моноширинный шрифт (Courier New) устанавливается

                          для всего списка в параметре головного списка;

liwidth="..." ограничительная ширина строк списка:

    не задан  - список прижат к левому краю страницы,

               N%   - задается в процентном отношении от ширины листа

                          печати (например, при обтекании списка справа),

                obj   - по признаку определяется разностью между шириной

                          листа печати и шириной объекта (таблица, картинка)

                         при обтекании объекта этим списком справа или слева;

lhsize=" "  -    определяет размер шрифта заголовка:

                           не задан - текущий размер;

                           'l'   - увеличенный;

                           's '  - уменьшенный;

shift="..." -  сдвиг списка от левого края страницы печати:

    не задан  - список прижат к левому краю страницы,

              N   - число пробелов сдвижки от левого края страницы,

            N%  - задается в процентном отношении от общей

                       ширины страницы печати (можно использовать

                       при обтекании списка текстом слева),

            obj  - признак для учета ширины объекта (таблица, картинка)

                   при обтекании объекта этим списком справа;

этот тег вставляется в основной текст документа в начале строки,  отмеченной курсором, через Главное меню {Спецнабор}à{Вставить тег в спецнабор}à{[l](…) – начало списка};

[lh]

-

тег для задания заголовка списка (многострочный заголовок может иметь этот тег перед каждой строкой заголовка или содержать тег [br] для переноса строки заголовка); шрифт заголовка определяется параметром lilength; а текст может содержать теги стилей форматирования (стилевое оформление);

[li]

-

тег для задания элемента списка (располагается перед текстом  каждого пункта списка); текст пункта может иметь стилевое оформление; чтобы пропустить текущий пронумерованный пункт списка, следует задать текст: skipli 

[/l]

[/l]…

 

 

[/l]contobj

 

-

 

-

 

 

-

тег для задания конца списка (всегда располагается на отдельной строке);

строка-ограничитель списка, где наличие конечных символов [br] определяет число дополнительных пустых строк в конце списка, например, в конце списка строка подчеркивания с начальным отступом и две пустых строки:

[/l][sp](5)_________________________________[br][br]

признак 'contobj' после тега используется если список            обтекает объект (картинку), а затем добавляется текст для            продолжения обтекания объекта, например, текст обтекания            после списка, отделяющийся пустой строкой:

[/l]contobj

[br]текст после списка

 

Дополнительные теги позволяют создать через список иерархическое содержание документа с указанием страниц и расположением на странице в виде двух колонок с разделительной вертикальной линией:

 

[ld](N%)

-

тег для указания места разделения списка, т.е. перенесения           оставшихся пунктов списка во вторую колонку со сдвигом от           левого края страницы на N% от ее ширины;

[pn](N)

-

тег для указания номера страницы N, приформированной к концу           строки пункта содержания с точечным отступом, где N можно задать как:

  - явный номер страницы n>=1

  - ссылка на страницу с явным номером для пункта содержания             [r](bmark:закладка,"n")

  - ссылка на страницу с генерируемым номером для пункта содержания [r](bmark:закладка,"pglink"), на что указывает признак 'pglink';

например:

[li]Введение[pn](3)

[li]Введение [pn]([r](bmark:Point_1,"pglink")), при этом надо задать в тексте закладку перед названием текущего пункта [m](Point_1);

[/l]vertsep

-

признак 'vertsep' после тега указывает на необходимость              вертикальной разделительной линии между колонками

 

В титульной или завершающей строке списка, а также в качестве строки списка, можно задать односимвольную строку по всей ширине списка (через конструкцию [sp](0)...[fl]), например:

[hl][sp](0)*[fl]                                - строка из звездочек

[li][sp](0)[s]Symbol(8212)[/s][fl]    - разделительная сплошная линия

 

 

Например,

[p]

[l](type="1" shift="10%" lidelim=") " lilength="4" liwidth="70%" lhsize="l")

[lh][b]Заголовок списка[/b]

[li]Пункт списка 1

[li]Пункт списка 2

[li]Пункт списка 3

[/l]

 

 

               Генерация внешних и внутренних ссылок

 

В спецнаборе предусмотрена возможность для фрагмента текста установить ссылку на страницу в браузере, на почтовое приложение (внешняя ссылка) или на закладку в документе (внутренняя ссылка). Для этих целей используются теги:

 

[r]( link,"text")

-

a) тег для задания внешней ссылки (web-ссылка  или mail-ссылка) с двумя параметрами:

link - ссылка без пробелов вида:

          https://... (адрес web-ссылки)   или

          mailto:... (адрес mail-ссылки)

"text" - текст под ссылку, заключенный в двойные кавычки;

b) тег для задания внутренней ссылки (bookmark-закладка) с двумя параметрами:

link - ссылка без пробелов вида:

          bmark:... (имя закладки в тексте)

"text" - текст под ссылку, заключенный в двойные кавычки;

[m](bookmark)

-

тег всегда располагается в начале строки и устанавливает в  тексте закладку для внутренней ссылки, где bookmark - имя закладки без пробелов;

 

В начале каждой страницы автоматически устанавливается закладка вида [m](Page#n), где n - номер страницы, а в тексте документа можно установить на нее ссылку.

 

Например,

[r](https://orcid.org/0000-9941-2248,"0000-9941-2248")

[r](mailto:zaripov.di@mail.ru,"zaripov.di@mail.ru")

[r](bmark:Avtors,"Иванов И.И.")

[m](Avtors)текст после закладки

[r](bmark:Page#5,"стр.5")

 

        Обрисовка области страницы геометрической фигурой

 

В спецнаборе можно задать область страницы (текст или формула) для обрисовки её геометрической фигурой с целью зрительного выделения важной информации в документе.

 

Теги для создания списка (всегда располагаются в начале строки):

 

[o]

-

Тег для задания начала обрисовки области геометрической фигурой, за которым в круглых скобках задаются параметры в виде лексем:

     fgtype= "..."  определяет тип геометрической фигуры:

             0   - прямоугольник (по умолчанию),

             1   - прямоугольник с закругленными углами,

             2   - эллипс (в частности круг);

     ofline="0"  число пробелов смещения левого края фигуры

                       обрисовки по текущей строке   (если 0 - от

                        начала строки);

    wdline="0"  число пробелов, определяющих ширину фигуры

                        обрисовки в текущей строке   (если 0 - вся

                        строка);

  penwdh="2"  ширина пера для рисования фигуры в пикселях

                        (по умолчанию 2);

    penclr="..."  цвет рисования фигуры,  определенный выше в

                        теге [cl] (по умолчанию - текущий);

    penstl="..."  стиль рисования фигуры: psSolid, psDash, psDot,

                        psDashDot, psDashDotDot (по умолчанию - текущий);

brushclr="..."  цвет кисти рисования фигуры,  определенный выше

                        в теге [cl] (по умолчанию - текущий);

brushstl="..."  стиль кисти рисования фигуры: bsSolid, bsDiagCross,

                        bsCross, bsBDiagonal, bsFDiagonal, bsHorizontal,

                        bsVertical, bsClear (по умолчанию - прозрачный);

[/o]

-

тег, определяющий конец области и обрисовка её геометрической фигурой.

 

Область страницы, подлежащая обрисовкой геометрической фигурой, располагается между тегами [o]...[/o] и может определяться в границах позиций строки, задаваемых тегом [sh](J1|J2) перед тегом обрисовки:

   . . . . . . . . . . .

   [sh](15|15) 

   [o](fgtype="2" penclr="teal" penwdh="1" ofline="19" wdline="10")

   Формула[sp](5)[s]c/Sqrt(rho_0)[/s][sp](5)определяется в пункте 2.

   [/o]

   [sh](0)

   . . . . . . . . . . .

 

 

        Просмотр и печать документа по спецнабору

 

Визуальный  просмотр с последующей печатью сформированного документа по спецнабору осуществляется из Главного меню {Спецнабор}à{Просмотр и печать}. Здесь открывается окно "Просмотр и печать спецнабора /текст, формулы, рисунки/" и в нем отображается файл, активизированный в окне Редактора, согласно установленным параметрам просмотра (это может быть также обычный текстовый файл без тегов).

 

Значения параметров просмотра можно изменять в страничном блоке, вызываемом по кнопке меню с изображением ключа и содержащем функциональные страницы:

 

"Имя&Размер шрифта"   -  допускается шрифт Ariel, Courier New, Times New Roman увеличенного, среднего и уменьшенного размера;

 

"Оформление страниц"  -  без нумерации или выбор местоположения номера страницы, а также задание числа отступов в начале абзаца ("красная строка");

 

"Колонтитулы"    -  задание для верхнего и нижнего колонтитулов места размещения на странице (слева, в центре, справа) и стиля (нет, курсив, жирный);

 

После установки всех нужных параметров для перезагрузки просмотра документа служит кнопка {Обновить}.

 

Документ можно распечатать, причем по кнопке печати из меню всегда печатаются все страницы документа, но на вкладке "Страницы печати" можно указать диапазон номеров страниц и виды страниц (четные, нечетные), которые будут напечатаны по кнопке {Печать}.

 

Кнопка сохранения из меню позволяет сохранить текущий спецнабор, представленный в окне просмотра и построенный из базового в процессе его редактирования, в формате pdf-файла.

 

 

Сравнение файлов

 

Полные имена файлов сравнения задаются в вызываемом диалоговом окне "Редактор файлов: сравнение файлов", путем ручного набора или в диалоге при нажатии клавиши  {Выбрать}. Сравнение файлов может производиться в трех режимах: сравнение строк файла 1 и файла 2 с одинаковыми номерами, сравнение по фрагментам, т.е. поиск одинаковых строк файла 1 в заданном диапазоне строк файла 2, поиск всех вхождений фрагмента из файла 1 по файлу 2. Параметры для каждого режима сравнения отображаются при выборе соответствующей вкладки диалогового окна. Результат сравнения файлов выдается в редакторское окно, а возврат в режим просмотра и редактирования файлов производится по клавише {ESC}. В режиме создания протокола для каждого задания создается автономный протокол, который можно просмотреть и сохранить средствами Главного меню {Сравнение}à{Показать протокол} и {Сравнение}à{Сохранить протокол} .

 

Цветовая гамма результата сравнения файлов в окне редактора может быть изменена (см. “Параметры настройки (оформление)”).

 

 

                        1. Сравнение по строкам

 

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

- полное имя файла,
- кодировка символа, отмеченного курсором,
- для текстовых файлов:
   - количество строк в файле,
   - номер текущей строки,
   - номер текущего символа в строке,
- для двоичных файлов:
   - номер последнего байта файла,
   - номер текущего байта (счет байтов производится от 0).

 

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

 

Строка: <номер строки файла>

F1: <строка файла 1>

<>: <символы ‘*’ в несовпадающих байтах сравниваемых строк>

F2: <строка файла 2>

Байты отличия: <N1>,<N2>,…[<Nn> - <Nm>]

Длина выдаваемых в протокол строк отличия может регулироваться задаваемыми параметрами настройки Редактора файлов. При несовпадении длин файлов, идентификация файла (F1 или F2) у конечных строк меньшего файла отсутствует. Номера байт отличия представлены в виде диапазонов, причем в квадратные скобки [...] помещаются байты, соответствующие разной длине строк файлов. В протокол сравнения двоичных файлов выдаются только номера байтов отличия сравниваемых файлов.

 

Сравниваемые файлы всех видов можно редактировать, сохранять, производить по ним поиск. Редактирование осуществляются через контекстное меню, вызываемое правой клавишей мыши в позиции курсора, располагаемого перед позицией редактирования соответствующего файла сравнения. При этом вызывается окно "Работа с файлом при построчном сравнении файлов", в котором для поиска задаются контекст и направление поиска, а для редактирования автоматически устанавливается начальный символ редактирования (по позиции курсора) и задаются число редактируемых символов, а также символы замены (могут быть взяты из другого файла сравнения). Следует иметь в виду, что при поиске подключается аппарат контекстного поиска по файлу и контекст поиска может содержать спецсимволы, а при редактировании двоичных файлов нетекстовый символ строки поиска/замены представляется в виде ‘$xx’, где x - восьмеричное число.

 

 

                        2. Сравнение по фрагментам

 

Результаты сравнения файлов выдаются на экран в виде двух колонок, ширина которых определяется размером редакторского окна. Если не все лексемы строки входного файла помещаются в колонке, то строка переносится, а если длина лексемы превышает ширину колонки, то выдается соответствующее диагностическое предупреждение и лексема обрывается знаком ‘>’ альтернативного цвета. Для увеличения ширины колонки следует потянуть вправо за нижний правый угол редакторского окна.

 

В левой части каждой колонки выдаются номера строк соответствующего файла, а в статусной строке при движении курсора по строкам файлов отражаются кодировка, количество строк в файле, номер текущей строки.

Вид сравниваемых файловых строк определяется заданием ряда опций, которые определяют способы унификации строк перед сравнительным поиском:

 

{Один пробел-разделитель} - индикатор, указывающий на то, что между лексемами учитывается только один пробел;

 

{Игнорировать начальные пробелы} - индикатор, указывающий на то, что начальные пробелы в строке убираются;

 

{Игнорировать конечные пробелы} - индикатор, указывающий на то, что конечные пробелы в строке убираются;

 

{Игнорировать пустые строки} - индикатор, указывающий на то, что пустые строки в сравнительном поиске не участвуют.

 

{Одинаковые разноуровневые строки} - индикатор определяет цветовое выделение одинаковых строк файлов, располагающихся в редакторском окне на разных визуальных уровнях и находящихся в диапазоне строк сравнения (такие строки выдаются альтернативным цветом).

 

Для каждой строки файла 1 осуществляется сравнительный поиск по строкам файла 2. Границы поиска определяются опцией {Диапазон строк сравнения}, в которой задается число просматриваемых при поиске строк файла 2 (если диапазон не задан, поиск происходит по всему файлу 2). Начальной строкой поиска по файлу 2 является либо начало файла 2 либо строка, стоящая за последней найденной при предыдущем поиске, а конечная строка поиска определяется либо суммой номера текущей строки файла 1 и  заданного диапазона поиска либо конечной строкой файла 2.

 

Результат сравнения файлов отражается в редакторском окне путем использования различных цветов при выводе следующих типов строк:

 

-

одинаковые строки файлов, располагающиеся в редакторском окне на одном визуальном уровне;

-

одинаковые строки файлов, располагающиеся в редакторском окне на разных визуальных уровнях в диапазоне строк сравнения;

-

различные строки файлов и различные фрагменты строк.

 

                        3. Поиск заданного фрагмента

 

Для выбора фрагмента поиска из файла, если задан полный путь файла 1, следует  нажать клавишу  {Выбрать фрагмент}, которая обеспечивает загрузку в редакторское окно файла 1. Выбор фрагмента  в редакторе  производится путем его выделения с помощью клавиш и копирования в буфер обмена (аналог задания контекста поиска). Фрагментом поиска может быть часть строки, а также произвольное число полных или неполных выделенных файловых строк. Выбранный фрагмент отображается в одноименном файловом окошечке, имеющем желтый фон.

 

Одним из вариантов задания фрагмента поиска является создание нового файла и запись в него нужного фрагмента, который выделяется и копируется в буфер обмена. Такой файл может быть создан либо заранее, либо в процессе задания параметров сравнения, однако в последнем случае задаваемое имя файла 1 должно совпадать с именем созданного файла.

 

Если имя файла 1 не задано, то фрагмент поиска можно набрать в одноименном редакторском окошечке, имеющем белый фон. При нажатии клавиши {Выполнить} заданный фрагмент поиска записывается во временный файл _tmpf.txt, располагающийся в том же каталоге, где и основной загрузочный файл TeConv.exe, а также копируется в буфер обмена.

 

Результат поиска может отражаться в одном из двух режимов:  визуальном  с  цветовым выделением в строках файла 2 найденных фрагментов, при этом статусная строка информирует о числе  найденных  фрагментов  в  файле 2,  и  информационном,  когда  выдается  только информация о числе найденных фрагментов.

 

Вид фрагмента поиска и входных строк файла 2  определяется заданием ряда опций, которые определяют способы  унификации строк перед сравнительным поиском:

 

{Создать протокол} - индикатор указывающий на создание протокола сравнения файлов для визуального режима;

 

{Один пробел-разделитель} - индикатор, указывающий на то, что между лексемами учитывается только один пробел;

 

{Игнорировать начальные пробелы} - индикатор, указывающий на то, что начальные пробелы в строке убираются;

 

гнорировать конечные пробелы} - индикатор, указывающий на то, что конечные пробелы в строке убираются;

 

{Игнорировать пустые строки} - индикатор, указывающий на то,  что пустые строки в сравнительном поиске не участвуют;

 

{Без учета регистра} - индикатор, указывающий на то, что регистр символов игнорируется.

 

Замечание. При задании индикатора {Создать протокол} создается отдельный протокол результатов поиска фрагмента, который можно просмотреть и записать в файл. Протокол фрагментного поиска содержит информацию о фрагменте поиска, общее количество найденных фрагментов, в каких строках файла 2 они найдены. Параметры работы с протоколом описаны в п. 1 .


 

 

ЛИТЕРАТУРА

 

 

 

 

1.  В.В.Фаронов. Delphi4. Учебный курс. М.: Изд-во “Нолидж”, 1999.

 

2.  Том Сван. Delphi 4. Библия разработчика. К.;М.;СПб. : Изд-во “Диалектика”, 1998.

 

3.  Марко Кэнту. Delphi 4 для профессионалов. М.: СПб: Изд-во “Питер”, 1999.

 

4.  А.Я.Архангельский. Программирование в Delphi 5. М.: ЗАО “Издательство БИНОМ”, 2000.

 

4.  А.Я.Архангельский. Приемы программирования в Delphi. М.: ООО “Бином-Пресс”, 2004.

 

5.  В.Э.Фигурнов. IBM PC для пользователя. 6-е изд. М.:Изд-во”ИНФРА-М”, 1995.

 

6.  Дж.Фридл. Регулярные выражения. Библиотека программиста. СПб.: Изд-во “Питер”, 2001.