Differences between revisions 6 and 11 (spanning 5 versions)
Revision 6 as of 2011-12-20 20:08:21
Size: 2704
Editor: KaiJaeger
Comment:
Revision 11 as of 2012-03-20 09:13:40
Size: 3104
Editor: KaiJaeger
Comment: Version 1.0.0
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
== Fire == = Fire =
Line 5: Line 5:
/!\ Under construction

'''''Fire''''' stands for for FInd and REplace. It's designed to search and replace strings in the workspace.
{{attachment:fire.png||align="middle"}} '''''Fire''''' stands for FInd and REplace. It's designed to search and replace strings in the workspace.
Line 16: Line 14:
    * traditional functions & operators
    * direct functions & operators
    * Traditional functions & operators
    * Direct functions & operators
Line 22: Line 20:
 * You can restrict the search to one or more of these:
    * Ignore code
    * Ignore comments
    * Ignore text (=everything between quotes)
 * You can search...
    * the full source code
    * the full source code but comments
    * comments only
    *
text only
Line 27: Line 26:
 * Negate a search ("every object that does '''not''' contain...)  * Negate a search ("all objects that do '''not''' contain...")
Line 32: Line 31:
 * Fire handles references correctly (thanks to PhilLast)
 * Editing in Fire is limited to the currently opened object(s).
 * Fire handles circular references correctly (thanks to PhilLast)
 * Fire reports a WS FULL only when it is reasonable to do so
Line 41: Line 40:
Specifying anything into the "Start looking here" control is supported by autocomplete: this box offers all ordinary namespaces matching the characters in "Start looking here". 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".
Line 51: Line 50:
There are two mode available: There are two modes available:
Line 53: Line 52:
 * In one-by-one you can compare and edit one object after the other.
 * In batch mode you can check all changes in one go and then either accept or discard them.
 * "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.
Line 56: Line 55:
==== Batch mode ==== ==== "All in one go" mode ====
Line 58: Line 57:
This is the first step of three steps in Batch mode: This is the first of three steps:
Line 60: Line 59:
{{attachment:Batch_01.png}} {{attachment:Replace2.png}}
Line 62: Line 61:
This is the second of three steps in Batch mode: 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:
Line 66: Line 67:
It allows you to check whether everything is okay or not. 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. The full report would show all lines of all objects involved. You cannot change anything at this stage.
Line 72: Line 73:
This allows to either fix all changes objects or discard the changes. This allows you to either change and fix all objects or not.
Line 80: Line 81:
In the next step you can either fix the changes are skip this object and carry on with the next one or cancel the rest of the Replace operation: 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:
Line 94: Line 95:
----
CategoryAplTree

Fire

fire.png 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
  • Use regular expression in your search string (⎕S, ⎕R)

  • Negate a search ("all objects that do not contain...")

  • Search only the hits of the last search

Difference between Dyalog's build-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

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".

Fire_02.png

The "Replace" feature

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

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:

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:

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. The full report would show all lines of all objects involved. You cannot change anything at this stage.

This is the third and last step:

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:

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:

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


CategoryAplTree

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