Differences between revisions 4 and 30 (spanning 26 versions)
Revision 4 as of 2011-01-03 18:56:59
Size: 3564
Editor: KaiJaeger
Comment: New version 1.6.0
Revision 30 as of 2018-03-03 11:50:34
Size: 104
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>>

`Compare` is part of the CategoryAplApl project.

== Overview ==

`Compare` offers a couple of methods designed to compare functions, operators and scripts. It is also able to deal with SALTed files as well as `acre` component files.

== Methods ==

There are three main functions:

=== Match ===

`Match` takes names of functions or operators or scripts and compares the source code. Note that taking the source code with `⎕CR` or `⎕SRC` and then `≡` them is not always going to work: white spaces as well as formatting problems might result in a 0 when the source code is in fact identicall. `Match` deals with these problems properly.

=== These ===

`These` accepts a varity of arguments listed underneath. According to its arguments it tries to figure out what your intention is and carries out the appropriate action.

==== Script / Script ====
Compare the two scripts. Note that you can specify name(s) as well as reference(s).

==== Script / name of a *.dyalog file ====
Compare the workspace script with the file.

==== Script ====
This syntax requeires "Script" to be a SALTed script. In that case the workspace script is compared with its SALTed source file.

==== Name of a native file / name of a native file ====
Compare the two files.

==== Function name / function name ====
Compare two functions in the workspace.

==== Function name / name of a native file ====
Compare the function in the workspace with the file.

==== Function name / name of an `acre` component file ====
Compare the function in the workspace with the `acre` component file.

==== Function name ====
 If there is an `acre` component file holding that function the workspace version is compared with any of the components.

=== Merger ===

Although this method works "only" on namespaces one can effectively use it to compare and merge workspaces by copying the two workspaces into two separate namespaces.

The method presents a GUI with all the information one needs to know in order to perform the merge. Note that all functions, operators and scripts that do equal are on the `=` tab while all the others are on the `≠` tab. Normally one is interested only in the `≠` tab:

{{attachment:Merger.png}}

There are methods available that makes it easy to compare, delete (either from the GUI or the workspace) and move functions, operators and scripts from one namepsace to the other:

{{attachment:ContextMenu.png}}

== History ==
For a full version history: [[Compare/History|History]]

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

== Download ==
You have two options: you can either download the script for usage:

[[http://aplwiki.com/Compare?action=AttachFile&do=get&target=Compare.ZIP|Download Compare script right now]]

or get the whole thing from the AplWikiRepository, including the development workspace and the script and maybe more for any development or for running the test cases:

/* You might want to exchange "dyalog" here: */
{{{
svn list svn://aplteam.com/os/dyalog/Compare/
}}}
If you plan to contribute please note that all stuff published as part of the APLAPL project must follow certain [[AplAplStandards|APLAPL-specific standards]].
----
CategoryAplApl
The project has been relocated to [[https://github.com/aplteam/Compare]] on 2018-03-03.

Compare

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

Compare (last edited 2018-03-03 11:50:34 by KaiJaeger)