AminetAminet
Search:
83200 packages online
About
Recent
Browse
Search
Upload
Setup
Services

util/misc/ADiffView.lha

Mirror:Random
Showing:ppc-amigaosgeneric
No screenshot available
Short:A graphical file compare / diff viewer
Author:Uwe Rosner
Uploader:u rosner ymail com (Uwe Rosner)
Type:util/misc
Version:1.2
Architecture:m68k-amigaos >= 3.0
Distribution:Aminet
Date:2020-01-03
Download:http://aminet.net/util/misc/ADiffView.lha - View contents
Readme:http://aminet.net/util/misc/ADiffView.readme
Downloads:1694
=======
CHANGES
=======

1.2 (01.01.2020)
- Fixed a bug introduced in version 1.1 which produced Enhancer hits in 
  progress window.
- Fixed problem in text rendering where some lines were displayed 
  intermeshed.
- The Line numbers of the source files are now displayed in diff result.
- Added the (tooltype / cli) option NOLINENUMBERS to disable displaying
  the line numbers.

1.1 (22.12.2019)
- Now using the Myers diff algorithm for better results.
- File select window: When a file was selected with the file request, 
  the request for the other file opens in the same directory.
- File select window: Keyboard shortcuts are now working.
- File select window: Added a feature to swap left and right file.
- File select window: Added support for Drag'n drop. If the program 
  runs on Workbench you can drag the files to compare into that window.
- Diff result window: Added a feature to navigate to next / previous 
  difference.
- Now OS3.0+ memory pools are used. Speeds up the freeing of memory. 
  There's a noticeable speed improvement on exit after big files have 
  been compared.

1.0.1 (13.03.2019)
- Fixed a bug which caused a crash when comparing long files
- Fixed a minor problem in the about window where the title was always 
  inherited by the parent window.
- Added some more info into the manual chapter about ADiffView and 
  Directory Opus

1.0.0 (21.02.2019)
- Initial version


=====
ABOUT
=====

ADiffView compares two ASCII text files and graphically displays the 
differences in an window.

Starting with version 1.1 a Myers diff algorithm is used. That's the 
algorithm used by the *nix diff utils and git.

A part of the implemented diff engine uses code from Matthias Hertel, 
http://www.mathertel.de/.

In particular moving the vector allocations out of a recursive function
and making the algorithm work with 0-based indices (instead of being 
1-based) are very helpful optimizations of Myers original algorithm.

See the file LICENSE-3RD-PARTY.txt for the license of that code.


========
FEATURES
========

- A window allows you to choose the files to compare.

- While comparing the files the difference is calculated in a
background process and a progress bar is shown to give a visual
response of what's going on and that the program isn't freezed yet.

- Optionally the files to diff can be given as command line arguments 
from CLI or as Workbench arguments.

- Some options can be given as command line arguments or by Workbench
tool types.


======
FUTURE
======

Some features that I consider implementing in a future version are:

- Adding a search function.

- Adding support for the clipboard, allowing to copy text and paste it 
in another application


===========
DEVELOPMENT
===========

Development was done on an Amiga with StormC4 in C++/gcc mode and also
in Linux with Visual Studio Code. Unit tests for the diff engine were 
done in Linux with QtCreator and the BOOST framework.

Starting with version 1.1 the build of the release binary is done with
gcc 6.5 on Linux using this toolchain: https://github.com/bebbo/amiga-gcc


Contents of util/misc/ADiffView.lha
 PERMSSN    UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP          NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
[Amiga]                    263     820  32.1% -lh5- d2f8 Jan  1 19:19 ADiffView.info
[Amiga]                  35076   66228  53.0% -lh5- cd5f Jan  1 18:53 ADiffView/ADiffView
[Amiga]                   2640    6132  43.1% -lh5- 6cd1 Jan  1 19:34 ADiffView/ADiffView.guide
[Amiga]                    280     836  33.5% -lh5- feba Jan  1 19:19 ADiffView/ADiffView.guide.info
[Amiga]                    353     887  39.8% -lh5- a1a1 Jan  1 19:19 ADiffView/ADiffView.info
[Amiga]                    999    1951  51.2% -lh5- 720b Dec 21 10:20 ADiffView/LICENSE-3RD-PARTY.txt
[Amiga]                    301     854  35.2% -lh5- 8dd0 Jan  1 19:19 ADiffView/LICENSE-3RD-PARTY.txt.info
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total         7 files   39912   77708  51.4%            Jan  3 09:15

Aminet © 1992-2020 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>