-When the option 'scan-path' is used to auto-discover git repositories, cgit
-will try to parse the file 'cgitrc' within any found repository. Such a repo-
-specific config file may contain any of the repo-specific options described
-above, except 'repo.url' and 'repo.path'. Also, in a repo-specific config
-file, the 'repo.' prefix is dropped from the config option names.
+When the option "scan-path" is used to auto-discover git repositories, cgit
+will try to parse the file "cgitrc" within any found repository. Such a
+repo-specific config file may contain any of the repo-specific options
+described above, except "repo.url" and "repo.path". Additionally, the "filter"
+options are only acknowledged in repo-specific config files when
+"enable-filter-overrides" is set to "1".
+
+Note: the "repo." prefix is dropped from the option names in repo-specific
+config files, e.g. "repo.desc" becomes "desc".
+
+
+FILTER API
+----------
+- about filter::
+ This filter is given no arguments.
+ The about text that is to be filtered is available on standard input and the
+ filtered text is expected on standard output.
+- commit filter::
+ This filter is given no arguments.
+ The commit message text that is to be filtered is available on standard input
+ and the filtered text is expected on standard output.
+- source filter::
+ This filter is given a single parameter: the filename of the source file to
+ filter. The filter can use the filename to determine (for example) the syntax
+ highlighting mode.
+ The contents of the source file that is to be filtered is available on
+ standard input and the filtered contents is expected on standard output.
+
+Also, all filters are handed the following environment variables:
+- CGIT_REPO_URL ( = repo.url setting )
+- CGIT_REPO_NAME ( = repo.name setting )
+- CGIT_REPO_PATH ( = repo.path setting )
+- CGIT_REPO_OWNER ( = repo.owner setting )
+- CGIT_REPO_DEFBRANCH ( = repo.defbranch setting )
+- CGIT_REPO_SECTION ( = section setting )
+- CGIT_REPO_CLONE_URL ( = repo.clone-url setting )
+
+If a setting is not defined for a repository and the corresponding global
+setting is also not defined (if applicable), then the corresponding
+environment variable will be an empty string.
+
+Note that under normal circumstance all these environment variables are
+defined. If however the total size of the defined settings exceed the
+allocated buffer within cgit then only the environment variables that fit
+in the allocated buffer are handed to the filter.