Многие мои друзья и знакомые знают о моей любви к маленькой, но весьма многофункциональной латвийской программке HTML-Pad2000. Пользуюсь я ей и для написания собственно HTML-кода, и для написания CSS-стилей, и Perl-скрипты в ней сочиняю. За все два года любви моей к этой программе не подвела она меня ни разу. А тут как-то, лазая по дебрям своего меню «Избранное», наткнулся я на сайт разработчика этого продукта — Карлиса Блюменталса (Karlis Blumentals), и обнаружил, что версия, которой я пользуюсь, весьма и весьма устарела, да и та версия, что я описывал год назад, HtmlPad 2000 MaX 3.0 — тоже поросла мхом, а самый свежий релиз на данный момент — HTMLPad 2002 version 4.11. Итак, качаем версию PRO (есть еще и LITE), вес установочного файла около двух с половиной мегабайт, инсталлируем, запускаем, и слегка обалдеваем от нового внешнего вида программы.

Изменилось буквально все, и панели инструментов, которые теперь сделаны в стиле и по принципу панелей инструментов Microsoft Office XP, и меню, у которых теперь есть такие же модные тени (полезные-ли?), сменилась даже иконка программы, которая, кстати, тоже чем-то напоминает иконки того же Word’а из Office XP. Но о полезности или вредности всех этих интерфейсных нововведений не нам судить, в конце концов дело тут даже не в интерфейсе, а в преемственности и заимствовании библиотек (dll-файлов), из которых все эти элементы и подгружаются в память, наше же дело рассматривать и обозревать так сказать «чистый функционал», чем мы сейчас и займемся.
Перед написанием этого обзора я погулял по сайту этой программы, почитал раздел, посвященный новым функциям этой версии, набросал на листочке бумажки некоторый план статьи, но все это не существенно, ибо самые злободневные и объективные рассмотрения новых программных продуктов получаются только при непосредственном их использовании, поэтому я открыл текущий проект и просто стал работать.
Наугад потыкав новыми и незнакомыми по прошлым версиям кнопочками на панели инструментов, я неожиданно открыл для себя прокладки Олв… тьфу, эта телереклама в гроб сведет, так вот, затаите дыхание, теперь в программе HTMLPad 2002 есть многоуровневой, а именно на 10 фрагментов, буфер обмена. Причем приятностию является также то, что в буфер обмена этот попадают также и фрагменты, скопированные и из других программ.

Как видно на приведенном фрагменте скриншота, каждая строка является скопированным фрагментом, при его выделении в нижней части этой специальной панели отображается полный текст фрагмента, при двойном клике выбранный фрагмент вставляется в место, где установлен курсор. Собственно, все элементарно и интуитивно понятно, но как же долго мне не хватало этой функции. Кстати, заметьте, у Майкрософтовского Офиса и то не такая удобная панель буфера — в ней нет предпросмотра, как тут.

Да, действительно удобная штука. Итак, настроив интерфейс программы конкретно под себя и свои извращенные привычки, попробуем что-нибудь изобразить. Набираем обыденное <a hre…, ой, что это?!

Да, вот тут господин Блюменталс просто сразил меня наповал. Такого я увидеть не ожидал. Как программист, я знаю, что реализовать такое довольно-таки трудно, и в рамках такого небольшого проекта, и в одиночку тем более. Автозаполнение. Функция, удобная не просто, а настолько, что именно ради нее люди выбирают язык программирования, и как следствие, среду разработки, для своей деятельности. Наиболее удачно автозаполнение реализовано в продукте Microsoft Visual Basic версий, начиная с, если мне не изменяет память, пятой, гораздо хуже — у Borland, ныне Inprise, в ее С++ Builder’ах. Тут важнее всего даже не сколько скорость выпадения меню автозаполнения (кстати, тут, в этой программе, скорость эту можно менять, по умолчанию стоит 500 миллисекунд), а, как бы эдак выразиться, «таргетинг» функций, то есть способность автозаполнения подать ту или иную функцию, тэг или определение вовремя и в зависимости от контекста или текущего момента. В том же самом упомянутом выше Borland С++ Builder’е в это меню вываливалось все подряд, отчего оно жутко тормозило. Вообще функции автозаполнения встречаются во многих программных продуктах, в том числе и HTML-редакторах, но, во-первых, ну не любы они мне, а во-вторых, тут эта функция реализована на твердую пятерку. С плюсом.
Поработав где-то с полчаса, понадобилось кое-что подправить во внешнем файле стилей. И тут нас поджидает еще один приятный сюрприз, теперь подсветка тэгов работает и для CSS-файлов. Точнее, не только для внешних файлов, а для стилей (<style>…</style>) вообще. Да, тут же бросается в глаза еще одно нововведение — теперь внизу есть панель с кнопками всех открытых в данный момент файлов. Весьма удобно, больше не надо без конца лазать по меню Windows.
И таких мелких нововведений в этой версии бесконечное количество. Например, раньше title для всех ссылок надо было прописывать руками (ну не то что бы надо, в принципе этот параметр тэга <a href… необязателен, это всего лишь всплывающая подсказка для ссылки), теперь же это можно прописать сразу в форме при определении ссылки. Таким же мелким, и незначительным на первый взгляд, но весьма удобным при каждодневной рутинной работе, нововведением является усовершенствованный интерфейс поиска, теперь это не навязчивое окно поверх кода, а две кнопки, вперед-назад, на панели инструментов. Далее, при вставке изображения в стандартном окне выбора файла появилось preview картинки. И так далее и тому подобное, список новых мелких фич можно продолжать до бесконечности.
Мы же постараемся обозреть совершенно новые функции и нововведения, которые язык не повернется назвать мелкими, ибо именно они сразу бросаются в глаза пользователям, впервые встретившимся с этой программой. Итак, теперь в программе есть возможность перевода всех тэгов FONT в стили, с автоматическим распределением на классы. Что полезно, в получившихся стилях указывается не абсолютный, а относительный размер шрифта. Всячески погоняв эту новую функцию я не обнаружил ни одного глюка или неточности распознавания тэгов, получившийся код был чист от мусора многочисленных повторяющихся шрифтовых тэгов, зато в верхней части страницы, в смысле кода, красовался отлично упорядоченная и структурированная стилевая разметка.
Теперь есть незаменимый инструмент для чистки и проверки кода на соответствие «отраслевым» стандартам. Проверяются все ошибки и в случае их обнаружения в нижней части экрана появляется окно с соответствующими варнингами. Так же можно конвертировать HTML-код в XHTML, с одновременной проверкой. Опции конвертирования весьма и весьма досконально и подробно можно настроить в отдельном соответствующем окне.
Еще одним незаменимым инструментом веб-дизайнера и разработчика служит встроенный ftp-клиент. Собственно, в прошлых версиях программы была функция закачки на ftp, но, во-первых, реализована она была кривовато, а во-вторых, и это самое главное, была возможность закачивать только на один ftp-сервер.

Теперь это полноценный инструмент для закачки плодов вашего труда на сервера посредством протокола FTP.
Как и прошлой версии, есть удобный File Explorer, можно добраться до каталога с вашим проектом и одним кликом открывать нужные файлы.

Далее можно рассмотреть удобства и нововведения, относящиеся непосредственно к сервисной части, то есть функциям, направленным на улучшение удобства написания кода. Итак, начнем с великолепной возможности вставлять закладки в документ. Я думаю, эту возможность оценят те, чьи страницы состоят из многих сотен строк кода и имеют сложную логическую структуру. Строка с поставленной на нее закладкой подсвечивается бледно-голубым цветом и слева отображается номер закладки. Всего закладок можно поставить 10, что, на мой взгляд, вполне достаточно. Ставятся закладки, и переход к ним осуществляется кликом правой кнопки мыши и выбором соответствующих команд в раскрывшемся контекстном меню.
В этом же меню появилась еще одна новинка — «Select Tag» — быстрое выделение тэгов или контента между тэгами, например <a href=»»></a>. Выделение осуществляется также «горячими» клавишами, Ctrl+Space и Ctrl+Enter соответственно.
В меню Edit появился совершенно необычный, во всяком случае, я еще такого не встречал, инструмент — «Copy with Highlighting». То есть, надо вам сохранить код вашего документа со всей его боевой цветовой раскраской и подсветкой тэгов допустим, в файл формата Word, или хотите отправить его, код, друзьям по почте, смело копируйте этой новой функцией нужный фрагмент и вставляйте куда душа пожелает, вся цветовая разметка будет сохранена. По-моему, гениальная вещь. Спасибо, Карлис.
Итак, обзор наш подошел к концу, и чтобы жизнь вам не казалась совсем уж приторным медом, мы разбавим его ложкой недостатков. А недостаточек я нашел один, хотя может, конечно, он встречается и в других местах, просто тут он встречается пользователю сразу же, при первых шагах работы с программой. В окне создания нового HTML-документа увы, невозможно непосредственно руками ввести нужное нам значение topmargin и leftmargin, приходится прокручивать кнопками до нужного варианта. Но это мелочь, даже недостойная разговора, и упомянутая здесь только лишь затем, чтобы подчеркнуть тот факт, что недостатков-то в программе и нет.