[heavy duty printer cart]

[board and easel]

[teak computer desk]

[workstations computer]

[vesa wall]

[cabinet file rotating]

[office efficiency]

[computer dual monitor panel]

[acrylic d model podium]

[vesa plates]

[multiple flat panel monitor mounting]

[used library cart]

[retractable ceiling mount tv]

[vesa standard mounting]

[multiple flat screen monitors]

[vesa compliant mounting]

[multimedia lecturn]

[lecturn accessories]

[enclosed computer furniture]

[how to use a laptop keyboard]

[wall mounted keyboard tray]

[anti glare screen for lcd monitor]

[wall mount computer stands]

[yellow 3 ring binder]

[computer contemporary furniture lab]

[literature magazine display rack]

[monitor vertical display]

[adjustable arm]

[computer portable uav workstation]

[desk file organizers]

[feng shui office cubicle]

This is an extensive addition the TaviSuggestions, but it's a suggestion I've been thinking about.

The idea

The idea is simple that once in a while one might want to make a printout of a site, that be a wiki or another kind of website, and as such it needs some reformatting. When written the links wouldn't be useful in its normal form, and one might need some other way to make them useful. Then the idea arises: What about rebuilding the site into one large webpage which is prepared to be printed?

What's actually needed is that one needs one startpage which has some structural information on how to build the main page, and then one needs to include every subpage. And when including subpages one needs to degrade the header levels appropriately, and one also needs to change internal web-references to something useful when printed out. Maybe one should have an option as well to build a reference list of all external links, but that's not to hard either.

How to do this within a Wiki

A wiki lends itself to this idea since the headers are not included directly, but translated when displayed. In addition all internal references are WikiNames so they are easily recognisable. So the only thing one needs is the start page, and parsing utilities. Let me give an example on how it might look when building the start page (based on this site):

[[BuildTableOfContents]]
[[Transclude WikkiTikkiTavi 1]]
  [[Transclude WhatIsAWiki 2]]
    [[Transclude SandBox 3]]
  [[Transclude RecentVisitors 2 ]]
----
  [[Transclude TaviFeatures 2]]
  [[Transclude TaviRequirements 2]]
  [[Transclude TaviDownload 2]]
     [[Transclude TaviInstructions 2]]
  [[Transclude TaviLicense 2]]
...
[[BuildExternalLinkTable]]

Here I suggest extending the [[Transclude]] macro with giving an indication on which level the page is to start. That is, i.e. [[Transclude TaviInstructions 3]] signals that when include this file, the page title should be set at header level 3 (and that within this file header level 2 should be printed out as level 5 (2+3)). In addition to ease the internal references all transcluded pages should be numbered sections, so that when one within a file sees WikiNames it's changed to WikiNames (See 1.4).

Note: The [[Transclude]] macros does not behave this way today. Neither does it include the header, nor does it accept the header level parameter.

I guess the new macros [[BuildTableOfContents]] and [[BuildExternalLinkTable]] gives themself away as to what they do.

Possible caveats

Of course this scheme is easily destroyed if people actively misuses header levels, and it might look kind of strange when some headers are intermixed with and without numbers. (Say the first file is include, h1 is number, but within the h2 is not numbered, then include a second file on level 2, here h2 is numbered, but within the other h2 and so on is not numbered).

It might also be difficult to maintain a proper order on the start page, but then again the web isn't easily serialisable... But I do think it's feasible somehow.

When building a site page for a smaller set of a Wiki, one might also experience that not all WikiNames are existent in the resulting page, but that's easily detected by traversing the whole start page to note which pages are available, and then mark all others as external.

What do you think?

What do you think. Is this just something I would like, or is it something someone else would like as well? Please add comments, or thoughts below! --EvenHolen