blob: 4f9bd873ba1678ff649ea6594dc2db82d4af9a31 [file] [log] [blame]
<configuration>
<dduetools>
<builder>
<components>
<!-- Create skeleton document -->
<component type="Microsoft.Ddue.Tools.CopyFromFileComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<data file="{@PresentationPath}transforms\skeleton.xml" />
<copy source="/*" target="/" />
</component>
<!-- Copy in reflection data -->
<component type="Microsoft.Ddue.Tools.CopyFromIndexComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<index name="reflection" value="/reflection/apis/api" key="@id" cache="10">
<data base="{@SandcastlePath}Data\Reflection" recurse="true" files="*.xml" />
<data files="reflection.xml" />
</index>
<copy name="reflection" source="*" target="/document/reference" />
</component>
<!-- Copy in container data -->
<component type="Microsoft.Ddue.Tools.CopyFromIndexComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<copy name="reflection" key="string(/document/reference/containers/namespace/@api)" source="*[not(local-name()='elements')]" target="/document/reference/containers/namespace" />
</component>
<component type="Microsoft.Ddue.Tools.ForEachComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<variable expression="/document/reference/containers//type/@api" />
<components>
<component type="Microsoft.Ddue.Tools.CopyFromIndexComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<copy name="reflection" source="apidata|typedata|templates|attributes" target="/document/reference/containers//type[@api=$key]" />
</component>
</components>
</component>
<!-- Generate syntax -->
<component type="Microsoft.Ddue.Tools.IfThenComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<if condition="not(starts-with($key,'Overload:') or starts-with($key,'R:'))" />
<then>
<component type="Microsoft.Ddue.Tools.SyntaxComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<syntax input="/document/reference" output="/document/syntax" />
<generators>
{@SyntaxFilters}
</generators>
</component>
</then>
</component>
<!-- Copy in comments -->
<component type="Microsoft.Ddue.Tools.CopyFromIndexComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<index name="comments" value="/doc/members/member" key="@name" cache="100">
{@FrameworkCommentList}
{@CommentFileList}
</index>
<copy name="comments" source="*" target="/document/comments" />
</component>
<!-- Copy in reflection data and comments for members -->
<component type="Microsoft.Ddue.Tools.ForEachComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<variable expression="/document/reference/elements/element/@api" />
<components>
<component type="Microsoft.Ddue.Tools.IfThenComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<if condition="not(/document/reference/elements//element[@api=$key]/*)" />
<then>
<component type="Microsoft.Ddue.Tools.CopyFromIndexComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<copy name="reflection" source="*[not(local-name()='elements')]" target="/document/reference/elements//element[@api=$key]" />
</component>
</then>
</component>
<component type="Microsoft.Ddue.Tools.CopyFromIndexComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<copy name="comments" source="summary|overloads" target="/document/reference/elements/element[@api=$key]" />
</component>
</components>
</component>
<!-- Copy in comments for the member's declaring type. -->
<component type="Microsoft.Ddue.Tools.CopyFromIndexComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<copy name="comments" key="string(/document/reference/containers/type/@api)" source="summary" target="/document/reference/containers" />
</component>
<!-- Show missing documentation component configuration. This must
appear before the TransformComponent. -->
<component type="SandcastleBuilder.Components.ShowMissingComponent"
assembly="{@SHFBFolder}SandcastleBuilder.Components.dll"
id="Show Missing Documentation Component">
<!-- All elements are optional. -->
<!-- Auto-document constructors (true by default) -->
<AutoDocumentConstructors value="{@AutoDocumentConstructors}" />
<!-- Auto-document dispose methods (true by default) -->
<AutoDocumentDisposeMethods value="{@AutoDocumentDisposeMethods}" />
<!-- Show missing param tags (true by default) -->
<ShowMissingParams value="{@ShowMissingParams}" />
<!-- Show missing typeparam tags (true by default) -->
<ShowMissingTypeParams value="{@ShowMissingTypeParams}" />
<!-- Show missing remarks tags (false by default) -->
<ShowMissingRemarks value="{@ShowMissingRemarks}" />
<!-- Show missing returns tags (true by default) -->
<ShowMissingReturns value="{@ShowMissingReturns}" />
<!-- Show missing summary tags (true by default) -->
<ShowMissingSummaries value="{@ShowMissingSummaries}" />
<!-- Show missing value tags (false by default) -->
<ShowMissingValues value="{@ShowMissingValues}" />
<!-- Show missing namespace comments (true by default) -->
<ShowMissingNamespaces value="{@ShowMissingNamespaces}" />
<!-- Show missing include targets (true by default) -->
<ShowMissingIncludeTargets value="{@ShowMissingIncludeTargets}" />
<!-- Shared content file containing the localized messages
(optional) -->
<contentFile filename="SharedBuilderContent.xml" />
</component>
<!-- Version information component configuration. This must appear
before the TransformComponent. See also: PostTransformComponent -->
<component type="SandcastleBuilder.Components.VersionInfoComponent"
assembly="{@SHFBFolder}SandcastleBuilder.Components.dll"
id="Version Information Component">
<!-- Reflection information file for version info (required) -->
<reflectionFile filename="reflection.xml" />
</component>
<!-- Code block component configuration. This must appear before the
TransformComponent. See also: PostTransformComponent. -->
<component type="SandcastleBuilder.Components.CodeBlockComponent"
assembly="{@SHFBFolder}SandcastleBuilder.Components.dll"
id="Code Block Component">
<!-- Base path for relative filenames in source attributes (optional) -->
<basePath value="{@HtmlEncProjectFolder}" />
<!-- Connect to language filter (optional). If omitted,
language filtering is enabled by default. -->
<languageFilter value="true" />
<!-- Allow missing source files (Optional). If omitted,
it will generate errors if referenced source files
are missing. -->
<allowMissingSource value="false" />
<!-- Remove region markers from imported code blocks. If omitted,
region markers in imported code blocks are left alone. -->
<removeRegionMarkers value="false" />
<!-- Code colorizer options (required).
Attributes:
Language syntax configuration file (required)
XSLT style file (required)
"Copy" image file URL (required)
Default language (optional)
Enable line numbering (optional)
Enable outlining (optional)
Keep XML comment "see" tags within the code (optional)
Tab size override (optional, 0 = Use syntax file setting)
Use language name as default title (optional) -->
<colorizer syntaxFile="{@SHFBFolder}Colorizer\highlight.xml"
styleFile="{@SHFBFolder}Colorizer\highlight.xsl"
copyImageUrl="../icons/CopyCode.gif"
language="cs" numberLines="false" outlining="false"
keepSeeTags="false" tabSize="0" defaultTitle="true" />
</component>
<!-- transform -->
<component type="Microsoft.Ddue.Tools.TransformComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<transform file="{@PresentationPath}transforms\main_sandcastle.xsl">
<argument key="metadata" value="true" />
<argument key="languages">
{@SyntaxFiltersDropDown}
</argument>
</transform>
</component>
<!-- Post-transform component configuration. This must appear after the
TransformComponent. See also: CodeBlockComponent. -->
<component type="SandcastleBuilder.Components.PostTransformComponent"
assembly="{@SHFBFolder}SandcastleBuilder.Components.dll"
id="Post-transform Component">
<!-- Code colorizer files (required).
Attributes:
Stylesheet file (required)
Script file (required)
"Copy" image file (required) -->
<colorizer stylesheet="{@SHFBFolder}Colorizer\highlight.css"
scriptFile="{@SHFBFolder}Colorizer\highlight.js"
copyImage="{@SHFBFolder}Colorizer\CopyCode.gif" />
<!-- Base output paths for the files (required). These should match
the parent folder of the output path of the HTML files (see
each of the SaveComponent instances below). -->
<outputPaths>
{@HelpFormatOutputPaths}
</outputPaths>
<!-- Logo image file (optional). Filename is required. The height,
width, altText, placement, and alignment attributes are
optional. -->
<logoFile filename="" height="0" width="0" altText=""
placement="left" alignment="left" />
</component>
<!-- Multi-format output component. This must wrap the component set
unique to each output file format. -->
<component type="SandcastleBuilder.Components.MultiFormatOutputComponent"
assembly="{@SHFBFolder}SandcastleBuilder.Components.dll"
id="Multi-format Output Component">
<!-- This defines the formats to generate -->
<build formats="{@HelpFileFormat}" />
<!-- This defines the set of components for HTML Help 1 files -->
<helpOutput format="HtmlHelp1">
<!-- Resolve shared content -->
<component type="Microsoft.Ddue.Tools.SharedContentComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<content file="{@PresentationPath}content\{@LanguageFolder}shared_content.xml" />
<content file="{@PresentationPath}content\{@LanguageFolder}reference_content.xml" />
<content file="{@SandcastlePath}Presentation\Shared\content\{@LanguageFolder}syntax_content.xml" />
<!-- These must be last in order to override other elements! -->
<content file="SharedBuilderContent.xml" />
<content file="PresentationStyleBuilderContent.xml" />
{@ResourceItemFiles}
</component>
<!-- Resolve reference links -->
<component type="Microsoft.Ddue.Tools.ResolveReferenceLinksComponent2"
assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll"
locale="{@Locale}" linkTarget="{@SdkLinkTarget}">
<targets base="{@SandcastlePath}Data\Reflection" recurse="true" files="*.xml" type="{@HtmlSdkLinkType}" />
<targets files="reflection.xml" type="Local" />
</component>
<!-- Save the result -->
<component type="Microsoft.Ddue.Tools.SaveComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<save base="Output\HtmlHelp1\html" path="concat(/html/head/meta[@name='file']/@content,'.htm')" indent="{@IndentHtml}"
omit-xml-declaration="true" add-xhtml-namespace="false" />
</component>
</helpOutput>
<!-- This defines the set of components for MS Help 2 files -->
<helpOutput format="MSHelp2">
<!-- Resolve shared content -->
<component type="Microsoft.Ddue.Tools.SharedContentComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<content file="{@PresentationPath}content\{@LanguageFolder}shared_content.xml" />
<content file="{@PresentationPath}content\{@LanguageFolder}reference_content.xml" />
<content file="{@SandcastlePath}Presentation\Shared\content\{@LanguageFolder}syntax_content.xml" />
<!-- These must be last in order to override other elements! -->
<content file="SharedBuilderContent.xml" />
<content file="PresentationStyleBuilderContent.xml" />
{@ResourceItemFiles}
</component>
<!-- Insert additional MS Help 2 attributes -->
<component id="MS Help 2 Attributes"
type="SandcastleBuilder.Components.MSHelpAttrComponent"
assembly="{@SHFBFolder}SandcastleBuilder.Components.dll">
{@HelpAttributes}
</component>
<!-- Resolve reference links -->
<component type="Microsoft.Ddue.Tools.ResolveReferenceLinksComponent2"
assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll"
locale="{@Locale}" linkTarget="{@SdkLinkTarget}">
<targets base="{@SandcastlePath}Data\Reflection" recurse="true" files="*.xml" type="{@MSHelp2SdkLinkType}" />
<targets files="reflection.xml" type="Index" />
</component>
<!-- Save the result -->
<component type="Microsoft.Ddue.Tools.SaveComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<save base="Output\MSHelp2\html" path="concat(/html/head/meta[@name='file']/@content,'.htm')" indent="{@IndentHtml}"
omit-xml-declaration="true" add-xhtml-namespace="false" />
</component>
</helpOutput>
<!-- This defines the set of components for MS Help Viewer files -->
<helpOutput format="MSHelpViewer">
<!-- Resolve shared content -->
<component type="Microsoft.Ddue.Tools.SharedContentComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<content file="{@PresentationPath}content\{@LanguageFolder}shared_content_mshc.xml" />
<content file="{@PresentationPath}content\{@LanguageFolder}reference_content.xml" />
<content file="{@SandcastlePath}Presentation\Shared\content\{@LanguageFolder}syntax_content.xml" />
<!-- These must be last in order to override other elements! -->
<content file="SharedBuilderContent.xml" />
<content file="PresentationStyleBuilderContent.xml" />
{@ResourceItemFiles}
</component>
<!-- Resolve reference links -->
<component type="Microsoft.Ddue.Tools.ResolveReferenceLinksComponent2"
assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll"
locale="{@Locale}" linkTarget="{@SdkLinkTarget}">
<targets base="{@SandcastlePath}Data\Reflection" recurse="true" files="*.xml" type="{@MSHelpViewerSdkLinkType}" />
<targets files="reflection.xml" type="Id" />
</component>
<!-- Add MS Help Viewer metadata -->
<component type="SandcastleBuilder.Components.MSHCComponent"
assembly="{@SHFBFolder}SandcastleBuilder.Components.dll">
<data self-branded="{@SelfBranded}" topic-version="{@TopicVersion}" toc-file="toc.xml"
toc-parent="{@ApiTocParentId}" toc-parent-version="{@TocParentVersion}" locale="{@Locale}" />
</component>
<!-- Save the result -->
<component type="Microsoft.Ddue.Tools.SaveComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<save base="Output\MSHelpViewer\html" path="concat(/html/head/meta[@name='file']/@content,'.htm')" indent="{@IndentHtml}"
omit-xml-declaration="false" add-xhtml-namespace="true" />
</component>
</helpOutput>
<!-- This defines the set of components for websites -->
<helpOutput format="Website">
<!-- Resolve shared content -->
<component type="Microsoft.Ddue.Tools.SharedContentComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<content file="{@PresentationPath}content\{@LanguageFolder}shared_content.xml" />
<content file="{@PresentationPath}content\{@LanguageFolder}reference_content.xml" />
<content file="{@SandcastlePath}Presentation\Shared\content\{@LanguageFolder}syntax_content.xml" />
<!-- These must be last in order to override other elements! -->
<content file="SharedBuilderContent.xml" />
<content file="PresentationStyleBuilderContent.xml" />
{@ResourceItemFiles}
</component>
<!-- Resolve reference links -->
<component type="Microsoft.Ddue.Tools.ResolveReferenceLinksComponent2"
assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll"
locale="{@Locale}" linkTarget="{@SdkLinkTarget}">
<targets base="{@SandcastlePath}Data\Reflection" recurse="true" files="*.xml" type="{@WebsiteSdkLinkType}" />
<targets files="reflection.xml" type="Local" />
</component>
<!-- Save the result -->
<component type="Microsoft.Ddue.Tools.SaveComponent" assembly="{@SandcastlePath}ProductionTools\BuildComponents.dll">
<save base="Output\Website\html" path="concat(/html/head/meta[@name='file']/@content,'.htm')" indent="{@IndentHtml}"
omit-xml-declaration="true" add-xhtml-namespace="false" />
</component>
</helpOutput>
</component>
</components>
</builder>
</dduetools>
</configuration>