如何在脚本编辑器中使用 api 在 helpndoc 中定义关键字
How to define keywords in helpndoc using api in script editor
我想使用 api 脚本编辑器在 HelpNDoc 中创建关键字。但是,我找不到如何定义函数 HndKeywords.CreateKeyword
的参数。在不向函数传递任何值的情况下,它会创建 New 关键字。但是,我想设置文本,href
和 data-related
对象信息。
HndKeywords.CreateKeyword;
输出:_keywords.json
[{ "id": "B3BF561185624A4685FB01E93FE5ED87", "parent" : "#", "text": "New keyword", "a_attr": {"href": "#", "data-related": "[]"} }]
我发现,在创建关键字时无法添加标题和 data-related 信息。
function SetKeywordCaption(const aKeywordId: string; const sNewCaption: string): string;
function AssociateTopicWithKeyword(const aTopicId: string; const aKeywordId:string): Boolean;
为了编辑关键字标题,我必须使用需要关键字 ID 的函数 SetKeywordCaption
。为此,我使用函数 GetKeywordList();
获取关键字列表,它 returns 是一个数组。我从该数组中获取最后一个元素数字 id,这是一个新插入的关键字。然后,使用最后一个元素数组 id 访问 aKeywordList
数组并添加 .Id
,这将检索该关键字的 id。然后,使用关键字id和功能SetKeywordCaption
,可以编辑关键字标题。
为了添加data-related信息,我使用函数AssociateTopicWithKeyword
需要topic id
和keyword id
。我使用函数 GetTopicList
获取主题列表。我得到主题 ID 为五个 (topic_array[(5-1)].ID
) 和第六个主题 (topic_array[(6-1)].ID
)。然后,使用函数 AssociateTopicWithKeyword
到 link 关键字到主题。
调用 helpndoc 函数:
Object.function
ex (HndKeywords.CreateKeyword;
)
var new_keyword :=HndKeywords.CreateKeyword;
var aKeywordList =HndKeywords.GetKeywordList() ;
//get keyword added last
var newlyaddedkeyword_array_id =length(aKeywordList) - 1 ;
var newlyaddedkeyword__id =aKeywordList[newlyaddedkeyword_array_id].Id;
var edit_keywordcaption =HndKeywords.SetKeywordCaption(newlyaddedkeyword__id, "Edited keyword");
var topic_array=HndTopics.GetTopicList;
var keywordtopics =HndTopicsKeywords.AssociateTopicWithKeyword(topic_array[4].ID,newlyaddedkeyword__id);//parameter : topic id and keyword id
var keywordtopics2 =HndTopicsKeywords.AssociateTopicWithKeyword(topic_array[5].ID,newlyaddedkeyword__id);
我想使用 api 脚本编辑器在 HelpNDoc 中创建关键字。但是,我找不到如何定义函数 HndKeywords.CreateKeyword
的参数。在不向函数传递任何值的情况下,它会创建 New 关键字。但是,我想设置文本,href
和 data-related
对象信息。
HndKeywords.CreateKeyword;
输出:_keywords.json
[{ "id": "B3BF561185624A4685FB01E93FE5ED87", "parent" : "#", "text": "New keyword", "a_attr": {"href": "#", "data-related": "[]"} }]
我发现,在创建关键字时无法添加标题和 data-related 信息。
function SetKeywordCaption(const aKeywordId: string; const sNewCaption: string): string; function AssociateTopicWithKeyword(const aTopicId: string; const aKeywordId:string): Boolean;
为了编辑关键字标题,我必须使用需要关键字 ID 的函数 SetKeywordCaption
。为此,我使用函数 GetKeywordList();
获取关键字列表,它 returns 是一个数组。我从该数组中获取最后一个元素数字 id,这是一个新插入的关键字。然后,使用最后一个元素数组 id 访问 aKeywordList
数组并添加 .Id
,这将检索该关键字的 id。然后,使用关键字id和功能SetKeywordCaption
,可以编辑关键字标题。
为了添加data-related信息,我使用函数AssociateTopicWithKeyword
需要topic id
和keyword id
。我使用函数 GetTopicList
获取主题列表。我得到主题 ID 为五个 (topic_array[(5-1)].ID
) 和第六个主题 (topic_array[(6-1)].ID
)。然后,使用函数 AssociateTopicWithKeyword
到 link 关键字到主题。
调用 helpndoc 函数:
Object.function
ex (HndKeywords.CreateKeyword;
)
var new_keyword :=HndKeywords.CreateKeyword;
var aKeywordList =HndKeywords.GetKeywordList() ;
//get keyword added last
var newlyaddedkeyword_array_id =length(aKeywordList) - 1 ;
var newlyaddedkeyword__id =aKeywordList[newlyaddedkeyword_array_id].Id;
var edit_keywordcaption =HndKeywords.SetKeywordCaption(newlyaddedkeyword__id, "Edited keyword");
var topic_array=HndTopics.GetTopicList;
var keywordtopics =HndTopicsKeywords.AssociateTopicWithKeyword(topic_array[4].ID,newlyaddedkeyword__id);//parameter : topic id and keyword id
var keywordtopics2 =HndTopicsKeywords.AssociateTopicWithKeyword(topic_array[5].ID,newlyaddedkeyword__id);