9bd2f44268
There were two issues with links in godoc: 1) They were only distinguished from ordinary text only by color, affecting those with color-vision deficiencies. 2) The same blue used for links is used by non-links, affecting everybody. This change adds a an underline to all links. Usually, it is safe to skip underlining in locations where it clear that the only contents are navigational links, such as #pkg-index. However, (2) prevented this. To work around this I used some less well supported CSS techniques: http://caniuse.com/#feat=text-decoration Less capable browsers, which are unlikely to be used by developers, may have a less than optimal experience, unfortunately. In more capable browsers, including those without full support, the experience is quite pleasant and the additional underlying does not interfere with the godoc aesthetic. For golang/go#22171 Change-Id: I5a0d817793e8aa31912ba065b4e5a63d4a3f138c Reviewed-on: https://go-review.googlesource.com/69150 Reviewed-by: Andrew Bonventre <andybons@golang.org> |
||
---|---|---|
.. | ||
analysis | ||
dl | ||
proxy | ||
redirect | ||
short | ||
static | ||
util | ||
vfs | ||
appengine.go | ||
cmdline_test.go | ||
cmdline.go | ||
corpus.go | ||
dirtrees.go | ||
format.go | ||
godoc17_test.go | ||
godoc_test.go | ||
godoc.go | ||
index_test.go | ||
index.go | ||
linkify.go | ||
meta.go | ||
page.go | ||
parser.go | ||
pres.go | ||
README.md | ||
search.go | ||
server.go | ||
snippet.go | ||
spec.go | ||
spot.go | ||
tab.go | ||
template.go |
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.