SYMBOL INDEX (258 symbols across 43 files) FILE: cmd/debiman-auxserver/auxserver.go function main (line 41) | func main() { FILE: cmd/debiman-idx2rwmap/rwmap.go type oncePrinter (line 46) | type oncePrinter struct method mustPrint (line 53) | func (op oncePrinter) mustPrint(key string, template redirect.IndexEnt... function printAll (line 73) | func printAll(bufw *bufio.Writer, idx redirect.Index, name string) { function main (line 201) | func main() { FILE: cmd/debiman-minisrv/minisrv.go function serveFile (line 39) | func serveFile(w http.ResponseWriter, r *http.Request) error { function main (line 81) | func main() { FILE: cmd/debiman/download.go function canSkip (line 34) | func canSkip(p pkgEntry, vPath string) bool { type contentByBinarypkg (line 49) | type contentByBinarypkg method Len (line 51) | func (p contentByBinarypkg) Len() int { return len(p) } method Swap (line 52) | func (p contentByBinarypkg) Swap(i, j int) { p[i], p[j] = p[j], p... method Less (line 53) | func (p contentByBinarypkg) Less(i, j int) bool { return p[i].binarypk... function findClosestFile (line 57) | func findClosestFile(logger *log.Logger, p pkgEntry, src, name string, c... function findFile (line 115) | func findFile(logger *log.Logger, src, name string, contentByPath map[st... function soElim (line 163) | func soElim(logger *log.Logger, src string, r io.Reader, w io.Writer, co... function writeManpage (line 190) | func writeManpage(logger *log.Logger, src, dest string, r io.Reader, m *... function createAlternativesLinks (line 210) | func createAlternativesLinks(logger *log.Logger, p pkgEntry, gv globalVi... function downloadPkg (line 268) | func downloadPkg(ar *archive.Downloader, p pkgEntry, gv globalView) error { function parallelDownload (line 496) | func parallelDownload(ar *archive.Downloader, gv globalView) error { FILE: cmd/debiman/download_test.go function TestWriteManpage (line 11) | func TestWriteManpage(t *testing.T) { FILE: cmd/debiman/getcontents.go type contentEntry (line 17) | type contentEntry struct function parseContentsEntry (line 26) | func parseContentsEntry(scanner *bufio.Scanner) ([]*contentEntry, error) { function getContents (line 61) | func getContents(ar *archive.Downloader, suite string, component string,... function getAllContents (line 179) | func getAllContents(ar *archive.Downloader, suite string, release *archi... FILE: cmd/debiman/getpackages.go type pkgEntry (line 23) | type pkgEntry struct function buildContainsMains (line 45) | func buildContainsMains(content []*contentEntry, links map[string][]link... function parsePackageParagraph (line 76) | func parsePackageParagraph(scanner *bufio.Scanner, arch string, contains... function less (line 152) | func less(a, b pkgEntry) bool { function done (line 159) | func done(exhausted []bool) bool { function getPackages (line 168) | func getPackages(ar *archive.Downloader, rd *archive.ReleaseDownloader, ... function getAllPackages (line 329) | func getAllPackages(ar *archive.Downloader, rd *archive.ReleaseDownloade... FILE: cmd/debiman/globalview.go constant mostPopularArchitecture (line 26) | mostPopularArchitecture = "amd64" type stats (line 28) | type stats struct type link (line 37) | type link struct type globalView (line 42) | type globalView struct type distributionIdentifier (line 71) | type distributionIdentifier constant fromCodename (line 74) | fromCodename = iota constant fromSuite (line 75) | fromSuite type distribution (line 78) | type distribution struct function distributions (line 86) | func distributions(codenames []string, suites []string) []distribution { function parseAlternativesFile (line 109) | func parseAlternativesFile(fn, prefix string) (map[string][]link, error) { function parseAlternativesDir (line 145) | func parseAlternativesDir(dir string) (map[string][]link, error) { function markPresent (line 179) | func markPresent(latestVersion map[string]*manpage.PkgMeta, xref map[str... function buildGlobalView (line 206) | func buildGlobalView(ar *archive.Downloader, dists []distribution, alter... FILE: cmd/debiman/main.go function logic (line 87) | func logic() error { function main (line 170) | func main() { FILE: cmd/debiman/main_test.go function TestEndToEnd (line 10) | func TestEndToEnd(t *testing.T) { FILE: cmd/debiman/mtime.go function maybeSetLinkMtime (line 8) | func maybeSetLinkMtime(destPath string, t time.Time) error { FILE: cmd/debiman/mtime_linux.go function maybeSetLinkMtime (line 14) | func maybeSetLinkMtime(destPath string, t time.Time) error { FILE: cmd/debiman/prometheus.go constant metricsTmplContent (line 9) | metricsTmplContent = ` function writeMetrics (line 46) | func writeMetrics(w io.Writer, gv globalView, start time.Time) error { FILE: cmd/debiman/render.go type breadcrumb (line 48) | type breadcrumb struct type breadcrumbs (line 53) | type breadcrumbs method ToJSON (line 55) | func (b breadcrumbs) ToJSON() template.HTML { type renderingMode (line 96) | type renderingMode constant regularFiles (line 99) | regularFiles renderingMode = iota constant symlinks (line 100) | symlinks function listManpages (line 105) | func listManpages(dir string) (map[string]*manpage.Meta, error) { function renderDirectoryIndex (line 161) | func renderDirectoryIndex(dir string, newestModTime time.Time) error { function walkManContents (line 183) | func walkManContents(ctx context.Context, renderChan chan<- renderJob, d... function walkContents (line 342) | func walkContents(ctx context.Context, renderChan chan<- renderJob, whit... function writeSourceIndex (line 451) | func writeSourceIndex(gv globalView, newestForSource map[string]time.Tim... function writeSourcesWithManpages (line 500) | func writeSourcesWithManpages(gv globalView) error { function renderAll (line 532) | func renderAll(gv globalView) error { FILE: cmd/debiman/render_test.go function TestBreadcrumbsToJSON (line 12) | func TestBreadcrumbsToJSON(t *testing.T) { function TestFragmentLinkWithColon (line 31) | func TestFragmentLinkWithColon(t *testing.T) { FILE: cmd/debiman/renderaux.go function mustParseIndexTmpl (line 18) | func mustParseIndexTmpl() *template.Template { function mustParseFaqTmpl (line 24) | func mustParseFaqTmpl() *template.Template { function mustParseAboutTmpl (line 30) | func mustParseAboutTmpl() *template.Template { type bySuiteStr (line 34) | type bySuiteStr method Len (line 36) | func (p bySuiteStr) Len() int { return len(p) } method Swap (line 37) | func (p bySuiteStr) Swap(i, j int) { p[i], p[j] = p[j], p[i] } method Less (line 38) | func (p bySuiteStr) Less(i, j int) bool { function renderAux (line 47) | func renderAux(destDir string, gv globalView) error { FILE: cmd/debiman/rendercontents.go function mustParseContentsTmpl (line 18) | func mustParseContentsTmpl() *template.Template { function renderContents (line 22) | func renderContents(dest, suite string, bins []string) error { FILE: cmd/debiman/rendermanpage.go constant iso8601Format (line 26) | iso8601Format = "2006-01-02T15:04:05Z" function init (line 60) | func init() { function mustParseManpageTmpl (line 97) | func mustParseManpageTmpl() *template.Template { function mustParseManpageerrorTmpl (line 116) | func mustParseManpageerrorTmpl() *template.Template { function mustParseManpagefooterextraTmpl (line 135) | func mustParseManpagefooterextraTmpl() *template.Template { function convertFile (line 145) | func convertFile(converter *convert.Process, src string, resolve func(re... type byPkgAndLanguage (line 167) | type byPkgAndLanguage struct method Len (line 172) | func (p byPkgAndLanguage) Len() int { return len(p.opts) } method Swap (line 173) | func (p byPkgAndLanguage) Swap(i, j int) { p.opts[i], p.opts[j] = p.op... method Less (line 174) | func (p byPkgAndLanguage) Less(i, j int) bool { function bestLanguageMatch (line 186) | func bestLanguageMatch(current *manpage.Meta, options []*manpage.Meta) *... type byLanguage (line 217) | type byLanguage method Len (line 219) | func (p byLanguage) Len() int { return len(p) } method Swap (line 220) | func (p byLanguage) Swap(i, j int) { p[i], p[j] = p[j], p[i] } method Less (line 221) | func (p byLanguage) Less(i, j int) bool { return p[i].Language < p[j].... type renderJob (line 223) | type renderJob struct type manpagePrepData (line 235) | type manpagePrepData struct type bySuite (line 253) | type bySuite method Len (line 255) | func (p bySuite) Len() int { return len(p) } method Swap (line 256) | func (p bySuite) Swap(i, j int) { p[i], p[j] = p[j], p[i] } method Less (line 257) | func (p bySuite) Less(i, j int) bool { type byMainSection (line 266) | type byMainSection method Len (line 268) | func (p byMainSection) Len() int { return len(p) } method Swap (line 269) | func (p byMainSection) Swap(i, j int) { p[i], p[j] = p[j], p[i] } method Less (line 270) | func (p byMainSection) Less(i, j int) bool { return p[i].MainSection()... type byBinarypkg (line 272) | type byBinarypkg method Len (line 274) | func (p byBinarypkg) Len() int { return len(p) } method Swap (line 275) | func (p byBinarypkg) Swap(i, j int) { p[i], p[j] = p[j], p[i] } method Less (line 276) | func (p byBinarypkg) Less(i, j int) bool { return p[i].Package.Binaryp... function rendermanpageprep (line 278) | func rendermanpageprep(converter *convert.Process, job renderJob) (*temp... type countingWriter (line 466) | type countingWriter method Write (line 468) | func (c *countingWriter) Write(p []byte) (n int, err error) { function rendermanpage (line 473) | func rendermanpage(gzipw *gzip.Writer, converter *convert.Process, job r... FILE: cmd/debiman/rendermanpage_test.go function mustParseFromServingPath (line 14) | func mustParseFromServingPath(t *testing.T, path string) *manpage.Meta { function TestBestLanguageMatch (line 22) | func TestBestLanguageMatch(t *testing.T) { function TestPrep (line 51) | func TestPrep(t *testing.T) { FILE: cmd/debiman/renderpkgindex.go function mustParsePkgindexTmpl (line 17) | func mustParsePkgindexTmpl() *template.Template { function mustParseSrcPkgindexTmpl (line 21) | func mustParseSrcPkgindexTmpl() *template.Template { function renderPkgindex (line 25) | func renderPkgindex(dest string, manpageByName map[string]*manpage.Meta)... function renderSrcPkgindex (line 65) | func renderSrcPkgindex(dest string, src string, manpageByName map[string... FILE: cmd/debiman/reuse.go function reuse (line 14) | func reuse(src string) (doc string, toc []string, err error) { FILE: cmd/debiman/reuse_test.go function TestReuse (line 15) | func TestReuse(t *testing.T) { FILE: cmd/debiman/writeindex.go function writeIndex (line 14) | func writeIndex(dest string, gv globalView) error { FILE: goembed.go function main (line 27) | func main() { function oneVar (line 56) | func oneVar(varName, filename string) error { function oneVarReader (line 65) | func oneVarReader(varName string, r io.Reader) error { FILE: internal/auxserver/auxserver.go type Server (line 20) | type Server struct method prepareSuggest (line 40) | func (s *Server) prepareSuggest() { method SwapIndex (line 56) | func (s *Server) SwapIndex(idx redirect.Index) error { method redirect (line 77) | func (s *Server) redirect(r *http.Request) (string, error) { method HandleRedirect (line 83) | func (s *Server) HandleRedirect(w http.ResponseWriter, r *http.Request) { method HandleJump (line 122) | func (s *Server) HandleJump(w http.ResponseWriter, r *http.Request) { method suggest (line 133) | func (s *Server) suggest(q string) []string { method HandleSuggest (line 156) | func (s *Server) HandleSuggest(w http.ResponseWriter, r *http.Request) { function NewServer (line 28) | func NewServer(idx redirect.Index, notFoundTmpl *template.Template, debi... FILE: internal/auxserver/auxserver_test.go function mustRedirectI3 (line 35) | func mustRedirectI3(t *testing.T, s *Server) { function TestIndexSwapSucceed (line 49) | func TestIndexSwapSucceed(t *testing.T) { function TestIndexSwapFail (line 113) | func TestIndexSwapFail(t *testing.T) { function TestSuggest (line 128) | func TestSuggest(t *testing.T) { function BenchmarkSuggest (line 149) | func BenchmarkSuggest(b *testing.B) { FILE: internal/bundled/inject.go function Inject (line 14) | func Inject(dir string) error { function Asset (line 46) | func Asset(basename string) string { function AssetsFiltered (line 50) | func AssetsFiltered(cb func(string) bool) map[string]string { FILE: internal/commontmpl/commontmpl.go constant iso8601Format (line 18) | iso8601Format = "2006-01-02T15:04:05Z" function BaseURLPath (line 33) | func BaseURLPath() string { function MustParseCommonTmpls (line 44) | func MustParseCommonTmpls() *template.Template { FILE: internal/convert/convert.go function recurse (line 23) | func recurse(n *html.Node, f func(c *html.Node) error) error { type ref (line 38) | type ref struct type byStart (line 43) | type byStart method Len (line 45) | func (p byStart) Len() int { method Less (line 48) | func (p byStart) Less(i, j int) bool { method Swap (line 51) | func (p byStart) Swap(i, j int) { function findXrefs (line 55) | func findXrefs(txt string) [][]int { function xrefMatches (line 84) | func xrefMatches(txt string, resolve func(ref string) string) []ref { function findUrls (line 101) | func findUrls(txt string) [][]int { function urlMatches (line 168) | func urlMatches(txt string) []ref { function xref (line 184) | func xref(txt string, resolve func(ref string) string) []*html.Node { function plaintext (line 242) | func plaintext(n *html.Node) string { function headTable (line 253) | func headTable(n *html.Node) bool { function replaceId (line 262) | func replaceId(n *html.Node, id string) { function stripAttr (line 275) | func stripAttr(n *html.Node, key, val string) { function postprocess (line 286) | func postprocess(resolve func(ref string) string, n *html.Node, toc *[]s... method ToHTML (line 407) | func (p *Process) ToHTML(r io.Reader, resolve func(ref string) string) (... FILE: internal/convert/convert_test.go function diff (line 17) | func diff(got, want string) ([]byte, error) { function TestToHTML (line 51) | func TestToHTML(t *testing.T) { function cmpElems (line 101) | func cmpElems(input *html.Node, got []*html.Node, want []*html.Node) err... function TestXref (line 143) | func TestXref(t *testing.T) { function TestHref (line 243) | func TestHref(t *testing.T) { function TestXrefHref (line 295) | func TestXrefHref(t *testing.T) { function formattedXrefInput (line 326) | func formattedXrefInput() *html.Node { function TestFormattedXref (line 360) | func TestFormattedXref(t *testing.T) { function BenchmarkXref (line 412) | func BenchmarkXref(b *testing.B) { function TestXrefHrefExclude (line 419) | func TestXrefHrefExclude(t *testing.T) { function TestXrefHrefExcludeDot (line 454) | func TestXrefHrefExcludeDot(t *testing.T) { FILE: internal/convert/mandoc.go type Process (line 19) | type Process struct method Kill (line 30) | func (p *Process) Kill() error { method initMandoc (line 38) | func (p *Process) initMandoc() error { method mandoc (line 89) | func (p *Process) mandoc(r io.Reader) (stdout string, stderr string, e... method mandocFork (line 106) | func (p *Process) mandocFork(r io.Reader) (stdout string, stderr strin... method mandocUnix (line 118) | func (p *Process) mandocUnix(r io.Reader) (stdout string, stderr strin... function NewProcess (line 25) | func NewProcess() (*Process, error) { FILE: internal/manpage/meta.go type PkgMeta (line 14) | type PkgMeta struct method SameBinary (line 29) | func (p *PkgMeta) SameBinary(o *PkgMeta) bool { type Meta (line 46) | type Meta struct method String (line 168) | func (m *Meta) String() string { method ServingPath (line 172) | func (m *Meta) ServingPath() string { method RawPath (line 179) | func (m *Meta) RawPath() string { method PermaLink (line 183) | func (m *Meta) PermaLink() string { method MainSection (line 187) | func (m *Meta) MainSection() string { function FromManPath (line 67) | func FromManPath(path string, p *PkgMeta) (*Meta, error) { function FromServingPath (line 126) | func FromServingPath(servingDir, path string) (*Meta, error) { FILE: internal/manpage/meta_test.go function TestManpageFromManPath (line 9) | func TestManpageFromManPath(t *testing.T) { function TestLanguageTag (line 76) | func TestLanguageTag(t *testing.T) { FILE: internal/proto/index.pb.go constant _ (line 32) | _ = proto1.ProtoPackageIsVersion2 type IndexEntry (line 34) | type IndexEntry struct method Reset (line 42) | func (m *IndexEntry) Reset() { *m = IndexEntry{} } method String (line 43) | func (m *IndexEntry) String() string { return proto1.Compac... method ProtoMessage (line 44) | func (*IndexEntry) ProtoMessage() {} method Descriptor (line 45) | func (*IndexEntry) Descriptor() ([]byte, []int) { return fileDescripto... method GetName (line 47) | func (m *IndexEntry) GetName() string { method GetSuite (line 54) | func (m *IndexEntry) GetSuite() string { method GetBinarypkg (line 61) | func (m *IndexEntry) GetBinarypkg() string { method GetSection (line 68) | func (m *IndexEntry) GetSection() string { method GetLanguage (line 75) | func (m *IndexEntry) GetLanguage() string { type Index (line 82) | type Index struct method Reset (line 89) | func (m *Index) Reset() { *m = Index{} } method String (line 90) | func (m *Index) String() string { return proto1.CompactText... method ProtoMessage (line 91) | func (*Index) ProtoMessage() {} method Descriptor (line 92) | func (*Index) Descriptor() ([]byte, []int) { return fileDescriptor0, [... method GetEntry (line 94) | func (m *Index) GetEntry() []*IndexEntry { method GetLanguage (line 101) | func (m *Index) GetLanguage() []string { method GetSuite (line 108) | func (m *Index) GetSuite() map[string]string { method GetSection (line 115) | func (m *Index) GetSection() []string { function init (line 122) | func init() { function init (line 127) | func init() { proto1.RegisterFile("index.proto", fileDescriptor0) } FILE: internal/recode/recode.go function Reader (line 52) | func Reader(r io.Reader, lang string) io.Reader { FILE: internal/recode/recode_test.go function readGzipped (line 12) | func readGzipped(fn string) ([]byte, error) { function TestRecode (line 33) | func TestRecode(t *testing.T) { FILE: internal/redirect/legacy.go method splitLegacy (line 5) | func (i *Index) splitLegacy(path string) (suite string, binarypkg string... FILE: internal/redirect/redirect.go type IndexEntry (line 18) | type IndexEntry struct method ServingPath (line 26) | func (e IndexEntry) ServingPath(suffix string) string { type Index (line 30) | type Index struct method split (line 76) | func (i Index) split(path string) (suite string, binarypkg string, nam... method Narrow (line 185) | func (i Index) Narrow(acceptLang string, template, ref IndexEntry, ent... method Redirect (line 359) | func (i Index) Redirect(r *http.Request) (string, error) { constant defaultSuite (line 38) | defaultSuite = "trixie" constant defaultLanguage (line 39) | defaultLanguage = "en" function bestLanguageMatch (line 42) | func bestLanguageMatch(t []language.Tag, options []IndexEntry) IndexEntry { type byMainSection (line 138) | type byMainSection method Len (line 140) | func (p byMainSection) Len() int { return len(p) } method Swap (line 141) | func (p byMainSection) Swap(i, j int) { p[i], p[j] = p[j], p[i] } method Less (line 142) | func (p byMainSection) Less(i, j int) bool { function searchOrder (line 158) | func searchOrder(sections []string) map[string]int { type bySection (line 166) | type bySection method Len (line 168) | func (p bySection) Len() int { return len(p) } method Swap (line 169) | func (p bySection) Swap(i, j int) { p[i], p[j] = p[j], p[i] } method Less (line 170) | func (p bySection) Less(i, j int) bool { type NotFoundError (line 350) | type NotFoundError struct method Error (line 355) | func (e *NotFoundError) Error() string { function IndexFromProto (line 444) | func IndexFromProto(path string) (Index, error) { FILE: internal/redirect/redirect_test.go function TestNotIndexed (line 217) | func TestNotIndexed(t *testing.T) { function TestNotFoundWrongSuite (line 227) | func TestNotFoundWrongSuite(t *testing.T) { function TestNotFoundFullySpecified (line 254) | func TestNotFoundFullySpecified(t *testing.T) { function TestUnderspecified (line 276) | func TestUnderspecified(t *testing.T) { function TestLegacyManpagesDebianOrgRedirects (line 408) | func TestLegacyManpagesDebianOrgRedirects(t *testing.T) { function TestManFreeBSDRedirects (line 477) | func TestManFreeBSDRedirects(t *testing.T) { function TestAcceptLanguage (line 508) | func TestAcceptLanguage(t *testing.T) { function TestFormExtra (line 559) | func TestFormExtra(t *testing.T) { function TestRawManpageRedirect (line 598) | func TestRawManpageRedirect(t *testing.T) { function TestBlankRedirect (line 629) | func TestBlankRedirect(t *testing.T) { function TestCronSection (line 662) | func TestCronSection(t *testing.T) { FILE: internal/sitemap/sitemap.go type url (line 11) | type url struct type sitemap (line 17) | type sitemap struct constant sitemapDateFormat (line 23) | sitemapDateFormat = "2006-01-02" function WriteTo (line 25) | func WriteTo(w io.Writer, baseUrl string, contents map[string]time.Time)... function WriteIndexTo (line 63) | func WriteIndexTo(w io.Writer, baseUrl string, contents map[string]time.... FILE: internal/sitemap/sitemap_test.go function TestSitemap (line 9) | func TestSitemap(t *testing.T) { function TestSitemapIndex (line 25) | func TestSitemapIndex(t *testing.T) { FILE: internal/tag/tag.go function FromLocale (line 25) | func FromLocale(l string) (language.Tag, error) { FILE: internal/write/atomically.go function tempDir (line 12) | func tempDir(dest string) string { function Atomically (line 23) | func Atomically(dest string, compress bool, write func(w io.Writer) erro... function AtomicallyWithGz (line 73) | func AtomicallyWithGz(dest string, gzipw *gzip.Writer, write func(w io.W...