Сделана слабая попытка понимать таблицы - получилось лучше, чем совсем никак, но не здорово. Сделанные списки могут быть только одного уровня без вложений, что смотрится не слишком плохо, но и не здорово. Работает таг <CENTER>. Ссылки понимаются локальные - в пределах файла, и файловые - на локальный файл. Прочие ссылки распознаются, но как они работают - зависит от вашей настройки DOSWEB0.EXT. Честно говоря, они были сделаны просто умозрительно и в работе не проверялись.
Реализован файл расширений - должен лежать в той же директории, что и DOSWEB0 и иметь имя DOSWEB0.EXT. В этом файле стоят вызовы программ, соответствующих расширениям (вызов только одной программы), например
JPG: VJPEG !.! EXE: HIEW !.! ZIP: ARCVIEW !.! MAILTO: SENDMAIL
Единственная понимаемая маска - !.! - полное имя обрабатываемого файла. Файлы, не подпавшие ни под одну из масок, обрабатываются, как .HTM-файлы. При этом DOSWEB0 обрабатывает до 50 расширений, что позволяет использовать его, как вьюер для любых файлов.
Недостатком такого подхода является невозможность честно перейти по локальной ссылке к файлу, лежащему на сервере, так как этот файл будет искаться в локальном пути от свежеоткачанной ссылки. Я буду с этим бороться, и быть может, получится.
К DOSWEB0 подключается HTGET v1.02 - программа для качания файлов через HTTP протокол по локальной сети, которую можно достать по адресу ken@syd.dit.csiro.au. Сюда она не включена, чтобы не раздувать DOSWEB0.
По F2 вызывается редактирование цветовой гаммы. Клавишами 1 и 2 можно менять цвет символа в текущей позиции курсора, 3 и 4 - цвет фона символа. F1,F2,F3 позволяют выбрать одну из зашитых гамм, которые могут быть полезны в разных ситуациях.
Normal | Обычный |
Bold | Жирный |
Italic | Курсив |
Bold Italic | Жирный курсив |
Anchor | Ссылка |
По сравнению с версией 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.