Automatically add clickable links to the Unity API on a DocFX documentation
Generates references of the Unity API to use with DocFX (the cross reference maps). DocFX will set clickable all the references of the Unity API on your documentation.
-
Make sure you have setup a DocFX documentation. You can follow the DocFxForUnity instructions otherwise.
-
Add this line to your
docfx.json:-
If you want to reference the latest stable version of Unity:
"build": { "xref": [ + "https://normanderwan.github.io/UnityXrefMaps/xrefmap.yml" ], } -
If you want to reference a specific version of Unity:
"build": { "xref": [ + "https://normanderwan.github.io/UnityXrefMaps/<version>/xrefmap.yml" ], }where
<version>is a Unity version in the form ofYYYY.x(e.g. 2018.4, 2019.3, 2020.1). -
If you prefer relying in a offline file:
"build": { "xref": [ + "UnityXrefMap.yml" ], }where
UnityXrefMap.ymlhas been downloaded from one of the link above and placed next to yourdocfx.json.
-
-
Generate your documentation!
Install tool with: dotnet tool install --global UnityXrefMaps.
You need to provide at least:
- A
docfx.jsonfile. You can base it on the docfx.json in the repository. - The version of the Unity editor.
- Trim
UnityEngineandUnityEditorbecause Unity omits these namespaces in its documentation links.
Example:
unityxrefmaps \
--repositoryPath xref/Unity/Repository \
--repositoryTags 6000.0.1f1 \
--trimNamespaces UnityEditor \
--trimNamespaces UnityEngineYou need to provide at least:
- A
docfx.jsonfile. You can base it on the docfx.json in the repository. - The package version.
- The API URL, which will be different for each package.
Example:
unityxrefmaps \
--repositoryUrl "https://github.com/needle-mirror/com.unity.inputsystem.git" \
--repositoryTags '1.0.0' \
--apiUrl "https://docs.unity3d.com/Packages/com.unity.inputsystem@{0}/api/"Providing an xrefmap.yml file will check each href element to see if it is a valid URL.
Example:
unityXrefMaps test \
--xrefPath xrefmap.yml-
To run this program:
-
For any question or comment, please open a new issue.
-
If you'd like to contribute, please fork the repository and use a feature branch. Pull requests are warmly welcome!
This repository is not sponsored by or affiliated with Unity Technologies or its affiliates. “Unity” is a trademark or registered trademark of Unity Technologies or its affiliates in the U.S. and elsewhere.