Command line
To use F# Formatting tools via the command line, you can use the fsdocs dotnet tool.
|
The build command
This command processes a docs directory and generates API docs for projects in the solution according to the
rules of API doc generation. The input accepted is described in content.
|
The command line options accepted are:
Command Line Option |
Description |
|---|---|
|
Input directory of content (default: |
|
Project files to build API docs for outputs, defaults to all packable projects |
|
Output Directory (default 'output' for 'build' and 'tmp/watch' for 'watch') |
|
Disable generation of the 'Other' category in the navigation bar for uncategorized docs |
|
Disable generation of API docs |
|
Disable project cracking |
|
Evaluate F# fragments in scripts |
|
Save images referenced in docs |
|
Don't add line numbers, the default is to add line numbers. |
|
Additional substitution parameters for templates |
|
The tool will also generate documentation for non-public members |
|
Do not copy default content styles, javascript or use default templates |
|
Clean the output directory |
|
Display this help screen |
|
Display version information |
|
Provide properties to dotnet msbuild, e.g. --properties Configuration=Release Version=3.4 |
|
Additional arguments passed down as |
|
Fail if docs are missing or can't be generated |
The following command line options are also accepted but it is instead recommended you use settings in your .fsproj project files:
Command Line Option |
Description |
|---|---|
|
Source folder at time of component build ( |
|
Source repository for github links ( |
|
Assume comments in F# code are markdown ( |
The command will report on any .fsproj files that it finds, telling you if it decides to skip a particular file and why.
For example, a project will be skipped if:
- The project name contains ".Tests" or "test" (because it looks like a test project)
-
The project does not contain
<GenerateDocumentationFile>true</GenerateDocumentationFile>
The watch command
This command does the same as fsdocs build but in "watch" mode, waiting for changes. Only the files in the input
directory (e.g. docs) are watched. A browser will be launched automatically (unless --nolaunch is specified).
You will need to ensure that the input directory exists, and contains at least index.md, otherwise the browser will
report an error (e.g. "Problem loading...", "Connection was reset").
|
Restarting may be necesssary on changes to project files. The same parameters are accepted, plus these:
Command Line Option |
Description |
|---|---|
|
Do not serve content when watching. |
|
Do not launch a browser window. |
|
URL extension to launch http://localhost: |
|
Port to serve content for http://localhost serving. |
Searchable docs
When using the command-line tool a Fuse search index is automatically generated in index.json.
A search box is included in the default template via an HTML Dialog element.
To add search to your own _template.html:
- include an HTML element with id
search-btn - include a
dialogelement - include
fsdocs-search.jsscript
|
FSharp.Formatting