This is a talk page for improving WikiTrails.

The idea is explained in Vannevar Bush's 1945 article As We May Think, section 7, which describes an implementation using microfilm inspired by the trails of association in human thinking:[1]

. . . at any time, when one of these items is in view, the other can be instantly recalled merely by tapping a button below the corresponding code space. Moreover, when numerous items have been thus joined together to form a trail, they can be reviewed in turn, rapidly or slowly . . . . It is exactly as though the physical items had been gathered together to form a new book. It is more than this, for any item can be joined into numerous trails.

Can the index page be excluded altogether from the trail?

That would make it possible to use lists thousands long, since the user would never be caught by a slow-loading index page while using the trail markup. Currently, I use a portal page instead of the index page as the starting-ending point, and place the index url in the center of the list so that it can be avoided until that point is reached. I tried htaccess, but it won't work with the complications presented by pmwiki.php serving the pages.

How can the trail be made to start at (or from) the "parent page"?

That is the first trail markup should be visible on the "parent page". In the example below the next and prev pages should show as (arbitrarily) the first and last pages on the trail (excluding any loop entry).



Why can I not get the Path WikiTrail ^|[[TrailIndexPage]]|^ to function as expected?

TrailIndexPage contents:

*  [[Top Level Page]]
*  [[Level 2 Page]]
*  [[Level 3 Page]]
*  [[Level 4 Page]]

Level 4 Page WikiTrail code added:

%rfloat font-size:0.8em% ^|[[TrailIndexPage | Index]]|^ %%

Expected output:

Index | TopLevelPage | Level2Page | Level3Page | Level4Page

Actual output:

Index | Level4Page

The trail only ever displays previous page | trail page | next page. In your actual example you are at the first page of the trail, so there is no previous page. To achieve what you want will require a page list. simon July 18, 2009, at 06:15 PM. To always show a next and previous page, have a look at PmWiki:WikiTrails#circular-trails. gb February 08, 2010, at 12:00 PM

How can I modify the linkformat displayed using <|[[IndexPage|+]]|>. I want to have a display like this:

< PrevTitle | IndexTitle | NextTitle>, but I get sth. like <PrevGroup.PrevName | IndexTitle | NextGroup.NextName >, but I don't want the FullNames.

In the bulletted list of links, use [[Group.Page|+]] to get the page titles, both in this list and in the trails. --Petko January 03, 2010, at 09:10 PM

Where can I change or remove the div and p wrapped around a trails span (for example the one on top of the PmWiki.BasicEditing)

This trail in the documentation is in the GroupFooter, and it is included as a section into the GroupHeader. You can edit these pages on your own wiki. See GroupHeaders and IncludeOtherPages for more information.

Why isn't simply the trail itself a div with the CSS class so everyone can style them as desired on every page ? Why use span and why wrap this in even more markup ?

I think there is no good reason. Layout should be a issue of CSS and only CSS. These wrapping containers (without any CSS class and - in addition - with hard coded style attribute - uuhha) only make it hard to change a tails design.

It is wrapped in <span class='wikitrail'></span> to allow people to use it inline. You can display it as a block and style it differently by adding to pub/css/local.css something like:
span.wikitrail { display: block; border: 3px dotted pink; background-color: yellow; }

Wikitrails markup, or code, may also be used to autocreate pages by adding the necessary autocreate code on the config file. Jagtig


This pagelist markup automatically generates a page trail Use the parameter TrailPage to set the return or parent page. If not set it will default to the group of the pagelist.

(:template default wrap=inline TrailPage="{*$Groupspaced}" name=-HomePage,-RecentChanges,-RecentUploads,-SideBar,-Template,-GroupHeader,-GroupFooter,-GroupAttributes:)
(:template each:)
(:if equal "{*$FullName}" "{=$FullName}":)
%wikitrail%[[{<$FullName} | {<$Namespaced}]] < [[{$$TrailPage}]] > [[{>$FullName}| {>$Namespaced}]]

(:pagelist group={*$Group} list=all fmt=#pagetrail:)

(:template default wrap=inline TrailPage="Pm Wiki" name=-HomePage,-RecentChanges,-RecentUploads,-SideBar,-Template,-GroupHeader,-GroupFooter,-GroupAttributes:) (:template each:)

How can be variables from the trail pages be included?

(:if equal {*$FullName} {=$FullName} :)
''<<[[{<$FullName}|{<$Name}]]  (:if2 !equal {<$Name} {<$Title}:) [{<$Title}] (:if2end:) {<$:summary} | [[{$$trail}|+]] | [[{>$FullName}|{>$Name}]] (:if2 !equal {>$Name} {>$Title}:) [{>$Title}] (:if2end:) {>$:summary}>>''

=> This leads to an endless-loop inside PmWiki, page refering to this format never gets displayed. Intention is clear. How to do that properly?

If {<$Title} or {>$Title} contain spaces or other special characters, you need to quote them inside the (:if2...:) conditionals. Also the {>$:summary} PTV is case sensitive, for example in the PmWiki documentation and Cookbook it would need to be {>$:Summary}. --Petko October 08, 2020, at 05:32 PM

This is a talk page for improving PmWiki.WikiTrails.