Inline search feature allows flexible formatting of search result
Changed:
< <
The %SEARCH{...}% variable documented in TWikiVariables has a fixed format for the search result, that is, a table consisting of topic names and topic summaries. Use the format="..." parameter to specify a customized format of the search result. The string of the format parameter is typically a bullet list or table row containing variables (such as %SEARCH{ "food" format="| $topic | $summary |" }%).
> >
The default output format of a %SEARCH{...}% is a table consisting of topic names and topic summaries. Use the format="..." parameter to customize the search result. The format parameter typically defines a bullet or a table row containing variables, such as %SEARCH{ "food" format="| $topic | $summary |" }%.
Syntax
Line: 35 to 35
$locked
LOCKED flag (if any)
$date
Time stamp of last topic update, e.g. 28 Nov 2024 - 16:30
$isodate
Time stamp of last topic update, e.g. 2024-11-28T16:30Z
Changed:
< <
$rev
Number of last topic revision, e.g. 1.4
> >
$rev
Number of last topic revision, e.g. 4
$username
Login name of last topic update, e.g. jsmith
$wikiname
Wiki user name of last topic update, e.g. JohnSmith
$wikiusername
Wiki user name of last topic update, like Main.JohnSmith
Changed:
< <
$createdate
Time stamp of topic revision 1.1
$createusername
Login name of topic revision 1.1, e.g. jsmith
$createwikiname
Wiki user name of topic revision 1.1, e.g. JohnSmith
$createwikiusername
Wiki user name of topic revision 1.1, e.g. Main.JohnSmith
$summary
Topic summary
> >
$createdate
Time stamp of topic revision 1
$createusername
Login name of topic revision 1, e.g. jsmith
$createwikiname
Wiki user name of topic revision 1, e.g. JohnSmith
$createwikiusername
Wiki user name of topic revision 1, e.g. Main.JohnSmith
$summary
Topic summary, just the plain text, all formatting and line breaks removed; up to 162 characters
$summary(50)
Topic summary, up to 50 characters shown
$summary(showvarnames)
Topic summary, with %ALLTWIKI{...}% variables shown as ALLTWIKI{...}
$summary(noheader)
Topic summary, with leading ---+ headers removed Note: The tokens can be combined, for example $summary(100, showvarnames, noheader)
$changes
Summary of changes between latest rev and previous rev
$changes(n)
Summary of changes between latest rev and rev n
$formname
The name of the form attached to the topic; empty if none
$formfield(name)
The field value of a form field; for example, $formfield(TopicClassification) would get expanded to PublicFAQ. This applies only to topics that have a TWikiForm
$formfield(name, 10)
Form field value, "- " hyphenated each 10 characters
$formfield(name, 20, -<br />)
Form field value, hyphenated each 20 characters with separator "-<br />"
$formfield(name, 30, ...)
Form field value, shortended to 30 characters with "..." indication
Changed:
< <
$pattern(reg-exp)
A regular expression pattern to extract some text from a topic (does not search meta data; use $formfield instead). In case of a multiple="on" search, the pattern is applied to the line found in each search hit. • Specify a RegularExpression that covers the whole text (topic or line), which typically starts with .*, and must end in .* • Put text you want to keep in parenthesis, like $pattern(.*?(from here.*?to here).*) • Example: $pattern(.*?\*.*?Email\:\s*([^\n\r]+).*) extracts the email address from a bullet of format * Email: ... • This example has non-greedy .*? patterns to scan for the first occurance of the Email bullet; use greedy .* patterns to scan for the last occurance • Limitation: Do not use .*) inside the pattern, e.g. $pattern(.*foo(.*)bar.*) does not work, but $pattern(.*foo(.*?)bar.*) does • Note: Make sure that the integrity of a web page is not compromised; for example, if you include an HTML table make sure to include everything including the table end tag
$n or $n()
New line
> >
$pattern(reg-exp)
A regular expression pattern to extract some text from a topic (does not search meta data; use $formfield instead). In case of a multiple="on" search, the pattern is applied to the line found in each search hit. • Specify a RegularExpression that covers the whole text (topic or line), which typically starts with .*, and must end in .* • Put text you want to keep in parenthesis, like $pattern(.*?(from here.*?to here).*) • Example: $pattern(.*?\*.*?Email\:\s*([^\n\r]+).*) extracts the e-mail address from a bullet of format * Email: ... • This example has non-greedy .*? patterns to scan for the first occurance of the Email bullet; use greedy .* patterns to scan for the last occurance • Limitation: Do not use .*) inside the pattern, e.g. $pattern(.*foo(.*)bar.*) does not work, but $pattern(.*foo(.*?)bar.*) does • Note: Make sure that the integrity of a web page is not compromised; for example, if you include an HTML table make sure to include everything including the table end tag
$count(reg-exp)
Count of number of times a regular expression pattern appears in the text of a topic (does not search meta data). Follows guidelines for use and limitations outlined above under $pattern(reg-exp). Example: $count(.*?(---[+][+][+][+]) .*) counts the number of <H4> headers in a page.
$n or $n()
New line. Use $n() if followed by alphanumeric character, e.g. write Foo$n()Bar instead of Foo$nBar
$nop or $nop()
Is a "no operation". This variable gets removed; useful for nested search
$quot
Double quote ("). Alternatively write \" to escape it
This site is powered by the TWiki collaboration platform. All material on this collaboration platform is the property of the contributing authors. All material marked as authored by Eben Moglen is available under the license terms CC-BY-SA version 4.