DOSWEB0 v0.47 by ODP © - справка


Оглавление


Назначение


Этот простейший вьюер HTML-документов   предназначен для быстрого просмотра отдельных документов из-под ДОСовской оболочки и конвертации в ДОСовский текст. Ни на какую полноту он не претендует, но быстр и удобен при вызове и всегда позволяет понять, о чем этот HTML. В отличие от текстовых вьюеров, вид текста похож на то, каким должен быть.

Справка


Вьюер работает в обычном текстовом режиме, не изменяя его, поэтому отображение символов разных шрифтов и размеров передается только текстовым атрибутом символа. Символы с повышенной яркостью - это заголовки разного калибра. Символы такого цвета - это жирный шрифт. Обработка тага <FONT> не производится никак. Символы на синем фоне - ссылки. Символы на сером фоне - просто замена картинок.

Сделана слабая попытка понимать таблицы - получилось лучше, чем совсем никак, но не здорово. Сделанные списки могут быть только одного уровня без вложений, что смотрится не слишком плохо, но и не здорово. Работает таг <CENTER>. Ссылки понимаются локальные - в пределах файла, и файловые - на локальный файл. Прочие ссылки распознаются, но как они работают - зависит от вашей настройки DOSWEB0.EXT. Честно говоря, они были сделаны просто умозрительно и в работе не проверялись.

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

 JPG: VJPEG !.!
 EXE: HIEW !.!
 ZIP: ARCVIEW !.!
 MAILTO: SENDMAIL

Единственная понимаемая маска - !.! - полное имя обрабатываемого файла. Файлы, не подпавшие ни под одну из масок, обрабатываются, как .HTM-файлы. При этом DOSWEB0 обрабатывает до 50 расширений, что позволяет использовать его, как вьюер для любых файлов.


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


С версии 0.40 были добавлены опции командной строки, в частности, для работы с DOSWEB0 в качестве мейлера.
-C
пакетный конвертор HTML файлов в TXT. Автоматически будет создан файл с тем же именем, что и НТМ, и расширением TXT.
-Q
Установить режим отображения QUOTED символов (если в почте попадается =BE и тому подобное).
-F
поставить режим большого шрифта.
-R
запретить переходы на другие файлы.
-Sxx
установить верхнюю границу экрана на строку xx.
-Bxxxx
установить начало отображаемого куска в файле на позицию xxxx.
-Lxxxx
установить длину отображаемого куска в файле xxxx.


Сетевые функции


Кроме обычных, в файле расширений могут быть расширения MAILTO, FTP, HTTP, GOPHER, SNEWS и вы можете поставить для обработки этой команды свою программу, например, редактор почты и посылку новой почты в BAT файле. При этом DOSWEB0 будет пытаться найти новый файл в этом же каталоге только по его имени (без сетевого и локального пути), для чего надо настроить соответственно внешние программы. Никакой обработки форм и прочих наворотов не происходит. Учтите, что команды сетевых "псевдорасширений" получают в качестве последнего параметра текст ссылки, а вместо !.! подставляется укороченное имя файла. Наличие файла не проверяется, т.е. все разные INDEX.HTM'ы будут качаться в одно место. Если в ссылке стоит не файл, а директория (например, www.ibm.com/), то будет качаться файл INDEX.HTM.

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

К DOSWEB0 подключается HTGET v1.02 - программа для качания файлов через HTTP протокол по локальной сети, которую можно достать по адресу ken@syd.dit.csiro.au. Сюда она не включена, чтобы не раздувать DOSWEB0.


Используемые клавиши:

<,>
Перемещение на 1 строку
PgUp,PgDn
Перемещение на 1 экран
Home
В начало документа
End
В конец документа
F1
Помощь (этот файл)
F2
Настройка таблицы цветов
F3
Ввести/отредактировать URL для перехода
F4
Отконвертировать с учетом кодировки в файл с тем же именем и расширением TXT
F5
Показать текущую директорию на локальном диске. (При этом во временной директории создается и перед выходом уничтожается файл DW0_TMP.HTM)
F7
Поиск подстроки в исходнике текста (с учетом перекодировки)
Shift-F7
Продолжение поиска
F8
Переключиться на следующую кодировку
Enter
Переход по выделенной ссылке
Ctrl-Enter
Редактирование и переход по отредактированной ссылке
BackSpace
Переход обратно по ссылке (Back)
Ctrl-BackSpace
Переход вперед по списку просмотренного (Forward)
Tab
Выбрать следующую ссылку
Ctrl-Q
Декодировать QUOTED символы
ESC
Выход

По F2 вызывается редактирование цветовой гаммы. Клавишами 1 и 2 можно менять цвет символа в текущей позиции курсора, 3 и 4 - цвет фона символа. F1,F2,F3 позволяют выбрать одну из зашитых гамм, которые могут быть полезны в разных ситуациях.


Используемые цвета:

Normal     Обычный
Bold     Жирный
Italic     Курсив
Bold Italic Жирный курсив
Anchor    Ссылка
Header 6
Header 5

Header 4

Header 3

Header 2

Header 1


Достоинства и преимущества

  • Автоматическое распознавание кодировки документа (Alt, Win, Koi-8, Gost) и просмотр любых документов на терминале с CP 866. Используется технология ODP ACR ©;
  • Не виснет (зависаний обнаружено не было);
  • Грузится сам почти мгновенно;
  • Не щелкает видеорежимами, не портит и не стирает экран, почему и быстр;
  • Не занимает места (20 K) и работает на любой машине;
  • Умеет понимать фреймы как ссылки;
  • Может быть настроен на разные типы включенных файлов;
  • Понимает большинство спецсимволов HTML;
  • Требует для работы всего 130-200К памяти;
  • При запуске внешних программ занимает всего 64К памяти;
  • Предвидится значительное расширение возможностей;
  • Работает в любых текстовых режимах;
  • Позволяет настраивать цветовую гамму и автоматически запоминает ее;
  • Имеет 3 предопределенных цветовых гаммы для разных случаев;
  • Пишется в России и специально для русскоязычных пользователей;
  • Позволяет настроить сетевой интерфейс.

    Недостатки и ограничения

  • Грузит файлы размером до 10000 строк (~400К) или пока хватает ДОСовской памяти, более длинные - обрезаются;
  • Понимает маловато тагов;
  • Все таги списков отображает одинаково;
  • Таблички лишь пытается понять;
  • Плохо понимает перенос ссылок и некоторых других атрибутов;
  • При чтении больших файлов вначале немного подтормаживает;
  • Так как работает в тексте, спецсимволы отображаются приблизительно;
  • При прокручивании тагов по TAB после последнего видимого есть еще один неактивный;
  • Иногда при очень хитрых атрибутах путается в них;
  • Не всегда выделенная ссылка является активной (если выше на экране происходит перенос ссылки на другую строку);
  • При поиске не понимает тагов в словах (т.е. "String" не найдется при поиске "String");
  • Никаких картинок в тексте - только упоминания о них;
  • Некорректно смотрит текстовые и другие не-HTML файлы - глотает куски после <, не показывает сверхдлинные слова (> 80 символов).
  • Сетевые функции устроены криво;
  • Ограниченно понимает длинные имена (только Win и только 1-й с таким сокращением);
  • Не умеет переходить обратно по локальным директориям в функции DIR;
  • Явный глюк: проблема со слишком длинным заглавием файла.

    Сравнение с DOSLYNX'ом 0.8 Alpha (1994)


    Будущее развитие

  • Уже написан новый вьюер - DOSWEB, работающий и в текстовом режиме (по опции для быстроты), и в графике (256-цветные быстрые режимы VESA, любые другие - с тормозизмом для желающих);
  • Новый вьюер отображает включенные GIF'ы, подложку и многое другое;
  • Понимание полного GIF, JPEG, BMP, WAV;
  • Устранение всех перечисленных недостатков;
  • Подключение встроенного текстового редактора для редактирования текста в процессе работы;
  • Возможность неограниченного расширения возможностей.

    Примечания

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

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

    По сравнением с 0.30 исправлены работа с курсором, ввод строки поиска, гаммы по умолчанию, поиск русских меток в файле, переход по Backspace, переход по локальным файлам, просмотр не-HTML файлов, сделаны мелкие фиксы.

    По сравнению с 0.31 исправлен ряд мелких ошибок и сделаны мелкие бантики. Несмотря на это, никак не перевалит 1000 строк.

    В версии 0.33 добавлен кеш, за счет чего стало возможным смотреть файлы больше 65К - насколько хватает памяти. Добавлена обработка сетевых якорей через файл расширений.

    В версии 0.34 исправлен вызов сетевых программ, добавлено опознание отсутствие файла, сделан нормальный ввод ссылки по Ctrl-Enter, исправлена логика Bs - теперь DOSWEB0 нормально выходит из просмотра не своих файлов и не выходит из своих по Bs.

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

    В версии 0.36 исправлен ряд ошибок в сетевом сервисе, исправлен выход по ESC из редактирования ссылки - теперь перехода не происходит.

    В версии 0.37 исправлен баг при записи .TXT, исправлена интерпретация спецсимволов (начинающихся с "&").

    В версии 0.38 сделаны частичное понимание длинных имен Win'9x, возможность переключения пользователем кодировки, изменен атрибут для жирного шрифта, добавлена функция DIR. Ликвидирован мелкий глюк с попыткой перехода по неработающей ссылке.

    В версии 0.39 сделан правильный пропуск комментариев, понимание фреймов (несколько кривоватое - только как безымянные ссылки), поправлено понимание ссылки FILE://.

    В версии 0.40 наконец сделана командная строка - теперь DOSWEB0 умеет конвертировать HTML->TXT в пакетном режиме и может выдирать куски из файла (примочка для будущего мейлера).

    В версии 0.41 добавлена строка с текущим адресом и ее редактирование по F3, исправлены мелкие глюки, сделана правильная конверсия в TXT файлов любой (до 2 Гб) длины, даже если они не влезают в память, сделано обрезание длинных файлов при просмотре. Добавлена строка статуса с указанием позиции.

    В версии 0.42 исправлен показ некоторых символов, добавлено правильное редактирование строки, добавлено перекодирование из QUOTED.

    В версии 0.44 исправлен показ кавычек, доведен до ума показ QUOTED (= UTF?), сделан правильный пропуск скриптов и стилей. Исправлен показ конфигураций типа &112.

    В версии 0.45 дополнен показ &#xxx, добавлено многоточие (#197),. Выяснилось, что можно существенно увеличить скорость работы (разбора файла), что и было проделано. Исправлен мерзкий глюк со скриптами. Добавлена помощь по командной строке (несколько неполная). Исправлено конвертирование длинных файлов (до 2 ГБ!).

    В версии 0.47. исправлен досадный глюк с завершением работы, из-за которого сильно доставала ошибка в NT-based Windows.


    Как связаться с автором

    Письма с просьбами и пожеланиями всячески приветствуются.

    Отзывы типа "а я и сам такое за пол-часа сбацать могу" принимаются только по предоставлении результатов.

    Искренне признателен Сергею Qковлеву за то,что он не счел за труд послать замечание о работе не в 3 видеорежиме и на Геркулесе.

    Благодарен Sergo за замечания, подвигшие меня на добитие версии 0.38.

    e-mail: iggor_mail@mail.ru

    Домашняя страничка DOSWEB/DOSWEB0 (иногда :( обновляется)

    ODP © 10.07.98 - 10.4.2003 - 11.10.2005


    В начало