“HelpNDoc 6.0 bietet eine bessere Unterstützungsfunktion für den Status von Themen, die technischen Redakteuren die Pflege ihrer Dokumentationsprojekte deutlich erleichtert: Die Themen können als “Veraltet”,“In Bearbeitung”,“Zu überprüfen”,“Vollständig” oder mit einem anderen benutzerdefinierten Status markiert werden. Sie können diese Funktion zur Aktualisierung eines alten Projekts nutzen, um zum Beispiel den Status aller Themen als “Zu überprüfen” zu markieren und die Themen anschließend der Reihe nach zu überarbeiten. Das Aktualisieren jedes einzelnen Themas in einem großen Projekt kann jedoch recht zeitaufwändig sein. Glücklicherweise kann HelpNDocs Scripting-Unterstützung den Status Ihres gesamten Dokumentationsprojekts im Bruchteil einer Sekunde aktualisieren. Im Folgenden erfahren Sie, wie Ihnen das gelingt.

Anwendung des Script-Editors in HelpNDoc

Wenn eine Funktion in HelpNDoc nicht vorhanden ist, können Sie den Script-Editor anwenden und die Funktion mittels der Scripting-API des Editors selbst erstellen.

Der Script-Editor kann zum Automatisieren der meisten Aspekte des Schreibens und der Pflege von Dokumentationen genutzt werden. So wenden Sie den Script-Editor in HelpNDoc an:

  • Klicken Sie auf “Script-Editor” in dem Tab “Tools” der HelpNDoc-Multifunktionsleiste. Dadurch erscheint das Fenster “Script verfassen und ausführen”.
  • Geben Sie den Inhalt Ihres Scripts in den Code-Editor ein. Überprüfen Sie Ihre Dokumentation hinsichtlich verfügbarer API-Methoden, um zu erfahren, was in Ihrem benutzerdefinierten Script verfügbar ist.
  • Überprüfen Sie mittels der Schaltfläche “Script erstellen” (oder Tastaturkürzel “Umsch+F9”), ob die Syntax des Scripts korrekt ist.
  • Führen Sie das Script mittels der Schaltfläche “Script ausführen” (oder Tastaturkürzel “F9”) aus.

Schreiben des Scripts

Der Algorithmus, der für das Aktualisieren jedes Themas hinsichtlich eines bestimmten Status erstellt werden muss, ist ganz einfach: Zunächst bestimmen wir den eindeutigen Identifikator des Status, dann iterieren wir durch alle Themen des Projekts und legen den Status des Themas entsprechend des korrekten Identifikators fest.

1. Bestimmen Sie den Identifikator des Status

Bevor Sie den Status auf jedes Thema anwenden, müssen Sie den eindeutigen Identifikator des Status bestimmen. Glücklicherweise beinhaltet HelpNDocs API für das HndStatus-Objekt die HndStatus.GetStatusByCaption()-Methode, die diese Aufgabe deutlich vereinfacht. Hier ist ein Script, das Ihnen den Ablauf verdeutlicht:

const
  // Name des Status
  STATUS_TO_LOOK_FOR = 'Zu überprüfen';
var
  // ID des Status
  aStatusId: string;
begin
  // Eindeutigen ID des Status bestimmen
  aStatusId := HndStatus.GetStatusByCaption(STATUS_TO_LOOK_FOR);
end;

2. Iterieren Sie durch alle Themen

Wir kennen nun den eindeutigen Identifikator des Status, den wir auf alle Themen anwenden wollen. Jetzt können wir durch alle Themen wie folgt iterieren:

var
  // ID des aktuellen Themas
  aTopicId: string;
begin
  // Das erste Thema abrufen
  aTopicId := HndTopics.GetTopicFirst();
  // Alle Themen durchlaufen
  while aTopicId <> '' do
  begin

    // ... Den Status des Themas hier festlegen ...

    // Das nächste Thema abrufen
    aTopicId := HndTopics.GetTopicNext(aTopicId);
  end;
end.

3. Legen Sie den Status des Themas fest

Wir können jetzt den Status dieses Themas ganz einfach mit der richtigen HndTopics-Methode festlegen:

// Status festlegen
HndTopics.SetTopicStatusId(aTopicId, aStatusId);

Das gesamte Script

Jetzt haben wir alle Code-Stücke für das Schreiben des vollständigen Scripts zur Änderung der Themenstatus im gesamten Dokumentationsprojekt. Sehen wir uns das vollständige Script an.

Table of contents topic status

Das folgende Script wird den Status aller Themen automatisch im aktuell geöffneten Projekt als “Zu überprüfen” markieren. Es kann bei Bedarf angepasst werden: Ändern Sie einfach den Wert der Konstante ‘STATUS_TO_LOOK_FOR`, um einen anderen Status festzulegen. Außerdem können Sie dieses Script so erweitern, dass es den Status nur auf Themen anwendet, die eine bestimmte Bedingung erfüllen, wie z. B. Themen mit einem bestimmten übergeordneten Thema, einer bestimmten Hilfe-ID, einem bestimmten aktuellen Status … die Möglichkeiten sind endlos.
Das vollständige Skript kann in HelpNDocs Script-Editor eingefügt werden und wird in einer zukünftigen Version von HelpNDoc enthalten sein:

const
  // Name des Status
  STATUS_TO_LOOK_FOR = 'Zu überprüfen';
var
  // ID des Status
  aStatusId: string;
  // ID des aktuellen Themas
  aTopicId: string;
begin
  // Eindeutigen ID des Status bestimmen
  aStatusId := HndStatus.GetStatusByCaption(STATUS_TO_LOOK_FOR);
  // Das erste Thema abrufen
  aTopicId := HndTopics.GetTopicFirst();
  // Alle Themen durchlaufen
  while aTopicId <> '' do
  begin
    // Status festlegen
    HndTopics.SetTopicStatusId(aTopicId, aStatusId);
    // Das nächste Thema abrufen
    aTopicId := HndTopics.GetTopicNext(aTopicId);
  end;
end.

Das könnte Sie auch interessieren


Kategorien: artikel