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

util/misc/ADiffView.lha

Mirror:Random
Showing:m68k-amigaosppc-amigaosppc-morphosi386-arosi386-amithlonppc-warpupppc-powerupgeneric
No screenshot available
Short:Graphical ASCII file compare/diff viewer
Author:Uwe Rosner
Uploader:u rosner ymail com (Uwe Rosner)
Type:util/misc
Version:2.2
Architecture:m68k-amigaos >= 3.0
Distribution:Aminet
Date:2022-04-09
Download:http://aminet.net/util/misc/ADiffView.lha - View contents
Readme:http://aminet.net/util/misc/ADiffView.readme
Downloads:4759

=====
ABOUT
=====
ADiffView compares two ASCII text files and graphically displays the
differences.

The diff engine uses a custom implementation of Eugene Myers' diff
algorithm. In addition, the algorithm has been optimized for
non-recursive processing, as described on Matthias Hertel's website
www.mathertel.de. See the file LICENSE-3RD-PARTY for more information.


======================================= 
IMPORTANT: Regained 68000 compatibility
======================================= 
Bebbo has revised the exception behavior for the gcc 6.5 Amiga cross
compiler. So starting with version 2.2 ADiffView can be used on 68000
machines again.


======= 
CHANGES
======= 

2.2 (09.04.2022)
- Navigation: Added the shortcuts SPACE and BACKSPACE to navigate
  forward and backward one page.
- Navigation: Added an option to the text search function to search only
  in difference lines. See the cycle gadget in the search window.
- Behavior: Added (ToolType / CLI) argument COUNTBYLINES. When this is
  set, the number of differences reported is counted per lines, not per
  'groups of difference blocks' as it is the default.
- Fixed a crash due to a stack overflow if aborted during the 
  comparison process
- Fixed an issue where other search parameter changes were not applied
  when the search keyword was empty 
- Fixed an issue where the last line of a file was not recognized by
  ADiffView when it hadn't been finalized with a newline.

2.1 (02.12.2021)
- Navigation: Now displays a message in the window title if no 
  next/previous difference or search pattern match was found.
- View: Added the 'View' menu with currently the only function to switch
  between different tabulator widths
- Behavior: Added (ToolType / CLI) argument IGNORETRAILINGSPACES. When
  this is set all white spaces at line endings are skipped for
  comparison. So for example, files that differ only by spaces at the
  end of lines are displayed as if they had no differences.
- Behavior: Added support for selecting multiple menu items at one time
  as it is common on the Amiga.
- Behavior: Now starting the comparison will be prevented if the same
  file name is selected for the left and right file (only string 
  comparison of the filenames).
- Fixed an issue where window titles were broken after comparing files 
  without differences.
- Fixed a MuForce hit when 'Navigate to last diff' was called.

2.0 (27.07.2021)
- Added new color icon in AmigaOS3.2 style - many thanks to Mason!
- Rendering: Added tabulator support, defaults to 8 spaces for each tab.
  Can be configured with the (ToolType / CLI) argument TABSIZE.
- Navigation: Added a text search function.
- Navigation: Added more commands to navigate between diff blocks. 
- Layout: Improved the progress window layout.
- Behavior: Removed the (ToolType / CLI) argument ASKONWORKBENCH. 
  An AppIcon is used instead but only available when ADiffView is 
  started from the Workbench. Double clicking on the AppIcon brings 
  ADiffView to front. When files are dropped on the AppIcon, their 
  names are inserted into the open files window on an empty file name 
  gadget. The AppIcon can be disabled with the ToolType NOAPPICON.
- Performance: Improved the reading of input files. Now each file is 
  read as a whole and no unnecessary string copying is done anymore.
- Development: Widely changed the internal application structure.
  Now using C++ exceptions and some basic STL - cleaner code and more 
  coding fun for me. But this comes at a cost. The binary size increased
  from about 70k to 190k even before new features were implemented. 
  The use of exceptions also drops MC68000 compatibility, so at least 
  a 68020 CPU is needed now.

1.2 (01.01.2020)
- Fixed a bug introduced in version 1.1 which produced Enforcer 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) argument NOLINENUMBERS to turn of the
  display of 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


===========
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
PERMISSION  UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP     NAME
---------- ----------- ------- ------- ------ ---------- ------------ ----------
[unknown]                 1366    1902  71.8% -lh5- 4219 Nov 16 17:55 ADiffView.info
[unknown]               112324  256184  43.8% -lh5- fb88 Apr  9 17:58 ADiffView/ADiffView
[unknown]                 4852   12528  38.7% -lh5- e105 Apr  9 17:49 ADiffView/ADiffView.guide
[unknown]                 1604    2074  77.3% -lh5- 8876 Nov 16 17:55 ADiffView/ADiffView.guide.info
[unknown]                 2136    3089  69.1% -lh5- 4efb Dec 12 14:12 ADiffView/ADiffView.info
[unknown]                  999    1951  51.2% -lh5- 720b Nov 16 17:55 ADiffView/LICENSE-3RD-PARTY.txt
[unknown]                 1028    1568  65.6% -lh5- 5b8a Nov 16 17:55 ADiffView/LICENSE-3RD-PARTY.txt.info
---------- ----------- ------- ------- ------ ---------- ------------ ----------
 Total         7 files  124309  279296  44.5%            Apr  9 23:15

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