Skip to content

Commit f3197bc

Browse files
authored
Merge pull request #1281 from jducoeur/scaladoc-group-improvements
In the Scaladoc Overview, flesh out the @group tags
2 parents c3f1423 + ef95454 commit f3197bc

File tree

1 file changed

+30
-3
lines changed

1 file changed

+30
-3
lines changed

_overviews/scaladoc/for-library-authors.md

+30-3
Original file line numberDiff line numberDiff line change
@@ -94,12 +94,39 @@ include:
9494

9595

9696
### Member grouping tags
97+
98+
These tags are well-suited to larger types or packages, with many members.
99+
They allow you to organize the Scaladoc page into distinct sections, with
100+
each one shown separately, in the order that you choose.
101+
102+
These tags are *not* enabled by default! You must pass the `-groups`
103+
flag to Scaladoc in order to turn them on. Typically the sbt for this
104+
will look something like:
105+
```
106+
scalacOptions in (Compile, doc) ++= Seq(
107+
"-groups"
108+
)
109+
```
110+
111+
Each section should have a single-word identifier that is used in all of
112+
these tags, shown as `<group>` below. By default, that identifier is
113+
shown as the title of that documentation section, but you can use
114+
`@groupname` to provide a longer title.
115+
116+
Typically, you should put `@groupprio` (and optionally `@groupname` and
117+
`@groupdesc`) in the Scaladoc for the package/trait/class/object itself,
118+
describing what all the groups are, and their order. Then put `@group`
119+
in the Scaladoc for each member, saying which group it is in.
120+
121+
Members that do not have a `@group` tag will be listed as "Ungrouped" in
122+
the resulting documentation.
123+
97124
- `@group <group>` - mark the entity as a member of the `<group>` group.
98125
- `@groupname <group> <name>` - provide an optional name for the group. `<name>` is displayed as the group header
99-
- before the group description.
126+
before the group description.
100127
- `@groupdesc <group> <description>` - add optional descriptive text to display under the group name. Supports multiline
101-
formatted text.
102-
- `@groupprio` <priority> - control the order of the group on the page. Defaults to 0. Ungrouped elements have
128+
formatted text.
129+
- `@groupprio <group> <priority>` - control the order of the group on the page. Defaults to 0. Ungrouped elements have
103130
an implicit priority of 1000. Use a value between 0 and 999 to set a relative position to other groups. Low values
104131
will appear before high values.
105132

0 commit comments

Comments
 (0)