| 
Что такое PARSER и кто его применяет в работе? 
PARSER  это средство скриптования сайтов с помощью простого языка. Он немного сложнее HTML, но совершенно не требует от кодера умения программировать. 
PARSER начал создаваться в Студии Лебедева в 1997 году. Сегодня все сайты в Студии Лебедева создаются с его помощью.
А зачем он вообще? 
Для того, чтобы по многу раз не переписывать одно и то же. С помощью макросов можно описать конструкцию сайта таким образом, что для изменения внешнего вида всего сайта, потребуется изменить только 1-2 файла.
 
Если есть PHP, то для чего PARSER? 
PHP  это язык программирования, требуюущий соответствующей подготовки. На парсере могут работать те, кто называются html-кодеры, то есть, далеко не программисты. PARSER именно тем и хорош, что позволяет простым смертным создавать и поддерживать динамические сайты без больших затрат времени.
 
Почему PARSER распространяется бесплатно? 
Мы в Студии Лебедева абсолютно убеждены в том, что ни одна закрытая технология не может долгое время оставаться современной и актуальной. Всегда будет появляться что-то новое, что будет превосходить технологии предыдущего поколения. Делая PARSER доступным каждому, мы не хотим ни с кем конкурировать в области инструментов разработки сайтов. Широкое использования PARSER поможет технологии оставаться современной. 
Продажа технологии сужает круг пользователей и замедляет развитие новых проектов. Мы не продаем инструмент, а даем его бесплатно любому желающему, рассчитывая на то, что этот шаг поможет развитию российского интернета.  
Как насчет открытых кодов? 
PARSER будет распространятся в исходниках в 2001 году. Скорее всего, это произойдет весной.
 
Как подключить PARSER к веб-серверу? 
Для этого в Apache нужно в файлах .htaccess или httpd.conf (секция <virtualhost>) следующие строки (подразумевается, что /cgi-bin указывает на каталог, прописаный в ScriptAlias в httpd.conf): 
 
AddType parsed-html .html 
Action parsed-html /cgi-bin/parser 
 
Скопировать файл parser в каталог /cgi-bin. 
В каталоге сайта, на который указывает localhost, создать файл index.html.
Можно ли использовать в коде спецсимволы ; и ^? 
Конечно. Их нужно либо предварять символом ^, либо брать целиком весь параметр в обратные кавычки `. Например:
 
^eq[abc^;def;ghijkl;...;...] 
^eq[`abc;def`;ghijkl;...;...]
 
Как перейти на работу с PARSER в своих разработках? 
Можно постепенно заменять конструкциями парсера файлы уже готового сайта, например описать заголовки и таблицы html-документа макросами, использовать переменные окружения через парсер, упростить обработку данных форм. Или изначально продумать удобную конструкцию сайта, и писать код, исходя из возможностей парсера. Парсер не подменяет собой html-код, он генерирует его. 
Поэтому изменять исходные тексты очень легко, и всегда сразу можно увидеть, что получилось в результате той или иной команды.
 
Обязательно ли ставить русскую версию Apache для работы PARSER? 
Нет. PARSER работает с английским и русским Apache, а также с IIS. И вообще  любой сервер, позволяющий обрабатывать документы ДО их выдачи пользователю, сможет работать с парсером.
 
Как запустить PARSER под IIS? 
Для этого в программе конфигурации IIS кликаете правой клавишей мыши на веб-сайт и выбираете Properties. Открывается окно Web Site Properties. Затем в странице Home Directory нажимаете кнопку Сonfiguration. В появившемся окне нажимаете Add, и прописываете путь к PARSER. В строке Extension пишете html, и жмете OK. Затем в окне Web Site Properties выбираете страницу Documents, и добавляете index.html в список файлов, открываемых по умолчанию. Перезагружаете сервер, 3 раза "ку", крутите фонарики и радуетесь полчаса.
 
Как запускать скрипты из-под парсера, и не получать ошибку №6 под win32? 
Для этого нужно воспользоваться оператором ^exec[script_to_run]. Путь к скрипту нужно указывать относительно ТЕКУЩЕГО html-документа. Например, если путь к текущему документу c:\apache\htdocs\index.html, а скрипт находится в директории c:\apache\cgi-bin, то выполнять оператор ^exec нужно следующим образом:
 
^exec[/../cgi-bin/script_to_run]
 
Что такое контекст? 
Контекст  это двухмерный массив данных. Для обращения к элементу текущей строки текущего контекста используется оператор ^item[n], где n  номер элемента или его название (в случае именованного контекста). Чтобы обратиться к элементу другого контекста, следует использовать конструкцию ^item[m;n], где m  название желаемого контекста, а n  номер или название элемента. 
Для перемещения по строкам контекста используются операторы ^menu и ^shift. 
Для поиска элемента в контексте используется оператор ^locate. 
Чтобы создать именованный контекст, используются конструкции ^config[named;...] и ^load [named;...].
 
Почему в конструкции 
^macro[server; 
  ^load[data.txt] 
    ^menu[ 
      ^sql[insert into table values ('^item[0]', '^item[1]')] 
    ] 
] 
вставляется всего одна запись? 
Это происходит потому, что оператор ^sql[] меняет текущий контекс,
независимо от команды sql. Для правильного внесения записей в базу,
следует использовать подобную конструкцию:
 
^macro[server; 
  ^context[data; 
    ^load[data.txt] 
    ^menu[ 
      ^context[sql; 
        ^sql[insert into table values('^item[data;0]', '^item[data;1]')] 
      ] 
    ] 
  ] 
] 
 
   |