Skip to content
This repository was archived by the owner on Feb 2, 2021. It is now read-only.

Commit c671399

Browse files
Merge pull request #284 from telerik/vladimirov/improve-help
Improve help service
2 parents 115b8b2 + cf713fa commit c671399

File tree

2 files changed

+23
-4
lines changed

2 files changed

+23
-4
lines changed

docs/helpers/basic-page.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<link rel="stylesheet" type="text/css" href="@RELATIVE_PATH_TO_STYLES_CSS@"/>
88
</head>
99
<body>
10-
<img class="logo" src="@RELATIVE_PATH_TO_IMAGES@/logo.png">
10+
<a href="@RELATIVE_PATH_TO_INDEX@"><img class="logo" src="@RELATIVE_PATH_TO_IMAGES@/logo.png"></a>
1111
@HTML_COMMAND_HELP@
1212
</body>
1313
</html>

services/html-help-service.ts

+22-3
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ export class HtmlHelpService implements IHtmlHelpService {
1515
private static HTML_COMMAND_HELP_REGEX = /@HTML_COMMAND_HELP@/g;
1616
private static RELATIVE_PATH_TO_STYLES_CSS_REGEX = /@RELATIVE_PATH_TO_STYLES_CSS@/g;
1717
private static RELATIVE_PATH_TO_IMAGES_REGEX = /@RELATIVE_PATH_TO_IMAGES@/g;
18+
private static RELATIVE_PATH_TO_INDEX_REGEX = /@RELATIVE_PATH_TO_INDEX@/g;
19+
private static MARKDROWN_LINK_REGEX = /\[([\s\S]+?)\]\([\s\S]*?\)/g;
1820

1921
private pathToManPages: string;
2022
private pathToHtmlPages: string;
@@ -27,6 +29,9 @@ export class HtmlHelpService implements IHtmlHelpService {
2729
}
2830

2931
private pathToImages = this.$staticConfig.HTML_CLI_HELPERS_DIR;
32+
private get pathToIndexHtml(): string {
33+
return path.join(this.$staticConfig.HTML_PAGES_DIR, "index.html");
34+
}
3035

3136
constructor(private $logger: ILogger,
3237
private $injector: IInjector,
@@ -69,7 +74,8 @@ export class HtmlHelpService implements IHtmlHelpService {
6974
.replace(HtmlHelpService.MAN_PAGE_NAME_REGEX, mdFileName.replace(HtmlHelpService.MARKDOWN_FILE_EXTENSION, ""))
7075
.replace(HtmlHelpService.HTML_COMMAND_HELP_REGEX, htmlText)
7176
.replace(HtmlHelpService.RELATIVE_PATH_TO_STYLES_CSS_REGEX, path.relative(path.dirname(filePath), this.pathToStylesCss))
72-
.replace(HtmlHelpService.RELATIVE_PATH_TO_IMAGES_REGEX, path.relative(path.dirname(filePath), this.pathToImages));
77+
.replace(HtmlHelpService.RELATIVE_PATH_TO_IMAGES_REGEX, path.relative(path.dirname(filePath), this.pathToImages))
78+
.replace(HtmlHelpService.RELATIVE_PATH_TO_INDEX_REGEX, path.relative(path.dirname(filePath), this.pathToIndexHtml));
7379

7480
this.$fs.writeFile(filePath, outputHtml).wait();
7581
this.$logger.trace("Finished writing file '%s'.", filePath);
@@ -144,10 +150,23 @@ export class HtmlHelpService implements IHtmlHelpService {
144150
public getCommandLineHelpForCommand(commandName: string): IFuture<string> {
145151
return ((): string => {
146152
var helpText = this.readMdFileForCommand(commandName).wait();
147-
var outputText = this.$microTemplateService.parseContent(helpText, { isHtml: false });
153+
var outputText = this.$microTemplateService.parseContent(helpText, { isHtml: false })
154+
.replace(/&nbsp;/g, " ")
155+
.replace(HtmlHelpService.MARKDROWN_LINK_REGEX, "$1");
156+
148157
var opts = {
149158
unescape: true,
150-
link: chalk.red
159+
link: chalk.red,
160+
tableOptions: {
161+
chars: { 'mid': '', 'left-mid': '', 'mid-mid': '', 'right-mid': '' },
162+
style: {
163+
'padding-left': 1,
164+
'padding-right': 1,
165+
head: ['green', 'bold'],
166+
border: ['grey'],
167+
compact: false
168+
}
169+
}
151170
};
152171

153172
marked.setOptions({ renderer: new TerminalRenderer(opts) });

0 commit comments

Comments
 (0)