Merge-MarkdownHelp
Merge multiple markdown versions of the same cmdlet into a single markdown file.
Syntax
Merge-MarkdownHelp
[-Path] <String[]>
[-OutputPath] <String>
[-Encoding <Encoding>]
[-ExplicitApplicableIfAll]
[-Force]
[[-MergeMarker] <String>]
[<CommonParameters>]
Description
Similar modules, or different versions of the same module, often contain duplicate content.
Merge-MarkdownHelp merges the multiple markdown files into a single markdown file.
It uses the applicable:
yaml metadata field to identify what versions or tags are applicable.
It acts on two levels: for the whole cmdlet and for individual parameters.
The resulting markdown contains the applicable:
tags as well as all of the content of the original markdown files.
Duplicate content is simply ignored.
Content that is unique to each file is merged using merge markers, followed by a comma-separated list of applicable tags.
A merge marker is a string of text that acts as a marker to describe the content that was merged.
The default merge marker text consists of three exclamation points !!! however this can be changed to any relevant text using the -MergeMarker flag.
Examples
Example 1
The Test-CsPhoneBootstrap.md cmdlet is included in both Lync Server 2010 and Lync Server 2013. Much of the content is duplicated and thus we want to have a single file for the cmdlet with unique content merged from each individual file.
Merge-MarkdownHelp -Path @('Lync Server 2010\Test-CsPhoneBootstrap.md', 'Lync Server 2013\Test-CsPhoneBootstrap.md') -OutputPath lync
The resulting file will be located at lync\Test-CsPhoneBootstrap.md
.
Parameters
-Encoding
Specifies the character encoding for your external help file. Specify a System.Text.Encoding object. For more information, see about_Character_Encoding.
Type: | Encoding |
Position: | Named |
Default value: | UTF8 without BOM |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ExplicitApplicableIfAll
Always write out full list of applicable tags. By default cmdlets and parameters that are present in all variations don't get an application tag.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Indicates that this cmdlet overwrites an existing file that has the same name.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MergeMarker
String to be used as a merge text indicator. Applicable tag list would be included after the marker
Type: | String |
Position: | 3 |
Default value: | '!!! ' |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OutputPath
Specifies the path of the folder where this cmdlet creates the combined markdown help files.
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Specifies an array of paths of markdown files or folders. This cmdlet creates combined markdown help based on these files and folders.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
Inputs
String[]
Outputs
FileInfo[]