Блог технического писателя Ильи Жукова

Внесение изменений и сборка нового CHM-файла

Перед тем, как приступить непосредственно к редактированию содержимого CHM-файла, подытожим выполненные заранее подготовительные работы. Определившись с бесплатными программами, которые будут использоваться для редактирования CHM, мы декомпилировали оригинальный CHM-файл. Далее мы создали новый исходник (полученные файлы + файл проекта HTML Help Workshop) и научились собирать обновленный CHM-файл с аналогичным функционалом. Во время редактирования мы будем регулярно выполнять сборку обновленного CHM, чтобы оперативно находить и исправлять ошибки. 

Приступим непосредственно к редактированию CHM-справки. Начнем с самого простого: добавим текст на английском языке и заменим рисунок.

Замена рисунков в CHM

Чтобы поставить новый рисунок в справку, достаточно просто заменить файл рисунка в папке decompiled на одноименный файл с тем же расширением. В данном случае это файл viewer.gif. Чтобы поставить рисунок с другим именем в другом формате, потребуется отредактировать код .htm-файла. Действуем по принципу: внесли изменения, собрали справку, проверили. Должен получиться следующий результат.

замена рисунка в CHM

 

Добавление в CHM текста на английском языке

Чтобы добавить текст на английском языке в раздел About pop-up Windows, сначала необходимо найти файл .htm, соответствующий данному разделу. Для этого:

  1. В окне HTML Help Workshop перейдите на вкладку Contents.
  2. Выделите раздел About pop-up Windows и выберите команду Edit selection слева на панели инструментов. Будет открыто окно Table of Contents Entry. Имя файла будет указано в поле Files/URLs and their information types. В данном случае это файл wintypes_popup.htm.

  1. Найдите файл wintypes_popup.htm в Проводнике и откройте его в Notepad++.

редактирование текста в CHM

Данный файл можно также открыть в редакторе, встроенном в HTML Help Workshop, воспользовавшись командой View HTML source. Работать с текстом здесь будет менее удобно (как в Блокноте).

  1. В окне Notepad++ отредактируйте существующий текст или добавьте новый. На данном этапе потребуются базовые знания HTML. В Notepad++ весь код (теги, атрибуты и их значения) выделен цветом, что значительно упрощает работу. Вот несколько примеров вставки текста:

добавление текста в CHM

  1. Сохраните внесенные изменения.
  2. Пересоберите справку и проверьте результат.

новый текст в CHM

 

Добавление в CHM текста на русском языке

Перед вставкой в справку текста на русском языке необходимо проверить кодировку страниц. Если вы работаете с переведенным CHM-файлом, в разделах которого уже есть корректно отображающийся русский текст, кодировка страниц должна быть правильной — Windows-1251. В этом случае английский текст можно просто поменять на русский, либо добавить русский текст, как было описано выше.

В примере с файлом api.chm перед вставкой текста на русском языке потребуется выполнить несколько дополнительных действий. Если вы обратили внимание, на приведенных выше скриншотах в правом нижнем углу окна Notepad++ указана кодировка Windows-1252. Она предназначена для большинства западноевропейских языков. Если вы вставите русский текст на страницу с такой кодировкой, то получится следующий результат.

Чтобы русский текст корректно отображался, необходимо подправить кодировку в мета-теге блока <head>, а затем выбрать кодировку Windows-1251 для ввода кириллических символов. Если все сделать правильно, русский текст будет корректно отображаться как в английских, так и в русифицированных версиях ОС Windows, от Windows XP до Windows 10. Латиница будет корректно отображаться в любом случае.

 

Чтобы поменять кодировку:

  1. Откройте файл, в который необходимо вставить текст на русском языке, в Notepad++.
  2. Подправьте кодировку в разделе head (в данном случае в строке 4).
  3. В строке меню выберите Кодировки / Кодировки / Кириллица / Windows-1251. После этого в правом нижнем углу окна будет отображаться кодировка Windows-1251.

  1. Сохраните внесенные изменения.

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

 

Редактирование раздела в CHM справке

Теперь несколько слов о редактировании раздела About the HTML Help ViewerOverview / Window Types). Весь текст, который выводится на экран, есть в коде .htm-страницы, файл wintypes_viewer.htm. Текст всплывающих подсказок задан в атрибуте alt тега img, в атрибутах title тегов area, а также в JavaScript в нижней части страницы. Другие .htm-страницы организованы аналогичным образом. Открывающие и закрывающие теги абзаца иногда опущены.

Редактируя тексты в html-коде, важно соблюдать принятые синтаксические правила. Если вы не сильны в HTML и JavaScript, просто не трогайте символы слева и справа от текстов. В данном примере — это двойные кавычки и теги. На рисунках ниже текст, который нужно заменить при переводе на русский, выделен цветом.

Порядок работы аналогичен описанному выше:

  • с латиницей работаем в текущей кодировке;
  • перед вставкой кириллицы проверяем кодировку, при необходимости меняем ее на Windows-1251, подправляем кодировку в head и вставляем кириллицу.
  • Сохраняем изменения, собираем справку и проверяем полученный результат.

На данном этапе работы должно получиться примерно следующее.

 

Редактирование содержания CHM-справки

Из задач, обозначенных в первом материале Как отредактировать CHM-файл, осталось перевести название раздела About the HTML Help Viewer в содержании справки. Содержание CHM-документа находится в файле с расширением HHC, в данном случае, api.hhc. Это обычный текстовый файл, размеченный тегами HTML. В нем в иерархическом порядке приведены названия разделов в содержании и имена соответствующих им HTM-файлов. Если данный файл открыть в Notepad++, он будет выглядеть следующим образом.

В нашем случае кодировка файла распознается как ANSI. Строго говоря, это набор кодовых страниц, в который среди прочих входят Windows-1252 и Windows-1251. Если бы мы открыли содержание русифицированного, либо созданного на русском языке CHM-файла, кодировка бы распозналась как Windows-1251.

Если следовать логике редактирования раздела, описанной выше, для перевода названия раздела в содержании следовало бы сначала изменить кодировку файла HHC на Windows-1251, затем заменить название раздела на «О средстве просмотра HTML Help», сохранить изменения и собрать CHM для проверки. Если данная операция выполняется один раз, все будет работать.

Но до первого сохранения файла HHC программой HTML Help Workshop. Даже если вы редактировали название другого раздела в содержании, после сохранения файла все кириллические символы будут перекодированы в специальные символы HTML (мнемоники). Преобразовать их обратно в кириллицу без старого доброго Штирлица сможет только HTML Help Workshop. После такого преобразования работать с содержанием в Notepad++ будет, мягко говоря, сложно.

Поэтому я расскажу, как отредактировать содержание CHM-справки в HTML Help Workshop.

 

Редактирование содержания CHM в HTML Help Workshop

  1. Запустите HTML Help Workshop.
  2. Откройте файл проекта new_prj.hhp.
  3. Проверьте, чтобы в свойствах проекта был выбран русский язык.

  1. Перейдите на вкладку Contents.
  2. В структуре выделите название раздела, которое необходимо отредактировать.
  3. Слева на панели инструментов выберите команду Edit Selection.
  4. В поле Entry Title введите новое название раздела на английском или русском языке.

  1. Нажмите на кнопку ОК. Название в структуре содержания изменится на новое.

  1. Сохраните внесенные изменения.
  2. Соберите справку и проверьте ее. Должны получиться следующие результаты.

На этом все задачи, поставленные в материале Как отредактировать CHM-файл, можно считать выполненными. Проверьте получившийся CHM-файл: все ли разделы открываются, все ли ссылки работают, все ли рисунки соответствуют оригиналу.

 

Выводы

Ознакомившись на практике с бесплатными программами, которые были использованы для редактирования CHM-файла, каждый сделает выводы. И у каждого они будут индивидуальными. Поделюсь своими. Из достоинств представленного метода (редактирование CHM при помощи бесплатного ПО) неоспоримо только одно: бесплатность. Основные недостатки, на мой взгляд, следующие:

  • Не дружественный интерфейс пользователя. Во время работы с HTML Help Workshop приходится продираться сквозь дебри пользовательского интерфейса, созданного за 20 лет до того, как UI и UX дизайну стало уделяться больше внимания. С другой стороны, со временем к интерфейсу можно привыкнуть.
  • Высокая трудоемкость разработки справки. Все работы по разработке справки выполнить только в HTML Help Workshop невозможно (например, проработать исключительно структуру). Отсюда необходимость использования дополнительных программ. Следовательно, одну и ту же работу приходится делать по 2-3 раза (например: создать структуру в FreeMind, создать вручную HTM-файлы разделов, создать вручную содержание в HTML Help Workshop, привязать вручную HTM-файлы к названиям разделов и т.д.).
  • Очень высокая трудоемкость редактирования справки. Обновить серьезный проект (от 1000 разделов, от 700 рисунков) в HTML Help Workshop просто не реально. Трудоемкость редактирования будет превышать трудоемкость разработки первой версии.
  • Большое количество тонкостей. Нюансы работы, о которых я рассказал в данной серии статей, это только вершина айсберга. Например: в созданных из HTML Help Workshop HTM-файлах не прописывается кодировка, что важно при работе с русским языком. Значит нужно либо каждый раз прописывать кодировку руками, либо использовать еще одну программу или шаблон. Продолжать можно до бесконечности… С другой стороны, нюансов много в любой сфере.
  • Неэффективная разработка контента. Писать текст с иллюстрациями, ключевыми словами и перекрестными ссылками в HTML-разметке не только неудобно, но и нерационально. Для этого эффективнее использовать визуальный редактор с системой проверки правописания. Это подтверждается рядом научных работ. Так, по результатам исследования, проведенного под эгидой Университета Гиссена (Германия), опубликованного в 2014 году, эксперты по использованию LaTeX показали меньшую производительность, чем неопытные пользователи MS Word. Пользователи LaTeX набирали текст медленнее, делали больше опечаток, орфографических и грамматических ошибок, а также ошибок форматирования. Данный пункт неплохо бы взять на заметку менеджерам, принимающим решение в пользу выбора того или иного платного или бесплатного инструмента для технического писателя.

В следующем материале рассмотрим, как отредактировать CHM при помощи Help+Manual 7 Pro.

 

Добавить комментарий

Комментарии  

Константин
# -1 Константин 14.04.2019 14:26
Перед тем, как приступить непосредственно к написанию комментария, подытожим выполненные заранее подготовительные работы. Определившись с бесплатными программами, которые будут использоваться для редактирования CHM, мы декомпилировали оригинальный CHM-файл. Далее мы создали новый исходник (полученные файлы + файл проекта HTML Help Workshop) и научились собирать обновленный CHM-файл с аналогичным функционалом. Во время редактирования мы будем регулярно выполнять сборку обновленного CHM, чтобы оперативно находить и исправлять ошибки.
Что-ж все так растянуто. Очень помогла статья, спасибо. Но очень многое приходится пропускать.
Ответить Ответить с цитатой Цитировать

Последние статьи

Что нового в Help+Manual 8

10 февраля 2020 года вышла 8-я версия Help+Manual. Любой желающий может бесплатно скачать пробную версию с сайта компании-разработчика и оценить ее потенциал. В течени...

Читать полностью...

Работа со стилями в Help and Manual 7

Чтобы внешний вид нового CHM-файла соответствовал оригиналу, необходимо создать стили, применить их к проекту и очистить встроенное форматирование. Это позволит обеспе...

Читать полностью...

Форматы справки для ОС Linux

В рамках замещения импортного программного обеспечения все больше государственных структур переходят на отечественные сборки Linux. Прежде всего, это Alt Linux и Astra...

Читать полностью...

Сборка CHM-файла в Help and Manual

Регулярная сборка выходных файлов позволяет контролировать качество справки и исправлять ошибки по горячим следам. Она необходима для любого формата справки, а также д...

Читать полностью...

Основные настройки проекта в Help and Ma…

Если для сборки справки не используется шаблон (skin-file), внешний вид и основной функционал CHM-справки берется из настроек проекта. В этой статье я расскажу о том, ...

Читать полностью...

Импорт CHM в Help and Manual

Программный комплекс Help and Manual позволяет импортировать документацию из ряда форматов, в том числе, из HTML и CHM. Готовую документацию можно загрузить как в суще...

Читать полностью...

Как отредактировать CHM в Help and Manua…

Если вам нужно внести несколько небольших правок в CHM-файл, такую задачу можно успешно решить при помощи бесплатных программ HTML Help Workshop и Notepad++. Серьезная...

Читать полностью...

Как сделать качественные скриншоты

Равно как звук считается одним из основных показателей качества обучающих видеороликов, пользовательская и техническая документация не может быть признана качественной...

Читать полностью...

Создание и настройка проекта в HTML Help…

Установив необходимые бесплатные программы, мы разобрали исходный файл api.chm и получили 64 файла (подробнее смотрите материал Декомпиляция CHM-файла). Это основная ч...

Читать полностью...

Декомпиляция CHM-файла

Файл в формате CHM представляет собой скомпилированный HTML. В него могут входить HTML-страницы, рисунки, таблицы стилей, скрипты и другие файлы. Подробное описание со...

Читать полностью...

Редактирование CHM бесплатными программа…

Если заказчику или работодателю не принципиально, какое программное обеспечение использовать, я предпочитаю редактировать CHM в Help+Manual 7. Но как показывает практи...

Читать полностью...

Как отредактировать CHM-файл

Пользовательская документация для приложений, работающих в ОС Windows, чаще всего поставляется в формате CHM как встроенная в программу справка. Технические писатели, ...

Читать полностью...

Как создать справку в формате CHM

Формат HTML Help или CHM был разработан компанией Microsoft в 1997 г. Сегодня CHM остается стандартом справки для приложений, работающих в ОС Windows. Средство для про...

Читать полностью...

Бесплатный локальный сервер HM2GO для We…

Одна из моих предыдущих статей была посвящена особенностям работы WebHelp на локальных компьютерах. Некоторые популярные браузеры, в том числе Google Chrome, Opera и Я...

Читать полностью...

Дата в полном формате с месяцем в родите…

Сегодня пользовательская документация поставляется, как правило, в электронном формате и содержит дату выпуска. Ее обычно указывают в хедере, футере или в специальном ...

Читать полностью...

Корректная работа WebHelp на локальном к…

Вряд ли кто-то считает тестирование справки хоть сколько-нибудь сложной задачей. Тестирование документации вообще очень редко упоминается в профильной литературе. Мног...

Читать полностью...

Все о справке и документации для пользователей!

Следить за новыми статьями:

© Илья Жуков, 2019. Охраняется законом об авторском праве.