Blank Title

## Вкладка "Грамматика"

Вкладка "Грамматика" предназначена для ввода и редактирования правил грамматики. Введенная грамматика выглядит следующим образом:

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

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

Данное меню показано на рисунке:

Меню File содержит следующие пункты:

- New Project. Создает новый проект. Если предыдущий проект не был сохранен, то на экран выводится соответствующее предупреждение.
- Open Project. Открывает существующий проект. Если предыдущий проект не был сохранен, то на экран выводится соответствующее предупреждение.
- Open Unicode File. Без предупреждения замещает текст в редакторе на содержимое файла с расширением “gru” в кодировке Unicode. Сохраняется возможность отката.
- Open ANSI File. Без предупреждения замещает текст в редакторе на содержимое файла с расширением “gra” в кодировке ANSI. Сохраняется возможность отката.
- Open ASCII File. Без предупреждения замещает текст в редакторе на содержимое файла с расширением “grm” в кодировке ASCII. Сохраняется возможность отката.
- Save Project. Сохраняет текущий проект. Если проект новый, то нужно указать для него имя файла.
- Save Project As. Сохраняет текущий проект в файле с указанным именем.
- Save Unicode File As. Сохраняет текст из редактора в файле с расширением “gru” в кодировке Unicode.
- Save ANSI File As. Сохраняет текст из редактора в файле с расширением “gra” в кодировке ANSI.
- Save ASCII File As. Сохраняет текст из редактора в файле с расширением “grm” в кодировке ASCII.
- Exit. Программа завершается. Если проект не был сохранен, то на экран выводится соответствующее предупреждение.

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

Меню Edit содержит следующие пункты:

- Undo. Отмена выполненного действия.
- Redo. Возврат после отмены выполненного действия.
- Cut. Удаляет выделенный текст из редактора и заносит его в буфер обмена.
- Copy. Заносит выделенный текст в буфер обмена.
- Paste. Вставляет текст из буфера обмена в редактор в позицию курсора.
- Delete. Удаляет выделенный текст из редактора.
- Select All. Выделяет весь текст в редакторе.
- All Text To Lower Case. Преобразует весь текст в редакторе к нижнему регистру. Команда нужна для совместимости с предыдущей версией системы ОСА.

Меню Help предназначено для вывода справочной информации и приведено на следующем рисунке:

Оно содержит следующие пункты.

- Help Topics. Открывает в интернет броузере по умолчанию HTML страницу со справкой по текущему разделу.
- About. Выводит на экран окно с информацией о разработчиках программы.

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

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