Wiki page
[GitHub] by
mario
2015-02-12 12:46:40.
D 2015-02-12T12:46:40.871
L GitHub
N text/x-markdown
P a3ef45346e263bbc947e789f29e465af2165f908
U mario
W 2461
<h3>GitHub style template</h3>
For conveniencing new users, there's now a theme that similates [GitHub](https://github.com/‎) to some extend.
<img src=doc/trunk/screenshots/github.png align=right>
It provides following features:
* Now uses the Fossil built-in [search function](wiki/search+function).
* The avowed file box on the index and wiki pages.
* Link subdirectories to `/wiki/$dirname` per default, so they're displayed in unison.
* File links directly go to `/artifact` views.<br><br>
* An auto-collapsing right side function bar; using Unicode glyphs instead of icons.
* The clickable language-bar is similar to what GitHub shows, uses [fx_stats](wiki/fx_stats) as source.
* Social media links within the <kbd>★ Star</kbd> button. The counts are fetched over a remote image API.
* Most gimmicks implemented as [TH1](wiki/th1x) functions.
<h4> Browser support </h4>
The styling works well on following browser engines:
* Gecko (Firefox): ☑
* WebKit (Chrome): ☑
* Presto (Opera): ☑
* Trident (MSIE): who cares?
<h4> File box implementation </h4>
`ui::recent_files` outputs table rows according to the passed directory base. It groups directories and files, and cuts out their basenames.
Directories now always link to `/wiki?name=$dirname` pages. Thus it gets displayed alongside an existing Wiki page on a directory name. - That's backwards to how GitHub works. There the filebox is always there, and a README.md [or whatever] displayed alongside. (The old behaviour was to link to fossils tree/ view for non-existent Wiki pages. But now that the search has been separated from the wiki/ view; that's no longer necessary.)
<h4> Stats </h4>
Some repository properties are queried live (ui::stats), while a few (ui::lang_stats) need to be prepared by [fossil-stats-table.php](wiki/fossil-stats-table.php) (e.g. the social medial backlink count).
<h4> CSS </h4>
The stylesheet varies upon a simple `class=` attribute in the `<body>` tag. It's set to `page-index` or `page-wiki`, `page-tree`, `page-timeline` etc. according to the current output.
Thus the `.optional` class for instance can vary the width the of the main pane. It defaults to `82%`, but expands to `91%` (and the sidebar just `6%`) on non-index pages. The sidebar link names disappear through `.optional` and the `.page-TYPE` combination as well.
Z ae04bc5775b2acedc4b759d25a3543f2