escape the readme blob in the tree view too

change got_open_blob_for_output to not look at the querystring the implicit dependency on the various variables inside the querystring makes reusing the code in got_operations.c a bit harder. Accessing a blob in the tree view for instance requires a few workaround. Instead, just take the folder^W directory, file and commit id as arguments, so they can be easily changed without hacks in the proper places. While here, support passing a NULL commit to mean "HEAD".

require a commit id

render the READMEs in the tree view

use a detail for to show/hide the briefs' body

remove gotwebd todo entries that are done

gotwebd: add actions to the blame view

gotwebd: make blame view work in text browsers While here pad line numbers with spaces instead of zeroes to match the blob view.

gotwebd: add actions in the diff view too

gotwebd: add patch action to serve diffs in plain text

gotwebd: add links for actions in the blob page positive feedback from Kyle Ackerman ok/tweak tracey@

refactor gotweb_load_got_path; no functional change ok tracey@

gotwebd: add a dark mode Diff from Kyle Ackerman. tracey@ and I likes it.

gotwebd: introduce .page_header_wrapper to avoid style repetitions while here clean up some *_header id not used / not needed.

gotwebd: adjust blob line number for text browsers