tree: ed7472e7a5e16783b420306bc74af4f801228f0d [path history] [tgz]
  1. analysis/
  2. dl/
  3. env/
  4. proxy/
  5. redirect/
  6. short/
  7. static/
  8. util/
  9. vfs/
  10. cmdline.go
  11. cmdline_test.go
  12. corpus.go
  13. dirtrees.go
  14. dirtrees_test.go
  15. format.go
  16. godoc.go
  17. godoc17_test.go
  18. godoc_test.go
  19. index.go
  20. index_test.go
  21. linkify.go
  22. meta.go
  23. page.go
  24. parser.go
  25. pres.go
  26. README.md
  27. search.go
  28. server.go
  29. server_test.go
  30. snippet.go
  31. spec.go
  32. spec_test.go
  33. spot.go
  34. tab.go
  35. template.go
  36. versions.go
  37. versions_test.go
godoc/README.md

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:

  1. Make changes to e.g. static/style.css.

  2. Run go generate golang.org/x/tools/godoc/static so static/static.go picks up the change.

  3. Run go install golang.org/x/tools/cmd/godoc so the compiled godoc binary picks up the change.

  4. 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.