wiki:InlineMacro

Version 4 (modified by dwclifton, 6 years ago) (diff)

--

Inline XHTML Markup Macro

Description

Returns raw, inline XHTML markup that has been validated and sanitized.

Validation

Markup that doesn't follow these requirements will be rejected with an error message:

  • Elements must be well-formed.
  • Tags and attribute names must be in lowercase, attribute values are required and must be enclosed in quotes.
  • Empty elements must be self-closing with a space before the forward slash, e.g. <img ... />.

Sanitization

Dangerous constructs such as <script> elements will be removed.

Use Cases

Inline is useful for creating "phrase" elements not supported by WikiFormatting, or for including attributes such as titles. The #!html WikiProcessor works well for creating larger chunks of markup, and in particular block-level elements such as an <address> that are also not supported (a Microformat is an excellent example). However, Inline is designed to be embedded directly in another construct, typically a paragraph of text.

Installation

Download the attached zipfile, unpack to a temporary location, visit the 0.11 directory and run:

python setup.py bdist_egg
cp dist/*.egg /trac/env/Project/plugins

Configuration

Enable the macro in:

/trac/env/Project/conf/trac.ini:

[components]
inline.* = enabled

You may have to restart your Web server.

Examples

...is now a [[Inline(<acronym title="Python Enhancement Proposal">PEP</acronym>)]].
Visit [[Inline(<a href="..." title="My Link">my link</a>)]].

Source

  • Browse the source at: GitHub.
  • Public clone URL:
    git clone git://github.com/dwclifton/tracinlinemacro.git
    

Bugs/Feature Requests

Existing bugs and feature requests for InlineMacro are here.

If you have any issues, create a new ticket.

Recent Changes

[13140] by rjollos on 2013-05-15 11:30:35
Added files previously attached to the project wiki page.
[5072] by dwclifton on 2008-12-30 16:14:06
New hack InlineMacro, created by dwclifton

Author/Contributors

  • Author: dwclifton
  • Contributors: The Python and Trac development community.