Differences between revisions 16 and 26 (spanning 10 versions)
Revision 16 as of 2012-09-07 16:33:40
Size: 3239
Editor: KaiJaeger
Comment:
Revision 26 as of 2018-03-03 11:50:12
Size: 98
Editor: KaiJaeger
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
~-<<SeeSaw(section="table-of-contents", show="true", seesaw="false", toshow="<<(Show>> table-of-contents)", tohide="<<(Hide>> table-of-contents)", speed="Slow")>>-~

<<TableOfContents>>

{{attachment:fire.png||align="middle"}} '''''Fire''''' stands for FInd and REplace. It's designed to search and replace strings in the workspace.

== Features ==

Fire's main feature is the "Replace" command which allows you in an easy yet powerful way to replace certain strings in all or selected objects.

Other features are:

 * You can restrict the search to one or more of these object classes:
    * Traditional functions & operators
    * Direct functions & operators
    * Classes
    * Interfaces
    * Scripted namespaces
    * Variables
 * You can search...
    * the full source code
    * the full source code but comments
    * comments only
    * text only
 * Negate a search ("all objects that do '''not''' contain...")
 * Search only the hits of the last search

== Difference between Dyalog's built-in Search tool and Fire ==

 * Fire handles circular references correctly (thanks to PhilLast)
 * Fire reports a WS FULL only when it is reasonable to do so

== Fire's GUI ==

=== Main Window ===

{{attachment:Fire_01.png}}

Specifying anything in the "Start looking here" control is supported by autocomplete: this box offers all ordinary namespaces matching the characters in "Start looking here".

{{attachment:Fire_02.png}}

=== The "Replace" feature ===

The Replace feature allows you to change the workspace on a global level:

{{attachment:Replace.png}}

There are two modes available:

 * "All in one go" allows you to check all changes first and then either accept or discard them.
 * "One-by-one" allows you to compare and edit one object after the other.

==== "All in one go" mode ====

This is the first of three steps:

{{attachment:Replace2.png}}

This is a reminder that for "Replace" it's always the whole hit list that is processed, not only the selection.

This is the second step:

{{attachment:Batch_02.png}}

This allows you to check whether everything is okay or not. Here we see a "compressed" report: it contains only the lines which would change plus the object names plus the headers for all traditional functions and operators in order to make checking local variables easy. You cannot change anything at this stage but you can exclude certain objects from the "Replace" operation by un-ticking the check box.

This is the third and last step:

{{attachment:Batch_03.png}}

This allows you to either change and fix all objects or not.

==== One by one ====

In one-by-one mode you can check and edit a single object:

{{attachment:OneByOne_01.png}}

In the next step you can either fix the changes or skip this object and carry on with the next one or cancel the whole operation:

{{attachment:OneByOne_02.png}}

== Project Page ==

For bug reports, future enhancements and a full version history see [[Fire/ProjectPage]]

== Version Information ==
||Original author: ||KaiJaeger ||
||Responsible: ||KaiJaeger ||
||Email: || kai@aplteam.com ||

<<Include(APLTreeDownloads)>>
----
CategoryAplTree
The project has been relocated to [[https://github.com/aplteam/Fire]] on 2018-03-03.

Fire

The project has been relocated to https://github.com/aplteam/Fire on 2018-03-03.

Fire (last edited 2018-03-03 11:50:12 by KaiJaeger)