------------------------------------------------------------------------------ TkDiff v1.0b9 06/16/95 ------------------------------------------------------------------------------ TkDiff is a graphical front-end for the standard Unix 'diff' utility. Its features include: + Support for Tk 4.0. + RCS *and* CVS support (CVS support as of 1.0b9). + Highlighted difference regions. + Side-by-side viewing of files. + Linked (synchronized) scrolling of the two files. + Random access to difference regions. + On-line help. ------------------------------------------------------------------------------ Changes from 1.0b8 ------------------------------------------------------------------------------ I redid/revamped the look of the startup sequence thanks to valuable suggestions (and code!) from Greg McFarlane and Warren Jones. In particular, you should note the messages that show up in the label at the bottom of the window as files are loaded, diffed and marked. Thanks, guys! I added CVS support thanks to prodding (and code!) from D. Elson (Del), the author of tkCVS. As a by-product, I expanded (slightly) the options available via the RCS support that's been in since 1.0b7 (in particular, you can now do "tkdiff -rREV -r FILE" to compare FILE with the last checked-in version. The CVS support amounts to CVS equivalents for all of the RCS flags added in 1.0b7 (in fact, you can swap "-c" for "-r" and you should get useful results). Thanks, Del! I'm still working on the merge capability! :-) ------------------------------------------------------------------------------ Changes from 1.0b7 ------------------------------------------------------------------------------ I moved the part of the code that sizes the window so that, now, the window is properly sized at the outset rather than after the 'diff' processing has been done. Apparently, v1.0b7 is blowing up for a lot of people, much like 1.0b5 did. I'm still open to explanations as to why doing it the way it is in 1.0b7 (and 1.0b5) causes Tk to bomb... I also removed the "Computing Differences..." popup, since it was causing grief for those people who don't use RandomPlacement. It was just there to let you know that something was going on, anyway. This is, then, mostly just a bug-fix release. ------------------------------------------------------------------------------ Changes from 1.0b6 ------------------------------------------------------------------------------ I added Tk 4.0-awareness... At this point, TkDiff should work with both Tk 3.x or 4.0. I replaced a lot of the calls to 'pack' with calls to 'place', in an attempt to make the result of resizing the main window more pleasant. I also added a 'center' button, which centers the top lines of the current difference regions in their respective text widgets (I got tired of having a difference region start at the bottom of the screen). I took out the filename completion code and put in RCS support instead. At this point, you should be able to compare two files via: tkdiff or compare a file with the most recent RCS version via: tkdiff or compare a file with a particular RCS version via: tkdiff -r or compare two different RCS-stored versions of a file via: tkdiff -r -r Lastly, I added a 'config' button which allows you to customize the look & feel of TkDiff without having to edit your ~/.tkdiffrc manually. ------------------------------------------------------------------------------ Changes from 1.0b5 ------------------------------------------------------------------------------ I removed the iconify/deiconify step (for the main window) from the startup code. It seems to have been the cause of one of the nastier bugs people were seeing. If somebody can explain it to me, I'm all ears... Is this a known Tcl/Tk bug, perchance? I added the patch that Joe Moss sent (thanks, Joe!) to fix one of the other problems people were having... Lastly, I replaced the man page with one whipped up by Warren Jones (thanks, Warren!). As you can see, this is (for the most part) just a bug-fix release... ------------------------------------------------------------------------------ Changes from 1.0b4 ------------------------------------------------------------------------------ I fixed the 'chdir' problem that people were having... If you still see this problem, let me know (I can't imagine why it'd still happen, though). I added a "Computing differences..." popup (which goes away on its own) to let you know that TkDiff is doing something, but isn't yet ready to show you the differences between your two files. ------------------------------------------------------------------------------ Tar-file Contents ------------------------------------------------------------------------------ This tar file should have contained three things: 1. This README. 2. The TkDiff wish script. 3. A very brief man page (which contains just enough information to get you started, and to let you know about the on-line help). ------------------------------------------------------------------------------ Configuration ------------------------------------------------------------------------------ To configure the TkDiff script for your site, you'll need to edit two lines. The first is the top-most line in the file: #!/usr/bin/env wish-f Change it to whatever will causes your system run the TkDiff source file through "wish -f" at startup. Note that 'wish-f' (as it appears above) is *not* a typo -- there's *no* space between the 'wish' and the '-f'. At my site, we've got two or three different platforms, each with their own set of executables. 'wish-f' is a script that chooses the right version of 'wish' to execute, and gives it the '-f' flag for free. I've never had much luck with: #!/path/to/wish -f for some reason, yet the '/usr/bin/env wish-f' approach has always worked... The other change you'll need to make is to the line that looks like: set emacs_bindings_file \ "/homes/klassa/public/lib/tcl-tk-lib/bindings.tk" Change it so that it points to your copy of Paul Raines' Emacs-bindings source file. If you don't have it, don't worry (and don't change this line, either -- there's no need)... You just won't get Emacs-style keybindings in the entry widgets. There really aren't that many entry widgets in TkDiff anymore, anyway (not since I took out the filename completion code), so this isn't as big a deal as it once was... Suffice it to say, if you've got the bindings file and want to use it, feel free. If not, don't sweat it (and you don't need to change anything). The bindings file can be obtained as part of the TkMail distribution (see the Tcl/Tk FAQ for the location). ------------------------------------------------------------------------------ "Beta" Status ------------------------------------------------------------------------------ This software is still in a "beta" phase. It's been tested, but it keeps getting changed as new features are suggested to me (and even implemented by ambitious users). If you have suggestions on how I can make TkDiff better or faster or easier to use, please let me know. Thanks! ------------------------------------------------------------------------------ Disclaimer ------------------------------------------------------------------------------ THIS SOFTWARE IS PROVIDED BY ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL JOHN KLASSA OR ALCATEL NETWORK SYSTEMS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ Getting the Latest Version ------------------------------------------------------------------------------ The latest version of TkDiff should always be available from ftp.aud.alcatel.com. If it's not there yet, or you don't have access to ftp, you can always get it by sending mail to klassa@aur.alcatel.com with the following subject: @CMD send-tkdiff-dist The "@CMD" diverts your mail into my auto-reply mechanism, and the "send-tkdiff-dist" tells my auto-reply mechanism to send you the latest version of TkDiff (as a uuencoded, GNU-zipped tar file). ------------------------------------------------------------------------------ Future Directions ------------------------------------------------------------------------------ Numerous people have asked for the ability to merge two files into one... I've given this some thought, but the interface to such a thing isn't clear to me. If you have some insights, please speak up! At this point, adding this is first on my "to do" list. [1.0b9 Update to 1.08b Update: I'm *still* working on merging :-).] ------------------------------------------------------------------------------ Reaching the Author ------------------------------------------------------------------------------ I can be reached via klassa@aur.alcatel.com. Enjoy! John -- John Klassa 919-850-1246 \ /\ /\ Alcatel Network Systems Subject: @CMD help \ /\ & \/ \ Raleigh, NC, USA for info... \/ \/ \ -------------------------------------------------------------------------------