Tags

Render List Plugin

Render bullet lists in a variety of formats

Syntax Rules

RENDERLIST Macro

  • Place a %RENDERLIST{ <parameters> }% before any bullet list
    • The lists can be handcrafted, generated by another Plugin, a %TOC%, or the result of a FormattedSearch
  • Supported parameters:
    "name" or
    theme="name"
    Select a rendering theme
    focus="any text" Focus list on a bullet with specified text
    depth="2" Remove bullets with an indent greater then the depth. The depth is relative to the highlighted bullet in case focus is specified
  • Rendering themes can be defined by <name>_THEME Plugin settings
    • Each theme is defined by a comma separated list containing the render type and parameters required by that render type
    • There are different render types; this initial Plugin version has tree and icon render types
  • Format of the tree render type:
    • Set <name>_THEME = tree, <0/1 flag to suppress/show lines of first level>
  • Format of the icon render type:
    • Set <name>_THEME = icon, <0/1 flag to suppress/show lines of first level>, <icon width>, <icon height>, <spacer graph>, <T-line graph>, <I-line graph>, <L-line graph>, <icon image>
    • To define new Icon themes, attach images to this Plugin topic and set the parameters accordingly
  • Focus bullet list:
    • Search bullet list for text. If a bullet is found:
      1. Highlight text and remove [[][]] links on bullet where text is found
      2. Reduce bullet list to show only its parents and children
    • This is useful to maintain one large bullet list with links to team pages, representing the organization of a company. Each team page can INCLUDE the bullet list with focus set to itself.

Bullets

  • Use regular * bullets
  • Start with level one
    • Increase indentation only one level at a time
      • Like this
  • Decreasing indentation many levels at a time is OK
  • Wrap long text with continuation lines, the Plugin does not do that for you
    Align continuation lines with leading spaces like this
  • You can specify an icon for a bullet of render type tree or icon:
    • Attach the icon to this Plugin topic, e.g. myicon.gif, or
    • Use one of the existing icons: globe.gif globe.gif, home.gif home.gif, virtualhome.gif virtualhome.gif, group.gif group.gif, persons.gif persons.gif, virtualpersons.gif virtualpersons.gif, person.gif person.gif, virtualperson.gif virtualperson.gif, email.gif email.gif, trend.gif trend.gif, folder.gif folder.gif, folders.gif folders.gif, file.gif file.gif, files.gif files.gif, doc.gif doc.gif, image.gif image.gif, pdf.gif pdf.gif, ppt.gif ppt.gif, sound.gif sound.gif, xls.gif xls.gif, zip.gif zip.gif, see.gif see.gif
    • Refer to an attached icon at the beginning of the bullet with:
      • icon:myicon Followed by normal bullet text
    • Any DocumentGraphics icon can be used as well:
      • %ICON{name}% Followed by normal bullet text

Examples

You type: You get: (simulated) You get: (if installed)
%RENDERLIST{"thread"}%
   * one
      * one.a
         * one.a.x
      * one.b
         * one.b.x
           continue
         * one.b.y
            * icon:person Tim
            * icon:person Mico
   * two
   * three

one
one.a
one.a.x
one.b
one.b.x
continue
one.b.y
Tim
Mico
two
three

one
one.a
one.a.x
one.b
one.b.x
continue
one.b.y
  Tim
  Mico
two
three

%RENDERLIST{"org"}%
   * one
      * one.a
         * one.a.x
      * one.b
         * one.b.x
           continue
         * one.b.y
            * icon:person Tim
            * icon:person Mico
   * two
   * three

  one
  one.a
  one.a.x
  one.b
  one.b.x
  continue
  one.b.y
  Tim
  Mico
  two
  three

  one
  one.a
  one.a.x
  one.b
  one.b.x
  continue
  one.b.y
  Tim
  Mico
  two
  three

%RENDERLIST{ "org" focus="one.b" }%
   * one
      * one.a
         * one.a.x
      * one.b
         * one.b.x
           continue
         * one.b.y
            * icon:person Tim
            * icon:person Mico
   * two
   * three

  one
  one.b
  one.b.x
  continue
  one.b.y
  Tim
  Mico

  one
  one.b
  one.b.x
  continue
  one.b.y
  Tim
  Mico

Themes

Themes are defined by setting a preference called RENDERLISTPLUGIN_<SOMETHING>_THEME (for example, RENDERLISTPLUGIN_THREAD_THEME ) and contain a comma-delimited list of render type and parameters. The default themes are:
Theme Render type
THREAD tree, 1
ORG icon, 0, 16, 16, empty.gif, dot_udr.gif, dot_ud.gif, dot_ur.gif, home.gif
GROUP icon, 0, 16, 16, empty.gif, dot_udr.gif, dot_ud.gif, dot_ur.gif, group.gif
EMAIL icon, 0, 16, 16, empty.gif, dot_udr.gif, dot_ud.gif, dot_ur.gif, email.gif
TREND icon, 0, 16, 16, empty.gif, dot_udr.gif, dot_ud.gif, dot_ur.gif, trend.gif
FILE icon, 0, 16, 16, empty.gif, dot_udr.gif, dot_ud.gif, dot_ur.gif, file.gif

Installation Instructions

You do not need to install anything in the browser to use this extension. The following instructions are for the administrator who installs the extension on the server.

Open configure, and open the "Extensions" section. "Extensions Operation and Maintenance" Tab -> "Install, Update or Remove extensions" Tab. Click the "Search for Extensions" button. Enter part of the extension name or description and press search. Select the desired extension(s) and click install. If an extension is already installed, it will not show up in the search results.

You can also install from the shell by running the extension installer as the web server user: (Be sure to run as the webserver user, not as root!)
cd /path/to/foswiki
perl tools/extension_installer <NameOfExtension> install

If you have any problems, or if the extension isn't available in configure, then you can still install manually from the command-line. See https://foswiki.org/Support/ManuallyInstallingExtensions for more help.

  • Test if the installation was successful: See if above examples work

Change History

06 Aug 2023: 2.29: Foswikitask:Item15151: add warnings and strictness
08 Apr 2016: 2.28: Foswikitask:Item14022 Change all foswiki.org links to https.
14 Jun 2015: 2.27: Foswiki 2.0 release. Foswikitask:Item12864: Use simple decimal versions. Foswikitask:Item13423: Perl 5.22 deprecations.
28 Nov 2012: 2.2.7: Foswiki 1.1.6 release. Item11267: Convert to perl version string.
06 Apr 2012: 2.2.6: Foswiki 1.1.5 release. Item11453: convert to preRenderingHandler.
05 Dec 2011: 2.2.5: Foswiki 1.1.4 release. Minor code and topic cleanup.
15 Jul 2011: 2.2.4: fixed line parser - Foswikitask:Item10969
11 Apr 2011: 2.2.3: Version released with Foswiki 1.1.3. Only a minor change related to how the plugin is being upgraded
20 Sep 2010: 2.2.2: Will Norris. <nobr> modernization - Foswikitask:Item9415
01 Aug 2010: 2.2.1: Paul Harvey. Documentation updates - Foswikitask:Item9415
20 Sep 2009: 2.2: Crawford Currie. Moved default themes out of plugin topic for efficiency.
16 Dec 2008: 2.1: Kenneth Lavrsen. Foswiki version
15 Jan 2008: 2.0: Kenneth Lavrsen. No more reporting warnings in the error log when a render list starts at deeper level than 1
30 Sep 2007: Added VarRENDERLIST to have it listed in Macros
23 Sep 2006: Support for img tag and image URL after icon: (suggested by TWiki:Main.JanFilipsky); support for DocumentGraphics icons, such as %ICON{folder}% instead of icon:folder; added files.gif and folders.gif (contributed by TWiki:Main.SteveHobbs)
25 Apr 2006: SVN sync, Cairo + Dakar compatibility
14 Apr 2006: TWikiRelease04x00 compatibility update
21 Nov 2004: Added benchmarks (no code changes)
21 Mar 2004: Internal change: Fixed unofficial function call
01 Mar 2004: Added FILE_THEME and folder/file icons
29 Dec 2003: Fixed rendering issue if focus bullet contains icon:name; added TREND_THEME
16 Dec 2003: Specify icons with icon:name syntax
11 Dec 2003: Added focus and depth parameters
05 Dec 2003: Fixed rendering issue with IE; added EMAIL_THEME
02 Dec 2003: Initial version


Related Topics: Plugins, DeveloperDocumentationCategory, AdminDocumentationCategory, DefaultPreferences, SitePreferences, Foswiki:Extensions/TreePlugin
Topic revision: r1 - 06 Aug 2023, ProjectContributor
This site is powered by FoswikiCopyright © by the contributing authors. All material on this site is the property of the contributing authors.
Ideas, requests, problems regarding CLASSE Wiki? Send feedback