diff --git a/LUFA/StudioIntegration/HV1/lufa_docbook_transform.xsl b/LUFA/StudioIntegration/HV1/lufa_docbook_transform.xsl
new file mode 100644
index 0000000000..0da97ca237
--- /dev/null
+++ b/LUFA/StudioIntegration/HV1/lufa_docbook_transform.xsl
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+ LUFA Library
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ images/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/LUFA/StudioIntegration/HV1/transform_base.xsl b/LUFA/StudioIntegration/HV1/transform_base.xsl
new file mode 100644
index 0000000000..03b7901b61
--- /dev/null
+++ b/LUFA/StudioIntegration/HV1/transform_base.xsl
@@ -0,0 +1,737 @@
+
+
+
+
+
+
+
+
+
+ Variable and Type Definitions
+
+
+
+
+
+
+
+
+
+ Structure Definitions
+
+
+
+
+
+
+
+
+
+ Macro Definitions
+
+
+
+
+
+
+
+
+
+ Function Definitions
+
+
+
+
+
+
+
+
+
+ Enumeration Definitions
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Struct
+
+
+ Union
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Type
+ Name
+ Description
+
+
+
+
+
+
+
+
+
+
+
+ []
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Function ()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Enum
+
+
+
+
+
+
+
+ Enum Value
+ Description
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Macro
+
+
+ #define
+
+
+ (
+
+
+ ,
+
+
+
+ )
+
+
+
+
+
+ \
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Type
+
+
+
+ Variable
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Warning
+
+
+
+
+
+
+ Returns
+
+
+
+
+
+
+ Precondition
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ See also
+
+
+
+
+
+
+
+
+
+
+
+ todo
+ To Do
+
+
+
+ tip
+ Tip
+
+
+
+ info
+ Info
+
+
+
+ result
+ Result
+
+
+
+ execute
+ Execute
+
+
+
+ warning
+ Warning
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Parameters
+
+
+
+ Data Direction
+ Parameter Name
+ Description
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Return Values
+
+
+
+ Return Value
+ Description
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ?
+
+
+ []
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ®
+
+
+
+ ©
+
+
+
+ ™
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ html/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ .svg
+
+
+
+
+
+
+
+
+
+
+
+ ,
+
+
+
+
+
+
diff --git a/LUFA/StudioIntegration/makefile b/LUFA/StudioIntegration/makefile
index 5b50a2221c..daaa2dccd3 100644
--- a/LUFA/StudioIntegration/makefile
+++ b/LUFA/StudioIntegration/makefile
@@ -40,6 +40,10 @@ VSIX_ASSETS := $(LUFA_ROOT)/DoxygenPages/Images/LUFA_thumb.png \
Blob/Atmel.Studio.Services.Interfaces.dll \
Blob/LUFA.dll \
Blob/LUFA.pkgdef
+MSHELP_GEN_PARAMS := --stringparam generate.toc "book toc" \
+ --stringparam chunk.quietly "1" \
+ --stringparam chunk.section.depth "2" \
+ --stringparam chunk.first.sections "1"
all: generate_xml check_filenames generate_vsix
@@ -79,11 +83,11 @@ $(MSHELP_OUTPUT_XML): $(DOXYGEN_COMBINED_XML)
@echo Converting Doxygen XML to Docbook...
@-mkdir mshelp 2> /dev/null
@xsltproc HV1/lufa_docbook_transform.xsl $(DOXYGEN_COMBINED_XML) > mshelp/lufa_docbook.xml
- @cd mshelp && xsltproc ../Docbook/mshelp/docbook.xsl lufa_docbook.xml
+ @cd mshelp && xsltproc $(MSHELP_GEN_PARAMS) ../Docbook/mshelp/docbook.xsl lufa_docbook.xml
@echo Copying help assets...
@-mkdir mshelp/images 2> /dev/null
- @cp -r $(LUFA_ROOT)/DoxygenPages/Images/* mshelp/images
+ @cp `find $(LUFA_ROOT)/DoxygenPages/Images -type f` mshelp/images
@echo Archiving help content...
@cd mshelp && zip ../$(MSHELP_OUTPUT_XML) -q -0 -r *.html images