The Solid Fluid Search facility has already been described. The replacement capability operates in a similar but extended manner. The replace dialog is shown below;
Extensions to search provide a similar comboboxes for search and replace. Thes comboboxes implement all the history and reversion functions described on the search page. The replacement capability does not offer a peer in the form of a toolbar, like the search facility. This was considered at design time, but it's merit was considered small. Typically the main replacement operation tends to be one shot for a whole document. Smaller replacements, coupled with undo, seem to work well when formulating replacements. Whilst the toolbar can make some scenarios easier, for the task the toolbar is not the most natural interface, and we feel that catastropic errors would be easier to make.
The replacent dialog offers similar functional options to search. In particular the replacement capability supports our Perl Compatible Regular Expression implementation, with the ability to perform "escaped replacements" where match text from the search expression can be reused in the replacement. For more details see outr page on regular expressions.
In the replacement dialog it is possible to constrain the scope of the replacement operation. This is a particularly useful capability in scenarios where it is know that the search term will match both text that must be changed, and text that must not. The replacement facility offers two means of making replacements, either word by word, or one shot. The word by word capability is not available when the replacement scope is limited to a selection. Obviously the selection scope constraint is not available when there is no actual selection.
When using the word by word method of replacement, the next button will find the next match without modifying the current one. The replace button will modify the current macth, and move to find the nex one. Initially when there is no match, next and replace implement identical behaviour, to find the next match without changing anything.