| ||
Help— и точка или .hlpВладимир Мазепа Как вы оцениваете программу без справочной системы? Пользоваться, конечно, можно, но как бы без страховки, не так ли? Страховка эта так и называется — помощь, и наличие ее у созданной вами программы обязательно. Приняв это как непреложный факт, сразу перейдем к процессу создания справочной системы. Вначале о том, что потребуется. Помощь создается в текстовом редакторе с поддержкой rtf, например, в MS Word. Для любителей альтернатив замечу, что редактор должен быть именно уровня Word — примитивы вроде WordPad не подойдут. Далее нужна программа, с помощью которой ваш rtf-файл при некоторых усилиях с вашей стороны превратится в готовенький hlp. Тут уж выбирать не приходится — Microsoft Help Workshop и никаких альтернатив. Его файлы hcw.exe или hcrtf.exe входят в состав большинства современных средств разработки программ, например Delphi, Visual Studio, и пр., так что вам будет легко их найти у себя простым поиском. Заметьте также, что сейчас есть программы, позволяющие создавать справки визуально, как говорится, WYSIWYG. Пользоваться ими или нет? Вопрос этот похож на известный вопрос о том, использовать ли FrontPage для создания веб-сайтов или не использовать. Так как в дискуссии о FrontPage все соглашаются, что HTML таки знать надо, то и в нашем вопросе решим, что полностью использовать возможности Windows Help можно, лишь зная все о создании справки в rtf. Да и захочется ли вам изучать эти программы, зная все это? Мне нет. Этап первый. Планирование и создание оглавленияЭтот этап очень важен. Вы решаете, какой будет ваша справочная система, из каких разделов («книга»), подразделов («книга» ниже и правее) и статей она будет состоять. О чем писать — дело ваше, но лучше поместить в справку максимум информации: описание интерфейса, описание функций программы, системные требования, пошаговое руководство и т. п. Предугадайте вопросы пользователя — и ответьте на них. Именно на этом этапе можно будет создать файл оглавления вашей справки. Для этого запустите hcw (или hcrtf), выберите File > New > Help Contents, нажмите Add Below и введите название первой статьи в поле Title. В следующем поле задайте уникальный идентификатор статьи (Topic ID), который будет потом использоваться для переходов от одной статьи к другой в справочной системе (можно просто скопировать туда название статьи). Теперь, допустим, вы хотите добавить раздел («книгу»). Опять жмите Add Below, установите выделение вместо Topic на Heading и введите название раздела в поле Title. Если нужно добавить подраздел, проделайте то же самое, выделите в окне программы название подраздела и нажмите Move Right (захотите вернуть назад — Move Left). В полях Default Filename и Default Title нужно задать имя будущего файла справки и заголовок окна с содержанием. Этап второй. Написание статей справочной системыКак вы уже знаете, на этом этапе поможет Word и ваш литературный талант. Напишите все статьи, оформив заглавия одним из стилей «Заголовок». Между статьями ставьте разрыв страницы (Вставка > Разрыв > Новую страницу). В дальнейшем вы сделаете переходы от одной статьи к другой прямо в тексте (подчеркнутый зеленый текст), а также объяснения терминов (зеленый текст, подчеркнутый пунктиром, при нажатии высвечивается комментарий), так что учтите эти возможности при написании статей. А вот как они реализуются, вы узнаете из следующего раздела. Впрочем, уже сейчас можно написать комментарии: отделите их от статей и друг от друга разрывами страницы и не устанавливайте заголовки. Вы можете вставлять рисунки bmp или wmf, как напрямую прямо в текст средствами Word, так и с помощью инструкций {bmc имя_файла}, {bml имя_файла}, {bmr имя_файла}. Первая просто вставит рисунок в текст, вторая отформатирует его по левому краю окна, третья — по правого краю. Если рисунок используется несколько раз, вставляйте его только с помощью этих команд, иначе рисунок будет несколько раз скомпилирован в готовый hlp, что увеличит его размер. Оформляйте текст как вам нравится — меняйте шрифты, переопределяйте стандартные стили и добавляйте новые, изменяйте отступы и интервалы. Однако использовать нужно широко распространенные шрифты: Arial, Verdana, MS Sans Serif, Times New Roman, Courier New — тогда есть гарантия, что на компьютере пользователя справка отобразится правильно. Если потребуется вставить таблицу, уберите ее рамку — Windows Help не поддерживает рамки таблиц, а Help Workshop, обнаружив рамку, разразится warning'ом. Не забудьте сохранить готовый документ в формате rtf. Этап третий. Разметка статей и расстановка переходовЭтот этап богат рутинными операциями. Если ваша справочная система получилась довольно большой, то вам доставит немало хлопот одна только разметка статей по идентификаторам (тем самым Topic ID, которые вы вводили при создании оглавления). Без разметки никак нельзя, так что читайте повнимательней о том, как она делается. Сначала устанавливаете курсор на начало заголовка статьи. Из меню Вставка выбираете Сноска, во фрейме Нумерация отмечаете Другая, затем вводите символ #. После нажатия на ОК курсор попадает в текстовое поле сноски, чем и воспользуйтесь — введите идентификатор статьи. То же самое проведите для всех заголовков. Как говорится, процедуру повторить, процедуру повторить, процедуру повторить... Размечайте пояснения терминов таким же образом — установив курсор в начало текста, вставьте ту же сноску и в качестве текста сноски придумайте идентификатор. Но это еще не вся рутина, хотя разметку вы уже провели. Теперь нужно распределить по тексту задуманные переходы и пояснения терминов. Процедура эта тоже довольно хлопотная, в ней опять понадобятся идентификаторы статей. Допустим, вы хотите, чтобы в одной из статей при нажатии на текст «системные требования» можно было перейти к одноименной статье. Дописываете к этому тексту идентификатор статьи (без пробела, например, «системные требованиясистемные_требования»). Текст «системные требования» оформляете двойным подчеркиванием (выделяете, вызываете Формат > Правка и выбираете двойную линию), текст системные_требования (т. е. идентификатор статьи) делаете скрытым (выделяете, в Формат > Правка ставите галочку Скрытый) и подчеркнутым пунктиром. Вот и все. Ваша мышь хорошо поработала. Сделать ссылку на комментарий к термину можно с помощью такой же процедуры — только подчеркивание текста будет не двойное, а пунктирное. Этап четвертый. Создание файла проектаПришла пора снова вызывать Microsoft Help Workshop. На этот раз создадим файл проекта справочной системы (*.hpj), затем все скомпилируем и, наконец, получим результат. Вначале создаете новый проект (File > New > Help Project). В открывшемся окне сохранения выбираете папку, вводите название проекта и нажимаете Save. В Help Workshop появится набор кнопок, на которые будем жать в ходе создания нашей будущей справки. Первая кнопка — Options. При нажатии открывается одноименное окно. На вкладке General введите идентификатор первой статьи (Default topic), в Help title — заголовок окна справки (оба поля чаще всего можно оставить и пустыми, но на всякий случай...) Поставьте Maximum на вкладке Compression — максимальное сжатие сократит размер результата. На вкладке Files задайте свой rtf-файл и файл оглавления (Contents file). В окне еще много вкладок и полей ввода, но они редко используются, потому перейдем к кнопке Windows. Понятно, что эта кнопка должна отвечать за окна вашей справки. У большинства справочных систем окно одно, не считая окна с оглавлением. Как сделать несколько окон у справочной системы расскажу позже, сейчас же можно создать главное, основное окно. Нажимаете на кнопку Windows, и, так как ни одно окно еще не задано, появляется вопрос, окно с каким именем нужно создать. Пишем main, нажимаем ОК и видим окно Window Properties. В General введите текст заголовка окна, установите при необходимости флажки Maximize window («Максимизировать окно») и Keep help window on top («Держать окно справочной системы поверх всех окон»). На Position установите позицию и размеры окна, в чем вам поможет Auto-Sizer — специальное окно, установив позицию и размеры которого вы установите позицию и размеры своего окна справки. Вкладка Buttons отвечает за кнопки, которые будут находиться вверху окна, вкладка Color — за цвета фона статьи и ее заголовка. Пока все. Вы уже можете нажать на Save and Compile и посмотреть на долгожданный результат. Во время компиляции Help Workshop покажет найденные ошибки (Errors) и покритикует вашу работу замечаниями (Notes) и предупреждениями (Warnings). Теперь я могу отойти от поэтапного повествования и рассказать о том, как сделать вашу справочную систему еще функциональнее. Предметный указательПредметный указатель (в английской версии Index) — одна из вкладок окна с оглавлением. Он позволяет пользователю просмотреть статьи по интересующим его ключевым словам. Каждая хорошая справка имеет указатель, а так как вы создаете хорошую справку, то указатель сделать придется. Пока соответствующая вкладка не видна, но как только проделаете следующие действия, она появится сама собой. Задайте названия статей. Конечно, они уже есть и оформлены одним из заголовочных стилей, но требуется задать названия еще и в виде сносок. Ставите курсор в начало заголовка статьи, выбираете Вставка > Сноска, в окне выбираете Другая и вводите символ $. После нажатия на ОК в качестве текста сноски введете название статьи. То же сделаете для всех статей, которые будут доступны из Указателя. Кстати, названия статей будут использоваться не только в Указателе, но и в Поиске, так что лучше задавать их для всех статей справки. Но установить названия статей, конечно, — только полдела. Нужно еще задать список ключевых слов, присутствующих в статье. Эти ключевые слова будут отображаться в Указателе, и при наличии нескольких статей, содержащих выбранное пользователем ключевое слово, ему будет показано окно выбора, где будут перечислены названия имеющихся статей. Как задать список ключевых слов? Вначале устанавливаете курсор перед заголовком статьи и повторяете уже успевшую надоесть последовательность Вставка > Сноска > Другая, но в поле вводите символ K (большая латинская буква). В качестве текста сноски введите список ключевых слов, отделяя их точкой с запятой и пробелом, например: Интерфейс; Главное окно программы; Внешний вид. Если нужно сделать ключевое слово подпунктом, например, Меню, Вид Правка Файл то введите ключевое слово с названием пункта и запятой с пробелом, вот так: Меню, Файл Переход по ключевым словамИногда может потребоваться кнопка или ссылка, действие которой аналогично выбору элемента из Предметного указателя. Покажу, как все это делается. В реализации задуманного поможет специальный макрос KLink, который ищет слово в K-сносках. У вас должны быть подготовлены статьи для Предметного указателя, т. е. сносками должны быть указаны их имена и ключевые слова. Допустим, вы хотите сделать в статье ссылку (переход) «Все о шрифтах». Пишем: Все о шрифтах!KLink(Шрифт). «Все о шрифтах» оформляем двойным подчеркиванием, остальное делаем скрытым текстом и подчеркиваем пунктиром. При нажатии на переход будут найдены все статьи, в чьих K-сносках есть слово «Шрифт». Если статей несколько, будет показано окно выбора, если одна — сразу осуществится переход, если ни одной — появится соответствующее сообщение. Чтобы ссылка «Все о шрифтах» была представлена в виде кнопки, пишется следующая инструкция: {button Все о шрифтах, KLink(Шрифт)} Вообще, в скобках макроса можно указывать несколько ключевых слов (если хотя бы в одном из них есть запятая, то весь текст в скобках заключается в кавычки). Тогда при нажатии на такую ссылку Windows Help найдет все статьи, имеющие в своих K-сносках первое ключевое слово. Если статьи не будут найдены, поиск будет проведен для второго слова. Думаю, здесь уместно рассказать про сноску A и про макрос ALink. Они во всем аналогичны K и KLink соответственно, однако ключевые слова, находящиеся в сноске A, не попадают в Предметный указатель. С помощью A и ALink легко создавать полезные для справочных систем кнопки или ссылки вида «Смотрите также». Последовательность просмотраВы знаете, что многие справки можно перелистывать по статьям — вверху у них есть кнопки << и >>. Устанавливаются эти кнопки на вкладке Buttons свойств главного окна (галочка Browse), но просто установить эти кнопки мало — необходимо еще и задать последовательность, в которой должны листаться статьи. Устанавливать эту последовательность опять придется с помощью сносок. Опять-таки ставите курсор перед заголовком статьи, опять выполняете Вставка > Сноска > Другая, затем вводите знак +. Текстом сноски будет номер статьи в последовательности просмотра. Если ваши статьи и так расположены в этой последовательности, то можете текст сноски не указывать, тогда все будет сделано автоматически. Дополнительные окнаВы, возможно, видели справочные системы, состоящие не только из одного главного окна, но и имеющие дополнительные окна. От главного окна эти окна отличаются тем, что способны менять свои размеры в зависимости от содержащегося в них текста и не имеют отдельного заголовка статьи. Допустим, вам в вашей справке требуется дополнительное окно. Вначале его нужно задать в вашем проекте. Вы уже задали окно main, потому при нажатии на кнопку Window появится окно его свойств. Нажмите в нем кнопку Add и введите имя нового окна, например w. Теперь задайте свойства этого окна. Все происходит аналогично главному окну, только теперь доступна галочка Auto-size height (Автоматически изменять высоту) и недоступна максимизация окна. Нельзя также вставить в дополнительное окно некоторые верхние кнопки из вкладки Buttons. Если вы хотите, чтобы статья открывалась в дополнительном окне из оглавления, то откройте оглавление в Help Workshop, выделите нужную статью, нажмите нижнюю кнопку Edit и в открывшемся окне в поле Window type введите название вашего окна. Чтобы остальные статьи открывались из оглавления в главном окне, нажмите верхнюю Edit и впишите в Default Help filename имя файла справки (без расширения hlp), а в Default window — слово main. Если нужно отметить ссылку, при нажатии на которую другая статья будет открыта в новом окне, то в Word’е повторите те же операции, что и при создании обычного перехода, только после идентификатора статьи без пробела поставьте знак >, а после него (тоже без пробела) — имя дополнительного окна. Пример: статьяидентификатор>w. Слово статья — двойное подчеркивание, текст идентификатор>w — скрытый и подчеркнутый пунктиром. Но и этого пока мало для того, чтобы статья всегда вызывалась в дополнительном окне. При вызове из Указателя или Поиска она все равно окажется в основном окне. Чтобы этого не происходило, вставьте сноску > перед заголовком статьи и обязательно после сноски #. Для этого, как вы уже знаете, существует последовательность Вставка > Сноска > Другая, запись > в поле ввода и нажатием на ОК. Текстом сноски будет имя дополнительного окна. Программы, документы, гиперссылкиИногда в справочной системе нелишними бывают кнопки или ссылки, при нажатии на которые запускается программа или открывается документ. Вводите текст ссылки (вроде «Запуск Notepad») и сразу после него записываете !EF(notepad.exe). Текст ссылки оформляете двойным подчеркиванием, остальное — скрытый текст с подчеркиванием пунктиром. Вот как делается кнопка: {button Запустить notepad, EF(notepad.exe)} Таким же способом можно открыть документ в его родной программе. Вот пример кнопки: {button Открыть readme.doc, EF(readme.doc)} Так как адреса сайтов или e-mail — тоже как бы документы, то открыть их можно аналогично: {button Переход на yahoo.com, Не забывайте указывать http://, в e-mail не забывайте mailto: Некоторые возможностиВы можете установить свой текст, который будет отображаться при выборе пункта Версия меню Помощь главного окна вашей справки. Для этого в Help Workshop нажмите Options, на вкладке General появившегося окна заполните нужным текстом поле Display this text in the Version dialog box. Кроме того, на той же вкладке можно установить текст, который будет выдаваться пользователю, если он захочет скопировать или распечатать статью или ее часть. Этот текст будет помещен после фрагмента справки и может служить напоминанием пользователю об источнике информации или авторских правах. Если вы захотите сделать такой текст, заполните поле If users paste or print Help text, display. Тестирование и отладкаОтладка... Это страшное слово прокралось и сюда. Хотя отладка здесь не так уж болезненна — нужно просто исправить все ошибки, выданные Help Workshop и состоящие в основном из ваших опечаток. Исправив, переходите к тестированию — просмотрите, туда ли выполняются переходы, те ли пояснения высвечиваются, правильный ли порядок просмотра. Придется просмотреть все статьи, вызывая их из оглавления, а также все ключевые слова из Предметного указателя. Что поставлятьУ вас уже накопилось несколько файлов, относящихся к справочной системе. Какие из них будут результатом вашей работы, так необходимым пользователю? Пользователю нужен сам файл hlp и файл оглавления cnt, больше ничего. Иногда программисты вместе со справкой поставляют временный файл gid, чем немало удивляют опытных пользователей. Не вздумайте также со справкой поставлять базы поиска fts — когда пользователю понадобится поиск, он и сам их сделает. ЗаключениеТеперь вы знаете, как создать справочную систему. Некоторые возможности, конечно, остались неописанными, но если захотите их использовать — всегда к вашим услугам справочная система по Help Workshop, которая, кстати, представляет собой пример хорошо сделанной, продуманной справки. Надеюсь, и ваша система помощи станет надежной страховкой пользователям в использовании вашей программы. Источник: http://www.mycomp.com.ua/
| ||
Copyright © "Internet Zone", http://www.izcity.com/, info@izcity.com |