Программирование и комп-ры

Разработка конвертора из текстового формата nroff в гипертекстовый формат HTML


                                  Задание.

      Разработать транслятор документов из формата nroff в формат HTML.
      1. Транслятор должен быть реализован средствами программ lex и yacc.
       2.  Трансляции  подлежит  обособленный  документ.  (Один  файл  –один
документ).
      3. В качестве тестовых примеров использовать документы из  руководства
ОС UNIX (man-файлы).
      4. В качестве среду разработки использовать ОС UNIX.

                                  Введение.


      В настоящее время все большее  распространение  находит  использование
для доступа к RISC-серверам, на которых  работают  наиболее  мощные  системы
САПР, вместо X-терминалов более  дешевых  и  при  этом  более  универсальных
персональных компьютеров.
      Для   связи   между   персональными   компьютерами   и   RISC-серверам
используются программы, эмулирующие на  персональном  компьютере  работу  X-
терминалов. При этом на персональном компьютере, работающем под  управлением
Windows, запускается  UNIX-сессия  с  графическим  интерфейсом  пользователя
(GUI). В качестве графического интерфейса может  использоваться   как  любой
из доступных на сервере графический интерфейс, так и интерфейс Windows.
      Объем данных, которыми обмениваются при этом персональный компьютер  и
RISC-сервер, достаточно велик. Поэтому  нередко  возникает  необходимость  в
том, чтобы выполнять часть задач не на удаленном сервере, а  непосредственно
на персональном компьютере. Особенно большое значение это имеет в  ситуации,
которая возникает в последние время все чаще - когда сервер  и  персональный
компьютер находятся на большом удалении друг от друга и  объединяются  между
собой не посредством  прямого  соединения,  как  это  было  в  случае  с  X-
терминалом,  и  даже  не  посредством   локальных  сетей,   а   при   помощи
международной сети Internet.
      Вместе с тем, следует  определиться с тем, какие  задачи  имеет  смысл
переносить на персональный компьютер, а какие необходимо решать на  сервере,
чтобы повысить отдачу от системы  в  целом.  Представляется,  что  одной  из
задач,  перенос  которой   на   персональный   компьютер   облегчит   работу
пользователя и сделает ее более удобной, может быть работа с  документацией,
существующей в системе UNIX.
      Документация в системе UNIX представлена в виде так называемых ‘manual
pages’. Она просматривается с помощью команды системы UNIX ‘man’.  При  этом
вызывается файл,  содержащий  требуемую  документацию.  Файлы,  используемые
командой ‘man’ написаны в текстовом формате  nroff,  являющимся  стандартным
форматом текста системы UNIX. Для чтения этих файлов также  можно  применять
команду UNIX ‘nroff’.
      Для чтения файлов, записанных в формате ‘nroff’, можно  установить  на
персональном компьютере какую-либо из  UNIX-подобных  систем  и,  скопировав
документацию  на  персональный  компьютер,  читать  ее  с  помощью   средств
системы. Но при этом теряется одно из  важнейших  преимуществ  использования
персонального  компьютера  –  его  универсальность,  так  как  станет   либо
совершенно невозможно использование  программ,  работающих  под  управлением
Windows  (в  случае  полной  замены  операционной  системы),  либо  для   их
использования потребуется перезагрузка компьютера (в случае  установки  двух
операционных систем на одном компьютере).
      Другой путь состоит в преобразовании файлов документации системы  UNIX
из  формата  nroff  в  какой-либо  формат,  чтение  которого   возможно   на
персональном компьютере. Возникает вопрос, какой формат  выбрать.   К  этому
формату предъявляются следующие требования:
      . Тексты, записанные в выбранном формате, должны  быть  доступны  для
        чтения, как минимум, на  персональном  компьютере  под  управлением
        Windows.  Желательно  также,   чтобы   эти   тексты    можно   было
        просматривать и на сервере под управлением UNIX.
      . Тексты должны  сохранять  форматирование,  имеющееся  в  документах
        ‘manual pages’.
Представляется, что  оптимальным  будет  выбор  формата  HTML.  Этот  формат
просматривается  с  помощью  программ,  версии  которых  работают  как   под
управлением Windows, так и под управлением UNIX.  Формат  HTML  поддерживает
широкие  возможности  форматирования.  Кроме  того,  этот  формат   является
стандартным форматом для документов во всемирной системе  Internet,  а,  как
уже говорилось, проблема, вызвавшая необходимость  переноса  части  задач  с
сервера на персональный компьютер,  приобретает  наибольшую  остроту  именно
при  связи  между  сервером  и  рабочим  местом   пользователя   посредством
Internet.   Используя   формат    HTML,    можно    сделать    документацию,
преобразованную из ‘manual pages’ UNIX, общедоступной, поместив  ее  в  один
из узлов сети Internet. И последнее  –  этот  формат  является  открытым,  в
отличие от большинства  форматов  текста  на  персональных  компьютерах  под
управлением Windows, таких как, например, формат тестового  редактора  Word,
что делает  его  удобным  для  использования,  так  как  тексты  в  открытых
форматах  легко  создавать  и  редактировать  при  минимальной   вероятности
возникновения ошибки.

      Существует несколько путей решения проблемы. В настоящее время созданы
программы-трансляторы из формата nroff в формат HTML.  Все  они  имеют  свои
преимущества и недостатки.
       Рассмотрим несколько существующих программ.
      1.Программа "nroff2HTML" (автор - Р. Ричи).
      Программа написана на языке "C", работает под управлением  ОС  "UNIX".
При конвертации вставляет в текст конечного файла обязательные теги  формата
HTML  (такие,  как  ,  ,  )  и  затем
копирует предварительно отформатированный с помощью программы  nroff  текст,
заключив его в пару тэгов 

смотреть на рефераты похожие на "Разработка конвертора из текстового формата nroff в гипертекстовый формат HTML "