`

СПЕЦИАЛЬНЫЕ
ПАРТНЕРЫ
ПРОЕКТА

Архив номеров

Как изменилось финансирование ИТ-направления в вашей организации?

Best CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Образцовые мелочи

0 
 

Бриллиант, хоть и мелкий, все равно – драгоценность. И уж, без сомнения, он отличается от крошек дробленого стекла, в изобилии сверкающих на обочинах дорог. Точно так же и с программами – количество небольших утилит практически не поддается исчислению, но отделить стекляшки от настоящих камней, особенно мелких, очень трудно. И все же... разве это означает, что мелких бриллиантов нет вообще?

Небольшие и просто крохотные утилиты, которые мы детально обсудим в этой статье, объединяет нечто общее. Но вовсе не размер. И не сугубо утилитарное, «повседневное», никак не связанное с родом деятельности использующего их человека назначение. И даже не легальная бесплатность. На самом деле общим для этих утилит является то, что если уж вы их освоите и «распробуете», то обойтись без них уже не сможете. Это утверждение, безусловно, субъективно и категорично. Как и эпитет «мелкие бриллианты». Но! Любой опытный пользователь скажет вам о них то же самое.

Изделие № 0. То есть необходимое

Компания Bayden Systems, состоящая чуть ли не из одного программиста Эрика Лоуренса, давным-давно продавала эту программку. Но почти пять лет назад коммерческая QuickRun была переименована в SlickRun и переведена в категорию freeware. За годы «бесплатности» эта и без того отличная программа стала почти безукоризненной. Итак, SlickRun.

Образцовые мелочи
Основное окно SlickRun практически не занимает экранного пространства. Но это не повод держать его «на виду» постоянно

Инсталлятор программы размером 170 KB доступен с сайта уже упомянутой компании для его работы требуется установка в несколько раз большего по размеру дистрибутива среды времени исполнения Delphi

Отнести эту утилиту к какому-либо одному общеизвестному классу довольно трудно. С одной стороны, SlickRun – фактически однострочная консоль. С другой – она является представителем утилит класса «желтые липкие листочки» (yellow notes), предназначенных для быстрого сохранения фрагментов текста с минимальными затратами действий пользователя.

Основное рабочее окно программы в консольном режиме компактно и «бессодержательно». Да, именно эта «ленточка», окошечко нестандартной, непрямоугольной формы, и есть основной пользовательский интерфейс SlickRun. Маловато будет? Введите в окне слово setup – вашу первую команду – и передайте ее на исполнение SlickRun нажатием клавиши Enter. Результат этого эксперимента – окно достаточно развитого конфигуратора программы – подтверждает первое радикальное отличие SlickRun от простых заменителей системного диалога Run: за визуальной простотой ленточки основного окна кроется серьезная функциональность. Но прежде всего о главном. На самом деле простейший эксперимент показал три основные функции SlickRun: во-первых, утилита поддерживает создание имен-псевдонимов для различных команд; во-вторых, она ведет собственную базу соответствий имя-команда; в-третьих, по введенному пользователем имени утилита отыскивает в своей базе запись и передает операционной системе на исполнение соответствующие команды.

Подсистема управления базой данных утилиты, именуемая библиотекой (library), позволяет как создавать, редактировать и удалять отдельные записи, так и импортировать-экспортировать всю базу или ее подмножество. Каждая запись базы в терминах SlickRun называется «волшебным словом» (MagicWord). Операции импорта-экспорта, работающие с задаваемым пользователем множеством «волшебных слов», особенно удобны при обмене наработками и переносе конфигураций SlickRun с одной машины на другую. Экспортируются «волшебные слова» в текстовые файлы с расширением qrs простого и понятного формата.

Образцовые мелочи
Диалоговые окна SlickRun. В программе предусмотрен импорт и экспорт как отдельных «волшебных слов», так и их множества

Для знакомства с «магией слова» SlickRun повторите первый эксперимент, но теперь с командой add. Результат ее исполнения – диалоговое окно описания записи базы данных, MagicWord. Чтобы создать свою запись в этом окне, необходимо указать не содержащее пробелов имя «волшебного слова» и полный путь к файлу или URL – то, что будет передаваться SlickRun операционной системе на исполнение. Заполнение этих двух полей фундаментально необходимо, остальных – опционально.

Попробуйте сами себе ответить на вопрос – сколько действий вы выполняете для того, чтобы начать редактировать новое письмо электронной почты? На самом деле в современных, основанных на графическом пользовательском интерфейсе, системах в худшем случае вам придется совершить целую цепочку действий (которую вы не замечаете в силу автоматизма их выполнения) – запустить или отыскать уже запущенный почтовый клиент, активировать его главное окно, выбрать в меню пункт «создать почту» или нажать соответствующую кнопку, и только после этого можно считать, что задача решена. В данном случае затраты усилий закаленных старой Unix-школой пользователей мощных почтовых клиентов командной строки несоизмеримо ниже – им достаточно набрать в терминальном окне соответствующее волшебное слово и нажать Enter. Попробуем решить задачу с помощью SlickRun: вводим в основном окне программы команду add и заполняем поля диалога следующим образом (для удобства использован формат имя_поля – значение):

MagicWord – em
Filename or URL – outlook.exe
Parameters – /c ipm.note

Естественно, если ваш почтовый клиент – не Microsoft Outlook, пример должен быть другим. Сохраните это слово в базе и вызовите диалог настроек SlickRun командой setup – для небольшого экскурса в настройки всей программы в целом. Выберите в диалоговом окне закладку Options, ознакомьтесь с установками общесистемной комбинации клавиш, позволяющей активировать окно SlickRun (будем считать, что вас устраивает установленная по умолчанию комбинация Win+Q, при необходимости вы можете ее изменить). Установите в этом же диалоге два важных параметра SlickRun – автоматическое убирание окна программы с экрана (AutoHide SlickRun) и привязку положения окна при его активации к текущему положению курсора (Chase Cursor). После перечисленных выше настроек окно-ленточка SlickRun появляется только по вашему требованию и именно там, где в данный момент находится курсор мыши. Теперь пора опробовать «магию слов»: активируйте консоль SlickRun комбинацией клавиш Win+Q, введите em, нажмите Enter – и окно создания нового сообщения Outlook перед вами. У этой операции есть две особенности: во-первых, после того как пальцы левой руки «запомнят» расположение клавиш Win и Q, вам не понадобится отвлекаться ни на выискивание иконки Outlook в панели задач, ни, тем более, проделывать ужасающе неэффективную процедуру переключения между задачами посредством системного переключателя, «привязанного» к комбинации клавиш Alt+Tab; во-вторых, – эта процедура однотипна, и что бы вы не делали с помощью механизма SlickRun, в каких условиях бы вы это ни делали, все всегда будет делаться точно так же. Вторая особенность на самом деле исключительно важна и означает, что такой механизм управления вашим компьютером независим от его текущего состояния (stateless) – запущены ли на нем четыре десятка приложений и при этом открыты два десятка окон Outlook (попробуйте, быстро «откопайте» в таком месиве нужное окно Outlook) или же ваш ПК только загрузился – цепочка Win+Q – em – Enter безусловно откроет нужное вам окно редактирования нового письма.

Теперь дополним начало вашей персональной коллекции волшебных слов, состоящей пока из единственного em, еще двумя, относящимися к Outlook. Первое слово, точнее, группу слов, опишем шаблоном, в котором вы сами замените «кому» реальным именем (или его фрагментом) одного из ваших корреспондентов, которому вы наиболее часто пишете, а слово «мыло» – на его e-mail:

MagicWord – em.кому
Filename or URL – outlook.exe
Parameters – /c ipm.note /m мыло

С помощью слов, созданных по такому шаблону, можно открывать окно редактирования нового сообщения с уже заполненным полем «To» (кому) – адресом корреспондента. Это часто ощутимо увеличивает экономичность – потому как набрать em.ig куда быстрее, чем выбирать igor_takoito@blabla.com из кучи адресов случайно и неслучайно знакомых Игорей.

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

MagicWord – ema
Filename or URL – outlook.exe
Parameters – /c ipm.note /a "$I$"

Обратите внимание на примененную в параметрах языковую конструкцию $I$ (кавычки в примере обусловлены исключительно синтаксисом командной строки Outlook). По сути, $I$ является словом сверхкомпактного командного языка SlickRun. При подготовке строки параметров оно заменяется текстом, вводимым пользователем в специальном диалоговом окне (Dynamic Input). Более того, при открытии этого диалогового окна SlickRun автоматически помещает в него содержимое буфера копирования, а диалог Dynamic Input «помнит» все строки, вводимые пользователем ранее, и допускает навигацию по ним с помощью стрелок на клавиатуре. В языке SlickRun для $I$ предусмотрен «Web-ориентированный» двойник $W$. Если слово $I$ в строке параметров заменяется неизмененным, введенным пользователем в диалоге Dynamic Input, текстом, то $W$ инициирует две замены – сначала во введенном пользователем тексте заменяется каждый символ «пробел» на допустимую в URL последовательность, затем $W$ – результатом предыдущей операции.

Возможности SlickRun существенно расширяются за счет специальных слов – макросов, которые можно употреблять в поле имени файла вместо путевого имени или URL. Основной макрос, который, безусловно, будет вам необходим, – @MULTI@. Вот пример «волшебного слова», с которого автор статьи начинает рабочий день:

MagicWord – нач
Filename or URL – @MULTI@
Parameters – c:/.../miranda32.exe@ 
c:/.../Maxthon.exe@@c:/.../Outlook.exe@@@нов

Макрос @MULTI@ указывает, что SlickRun должен выполнить несколько операций, перечисленных в поле параметров. В этом примере команда нач последовательно запускает три программы и команду с именем нов. Последняя выглядит так:

MagicWord – нов
Filename or URL – @MULTI@
Parameters – http://itc.ua@http://boingboing.net/@ 
http://news.thomasnet.com

Таким образом, после выполнения команды нач запущены три программы – клиент служб сообщений Miranda, почтовый клиент и браузер, в котором открыты три страницы. Единственное, о чем остается упомянуть, – это о специфической роли символа «@» в строках параметров для макроса @MULTI@. Заметьте, что в параметрах слова нач использовалось разное количество данных символов, очевидно, играющих роль разделителей между отдельными параметрами. Логика применения «@» такова: один символ – разделитель, два и более – разделитель с задержкой в секундах, равной количеству символов минус один. То есть «волшебное слово» нач запустит на исполнение слово нов через две секунды после запуска Outlook и через три секунды – после запуска браузера (на слабенькой рабочей машинке автора эти задержки просто необходимы, а в целом – они совершенно не обязательны).

Теперь, когда вы фактически все знаете о SlickRun, пора дополнить ее еще целыми 64 КВ – утилитой NirCmd Эта крохотная программка позволяет создать множество по-настоящему волшебных слов-команд, и, что главное, к радости ленивых системных администраторов, – команд, выполняющихся удаленно, да еще и сразу на группах компьютеров. NirCmd – превосходно документированная утилитка с буквально сногсшибательной функциональностью. Рассказывать о том, что с ее помощью можно делать, бессмысленно. Потому что NirCmd позволяет делать практически все. Например, только одна ее команда win перекрывает все потребности в управлении окнами, и если вы любите порядок на экране – дополните команды запуска SlickRun автоматической установкой положения и размера окон приложений.

Не следует также забывать, что ОС Windows содержит множество полезных компонентов, о которых при работе в сугубо «мышином» режиме большинство и не подозревает. В следующем «волшебном слове» использован один из таких компонентов:

MagicWord – зап
Filename or URL – @MULTI@
Parameters – C:Program FilesSlickRunNotepad2.exe@charmap

Команда зап (от слова «записи») запускает нужные для записей по ходу дела отличный текстовый редактор Notepad2 и очень удобный штатный селектор символов Character Map ОС Windows, который пригодится при работе с многоязычными Unicode-текстами. Кстати, активное применение командного стиля работы с операционной системой весьма способствует ее изучению. Если пронаблюдать сообщения пользователей SlickRun в тематических форумах, можно заметить, как со временем вырастает уровень их знаний. Это, конечно, мелочь, но в данной статье мы говорим исключительно о мелочах.

Изделие № 1. Почти ненужное, но как оно сделано!

Образцовые мелочи
Cropper в действии: все гениальное – просто. Но не проще, чем нужно

Вы можете прочесть много толстых книг о usability (а их немало, и большинство из них – именно толстые), но если вы хотите увидеть usability в действии – установите себе Cropper (blogs.geekdojo.net/brian/articles/Cropper.aspx). Она делает только то, что должна делать, и именно так, как это должно делаться. Полупрозрачное окно Cropper «парит» над экраном и отмечает область, с которой будет сделан «снимок». Просто наведите этот «прицел» (с помощью клавиатуры или мышью), измените его размер, два щелчка левой кнопкой мыши – и снимок готов: ему присвоено автоматически сгенерированное на основании задаваемого пользователем шаблона имя, и файл сохранен в заданном каталоге. Только то, что надо, и ничего лишнего.

PS

Описанные утилиты (совершенно необязательные, но столь удобные) являются великолепными примерами хорошо спроектированных пользовательских программ. Даже если вы не собираетесь их применять – взглянуть на них стоит. И в первую очередь тем, кто пишет программы. Потому что лучший учебник рационализма и usability – реальный рациональный и удобный продукт.

0 
 

Напечатать Отправить другу

Читайте также

 
 
IDC
Реклама

  •  Home  •  Рынок  •  ИТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Сети  •  Безопасность  •  Наука  •  IoT