Yes, certainly for standard keyword based searches, this velocity code should do the trick. It was developed on XWiki Enterprise 5.0 Milestone 1.
Edit the page: http://[servername:port]/xwiki/bin/edit/XWiki/Results
I added my changes below the "rating" section, but you can play with the layout to suit your needs.
Add the following code which will display up-to 10 keyword matches and the 20 preceding and succeeding words around the keyword. Each match string will be separated by the pipe symbol '|' and the keywords are then highlighted in yellow.
Obviously it would be nice to make this match a skin colour, but for my purposes I am not interested in that level of development.
<div class="itemOthers">
#set($outputSyntax = $xwiki.getAvailableRendererSyntax('plain', '1.0'))
#if ($outputSyntax)
#set ($preview = $xwiki.getDocument($itemfullname).getRenderedContent($outputSyntax))
#set ($regex = $regextool.quote($request.text))
#set ($regex_summarize = "(?i)(?:((\w+)\W+){0,20})\b\w*$regex\w*\b(((\W+)\w+){0,20})")
#set ($regex_highlight = "(?i)($regex)")
#set ($pattern_summarize = $regextool.compile($regex_summarize))
#set ($matcher_summarize = $pattern_summarize.matcher($preview))
#foreach ( $match_loop in [0,1,2,3,4,5,6,7,8,9] )
#if ($matcher_summarize.find())
#if ($match_loop > 0)
<strong> | </strong>
#end
$escapetool.html($matcher_summarize.group(0)).replaceAll($regex_highlight,'<span style="background-color:yellow;">$1</span>')
#end
#end
#end
</div>
Finally, you can see the revisions and changes you made through the url: http://[servername:port]/xwiki/bin/view/XWiki/Results?viewer=history&showminor=true