Изменение нумерации значений контекста темы с помощью HelpNDoc API

Я нашел этот учебник для экспорта значений идентификаторов контекстной справки в файл данных:

const
  // Define the output file
  OUTPUT_FILE = 'c:\tmp\topics.txt';

var
  // Current topic ID
  aTopicId: string;
  // List of output
  aList: TStringList;

begin
  // Init list
  aList := TStringList.Create;
  aList.Add('Topic Caption | Help ID | Help Context');
  aList.Add('--------------------------------------');
  try
    // Get first topic
    aTopicId := HndTopics.GetTopicFirst();
    // Loop through all topics
    while aTopicId <> '' do
    begin
      // Add the topic to the list
      aList.Add(Format('%s | %s | %d', [
        HndTopics.GetTopicCaption(aTopicId),
        HndTopics.GetTopicHelpId(aTopicId),
        HndTopics.GetTopicHelpContext(aTopicId)
      ]));
      // Get next topic
      aTopicId := HndTopics.GetTopicNext(aTopicId);
    end;
    // Create the file
    aList.SaveToFile(OUTPUT_FILE);
  finally
    aList.Free;
  end;
end.

Я сделал некоторую реструктуризацию моей пересмотренной справочной документации, и в результате номера контекста не являются последовательными:

содержание

Используя HelpNDoc, я надеялся написать новый API-скрипт для их перенумерации, но я не вижу подходящего API-метода.

Это не возможно?

1 ответ

Решение

Используя HelpNDoc API, вы можете изменить номер справочного контекста темы, используя HndTopics.SetTopicHelpContext вызов метода. Используя простую логику, можно сбросить все номера контекста справки. Это описано в следующей статье: Использование возможностей сценариев HelpNDoc для автоматического сброса всех номеров контекстов справки

Скрипт, представленный в статье, даже включен в папку установки недавнего HelpNDoc:

Числа контекста могут стать грязными по мере развития проекта HelpNDoc. Этот скрипт сбрасывает номер контекста каждой темы, так что они устанавливаются постепенно от первой темы до последней.

Вот как запустить этот скрипт:

  • Сохраните резервную копию вашего проекта на случай, если вам понадобится вернуться
  • Загрузите ваш проект
  • На вкладке ленты "Инструменты" HelpNDoc нажмите "Редактор скриптов"
  • Нажмите стрелку рядом с "Загрузить скрипт", чтобы отобразить список встроенных скриптов.
  • Нажмите "ResetHelpContextNumbers.hnd.pas"
  • Нажмите "Выполнить скрипт"
Другие вопросы по тегам