I'm glad to present a new plugin. It is in beta stage yet, so if you want 
to propose something it's possible. If you just want to jump to the plugin 
you can find it at : http://braintest.tiddlyspot.com/ and search for 
context plugin

This widget looks for a word inside a tiddler and shows the result with the 
searched word highlighted with some of its context.
Installation

The easiest way is to just grab the plugin. It contents the basic tiddlers 
needed. Just drag and drop the following link into your own wiki:
$:/plugins/danielo/context 
<http://braintest.tiddlyspot.com/#%24%3A%2Fplugins%2Fdanielo%2Fcontext>Usage

After installing the plugin you will have a new tab in $:/AdvancedSearch 
<http://braintest.tiddlyspot.com/#%24%3A%2FAdvancedSearch> called Context 
Search 
<http://braintest.tiddlyspot.com/#%24%3A%2Fplugins%2Fdanielo%2Fcontext%2FContext%20Search>.
 
If you want this functionality in other places you will have to edit the 
desired tiddler yourself adding the *context widget*. For more details 
about using the widget see the section below.
Using the widget

The very basic usage of the widget is the following:

<$context term="lorem"/>

Which will render as:

...
the widget is the following:

```
<$context term="lorem"/>
```
Which will render as:
<$context term="lorem...

The widgets will search inside the current tiddler by default. Because that 
you see the same content twice here. This example is not very useful. Other 
more meaningful would be:

<$list filter="[search{$:/temp/advancedsearch}sort[title]limit[250]]">
{{!!title||$:/core/ui/ListItemTemplate}}
<$context term={{$:/temp/advancedsearch}}/>
</$list>

That will search for tiddlers containing the text specified in 
$:/temp/advancedsearch 
<http://braintest.tiddlyspot.com/#%24%3A%2Ftemp%2Fadvancedsearch> and will 
display a link to the matching tiddlers plus a preview of the matching 
content. Something very similar is used in Context Search 
<http://braintest.tiddlyspot.com/#Context%20Search>. Below you can find a 
complete list of parameters and their default values.
parameterdescriptiondefaulttermThe term you want to searchsearchTermAn 
alias for the previous onetiddlerThe tiddler's name to look intocurrent 
tiddlerlengthNumber of context characters to show50beforeNumber of 
characters before the matched term to showthe value of the length parameter
afterNumber of characters after the matched term to showthe value of the 
length parametermaxMatchesmaximun number of matched elements to show. 
Incrementing this can cause several performance issues10elementNode element 
to create. This element will contain the results of the search. If you want 
to style it its class is tw-context<pre>matchClassThe css class to assign 
to the matched terms in the results. This is used to highlight the results
matchedCustomizing the output

There are not many ways to customize the output of this widget. You can 
specify *what type of node you want to create* to wrap the results 
(div,span...). The default is <pre>. This container is created with the 
class tw-context so you can easily apply styles to it. Something similar 
happens to the *highlighted* words. You can specify the name of the class 
to assign to it and also you can apply styles to that class.

A very basic example of customization could be:

   1. Create a tiddler, for example $:/plugins/danielo/context/css 
   <http://braintest.tiddlyspot.com/#%24%3A%2Fplugins%2Fdanielo%2Fcontext%2Fcss>
   2. Paste the following text or any css rule you want: 
   
   .matched{background-color:yellow}
   .tw-context {
     border:1px solid blue;
     word-break: break-all; word-wrap: break-word;}
   
   
   3. Tag it with $:/tags/stylesheet
   4. Save the tiddler

Live example
You can find a live example at http://braintest.tiddlyspot.com/

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/tiddlywiki.
For more options, visit https://groups.google.com/d/optout.

Reply via email to