When rendering the documentation of the fake package builtin, there are two PageInfoMode flags that always get set, regardless of what the user has provided via the ?m= query parameter. They are: • NoFiltering • NoTypeAssoc This is being done to make the documention of this special package more usable and helpful (see golang/go#6645). This change modifies the way those flags are set, so that any additional flags the user may have set are no longer cleared. This makes it possible, for example, to use ?m=src to view the source, as it is for all other packages. Also elaborate more about this behavior in the comments. Fixes golang/go#30300 Updates golang/go#6645 Change-Id: I77728bd2683191b97d8f58f19092f2833dfc474c Reviewed-on: https://go-review.googlesource.com/c/162983 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
godoc
This directory contains most of the code for running a godoc server. The executable lives at golang.org/x/tools/cmd/godoc.
Development mode
In production, CSS/JS/template assets need to be compiled into the godoc binary. It can be tedious to recompile assets every time, but you can pass a flag to load CSS/JS/templates from disk every time a page loads:
godoc -templates=$GOPATH/src/golang.org/x/tools/godoc/static -http=:6060
Recompiling static assets
The files that live at static/style.css
, static/jquery.js
and so on are not
present in the final binary. They are placed into static/static.go
by running
go generate
. So to compile a change and test it in your browser:
-
Make changes to e.g.
static/style.css
. -
Run
go generate golang.org/x/tools/godoc/static
sostatic/static.go
picks up the change. -
Run
go install golang.org/x/tools/cmd/godoc
so the compiledgodoc
binary picks up the change. -
Run
godoc -http=:6060
and view your changes in the browser. You may need to disable your browser's cache to avoid reloading a stale file.