1
0
Files
irix-657m-src/eoe/cmd/xdiff/Xdiff.ad
2022-09-29 17:59:04 +03:00

610 lines
22 KiB
Plaintext

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! X Application Defaults for xdiff. !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! xdiff look MUCH more polished!
*sgiMode: true
*useSchemes: all
*useEnhancedFSB: true
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! General Appearance Defaults
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
xdiff.geometry: 1200x600
*confirmWrite: True
*tabWidth: 8
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Defaults for the Transient Windows
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
*fileLister.title: Save As
*confirmWindow.title: Confirm
*confirmWindow.geometry: +100+150
*helpWindow_popup.title: Help
*helpWindow_popup*messageWindow.width: 500
*helpWindow_popup*messageWindow.height: 500
*helpWindow_popup.width: 500
*helpWindow_popup.height: 500
Xdiff*helpWindow_popup*XmLabel*background: SGI_DYNAMIC ReadOnlyBackground
Xdiff*helpWindow_popup*XmLabel*foreground: SGI_DYNAMIC TextForeground
*searchWindow.title: Search
*searchWindow.geometry: +400+250
*searchWindow*applyLabelString: Search
*searchWindow*selectionLabelString: Search Pattern:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Accelerator Keys for the Menu Buttons
! These will seem natural for VI users.
! EMACS users should probably change them.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
*saveAs.accelerator: Ctrl<Key>S
*saveAs.acceleratorText: Ctrl+S
*exit.accelerator: Ctrl<Key>Q
*exit.acceleratorText: Ctrl+Q
*searchNext.accelerator: Ctrl<Key>F
*searchNext.acceleratorText: Ctrl+F
*searchPrevious.accelerator: Ctrl<Key>B
*searchPrevious.acceleratorText: Ctrl+B
*scrollUp.accelerator: <Key>Prior
*scrollUp.acceleratorText: Page Up
*scrollDown.accelerator: <Key>Next
*scrollDown.acceleratorText: Page Down
*cursorDown.accelerator: <Key>Down
*cursorDown.acceleratorText: Down Arrow
*cursorUp.accelerator: <Key>Up
*cursorUp.acceleratorText: Up Arrow
*cursorTop.accelerator: <Key>Home
*cursorTop.acceleratorText: Home
*cursorBottom.accelerator: <Key>End
*cursorBottom.acceleratorText: End
*redoDiff.accelerator: Ctrl<Key>R
*redoDiff.acceleratorText: Ctrl+R
*selectGlobalLeft.accelerator: Ctrl<Key>L
*selectGlobalLeft.acceleratorText: Ctrl+L
*selectGlobalRight.accelerator: Ctrl<Key>R
*selectGlobalRight.acceleratorText: Ctrl+R
*selectGlobalNeither.accelerator: Ctrl<Key>N
*selectGlobalNeither.acceleratorText: Ctrl+N
*unselectGlobal.accelerator: Ctrl<Key>U
*unselectGlobal.acceleratorText: Ctrl+U
*tabs4.accelerator: <Key>4
*tabs4.acceleratorText: 4
*tabs8.accelerator: <Key>8
*tabs8.acceleratorText: 8
*selectRegionLeft.accelerator: <Key>l
*selectRegionLeft.acceleratorText: L
*selectRegionRight.accelerator: <Key>r
*selectRegionRight.acceleratorText: R
*selectRegionNeither.accelerator: <Key>d
*selectRegionNeither.acceleratorText: D
*unselectRegion.accelerator: <Key>u
*unselectRegion.acceleratorText: U
*nextDifference.accelerator: <Key>n
*nextDifference.acceleratorText: n
*previousDifference.accelerator: <Key>p
*previousDifference.acceleratorText: p
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<! Colours and fonts for text areas
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
*fontCommon: *-clean-medium-r-normal-*-14-*
*fgcCommon: black
*bgcCommon: grey
*fgcOnly: black
*bgcOnly: darkseagreen2
*fgcAbsent: black
*bgcAbsent: grey64
*fgcChanged: black
*bgcChanged: palegoldenrod
*fgcSelected: black
*bgcSelected: plum
*fgcDeleted: black
*bgcDeleted: slategrey
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Menu Strings and Mnemonics.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
*fileMenu.labelString: File
*fileMenu.mnemonic: F
*saveLeft.labelString: Save as Left
*saveRight.labelString: Save as Right
*saveAs.labelString: Save As...
*exit.labelString: Exit
*editMenu.labelString: Edit
*editMenu.mnemonic: E
*search.labelString: Search ...
*searchNext.labelString: Search Forward
*searchPrevious.labelString: Search Backward
*scrollDown.labelString: Scroll Down
*scrollUp.labelString: Scroll Up
*cursorDown.labelString: Cursor Down
*cursorUp.labelString: Cursor Up
*cursorTop.labelString: Cursor Top
*cursorBottom.labelString: Cursor Bottom
*redoDiff.labelString: Redo Diff
*globalMenu.labelString: Global
*globalMenu.mnemonic: G
*selectGlobalLeft.labelString: Select Left
*selectGlobalRight.labelString: Select Right
*selectGlobalNeither.labelString: Select Neither
*unselectGlobal.labelString: Unselect
*tabs4.labelString: Tabs at 4
*tabs8.labelString: Tabs at 8
*lineNumbers.labelString: Line Numbers
*regionMenu.labelString: Region
*regionMenu.mnemonic: R
*selectRegionLeft.labelString: Select Left
*selectRegionRight.labelString: Select Right
*selectRegionNeither.labelString: Select Neither
*unselectRegion.labelString: Unselect
*splitLeft.labelString: Split Left
*splitRight.labelString: Split Right
*lineMenu.labelString: Line
*lineMenu.mnemonic: L
*selectLineRight.labelString: Select Right
*selectLineLeft.labelString: Select Left
*selectLineNeither.labelString: Select Neither
*unselectLine.labelString: Unselect
*helpMenu.labelString: Help
*helpMenu.mnemonic: H
*onContext.labelString: On Context
*whatsNew.labelString: What's New
*aboutXdiff.labelString: About Xdiff
*nextDifference.labelString: Next Difference
*previousDifference.labelString: Previous Difference
*nextUnselected.labelString: Next Unselected
*previousUnselected.labelString: Previous Unselected
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! User Message Strings.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
*msgWriteFailed: Writing to '%s' failed.
*msgWriteSucceeded: '%s' written successfully.
*msgNoSelection: You have not made a selection for this difference.
*msgClickWidget: Click on the widget that you want help for.
*msgSplit: You can only split regions of changed text.
*msgOkSave: Ok to save to file
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Help messages
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
*helpWindow*aboutXdiff.labelString: \
\n\
ABOUT XDIFF\n\
\n\
xdiff - X11/Motif based file comparator and merge tool.\n\
\n\
SYNOPSIS\n\
xdiff [-Dwib] [-N stdin name] path1 path2\n\
\n\
OVERVIEW\n\
xdiff is a graphical browser for viewing the differences\n\
between two files and can be used to produce a merged\n\
version. The text of the two files are presented side by\n\
side with their differences highlighted for easy\n\
identification.\n\
\n\
The two paths supplied on the command line identify the\n\
files to be compared. One of the two paths must be a file.\n\
The other may be one of three things. Another file, a\n\
directory, in which case the last component of the file name\n\
will be appended to the directory to form the other file\n\
name, or a '-', in which case the input for that path will\n\
be read from standard input.\n\
\n\
OPTIONS FOR XDIFF\n\
-N When input is read from stdin this option specifies the\n\
string to use in place of it's name in the title bar.\n\
If not specified the string "<stdin>" is used.\n\
\n\
-D If there are no differences then exit quietly with exit\n\
code of 0.\n\
\n\
-w Passed on to diff(1). Ignore whitespace when comparing\n\
the two files.\n\
\n\
-b Passed on to diff(1). Ignore trailing blanks when\n\
comparing the two files.\n\
\n\
-i Passed on to diff(1). Ignore case when comparing the\n\
two files.\n\
\n\
- Not really an option. Use stdin as one of the files.\n\
See above.\n\
\n\
DESCRIPTION\n\
The xdiff window is divided into 4 main areas. These are,\n\
the menu bar at the top of the window, a message line just\n\
below it, an overview area on the right side of the window\n\
and a text area occupying the remainder. The text area is\n\
further divided into two text windows, one for each file, a\n\
vertical slider between them and a horizontal slider\n\
underneath each text area.\n\
\n\
FILES\n\
xdiff uses a temporary file when reading from stdin. This\n\
file will be located in $TMPDIR if it is defined otherwise\n\
it will be located in /usr/tmp. The file name will be of\n\
the form xdiffXXXXXX.\n\
\n\
Application defaults for xdiff can be found in\n\
/usr/lib/X11/app-defaults/Xdiff.\n\
\n\
SEE ALSO\n\
gdiff(1), diff(1).\n\
\n\
AUTHOR\n\
Rudy Wortel <rudy@alias.com>\n
*helpWindow*menuBar.labelString: \
\n\
MENU BAR\n\
\n\
xdiff has a menu bar consisting of six buttons. These are\n\
listed below and described in more detail in the help for each\n\
button.\n\
\n\
File\n\
Contains output commands and exit.\n\
\n\
Edit\n\
Contains searching and cursor movement functions.\n\
\n\
Global\n\
Contains functions that apply to the entire file.\n\
\n\
Region\n\
Contains functions that apply to a single difference\n\
region.\n\
\n\
Line\n\
Contains functions that apply to a single difference\n\
line.\n\
\n\
Help\n\
Interface to access the online help.\n
*helpWindow*fileMenu.labelString: \
\n\
FILE MENU\n\
\n\
This menu is used to save the merged text to a file and to\n\
exit xdiff. Before a save can be performed all differenced\n\
must have a selection. If not, an error message is\n\
displayed in the message line and the cursor line is moved\n\
to the first line which does not have a selection. After a\n\
save to a file, a message will be displayed in the message\n\
line to indicate the status of the save. If the resource\n\
confirmWrite is set to True then a confirmation dialog is\n\
presented before a save allowing the user to confirm the\n\
write or cancel the operation. The default for the\n\
confirmWrite resource is True.\n\
\n\
If you attempt to save to the left file or the right file\n\
when that file has been read from the standard input, xdiff\n\
will write the output to standard output. This allows xdiff\n\
to be used in a filter chain like all well behaved Unix\n\
utilities.\n\
\n\
Save as Right\n\
Short cut to save the merged text to the file on the\n\
right.\n\
\n\
Save as Left\n\
Short cut to save the merged text to the file on the\n\
left.\n\
\n\
Save As ...\n\
Save As will present the user with the Motif file\n\
selection box. If the user presses the OK button then\n\
the merged text will be written to the specified file\n\
subject to the confirmation described above.\n\
\n\
When writing the regions of common text using Save As\n\
the text from the left file is used. This may yeild\n\
surprises if the -w -b -i flags are used. Although the\n\
text is indicated as being the same it may not be.\n\
\n\
Exit\n\
Leave xdiff unconditionally.\n
*helpWindow*editMenu.labelString: \
\n\
EDIT MENU\n\
\n\
This menu contains functions for search and cursor movement.\n\
\n\
Search ...\n\
Search will present a dialog box containing an editable\n\
text feild and a Search and Cancel button. The user\n\
may enter a regular expression in the text feild to\n\
specify the search pattern. Pressing Enter or pressing\n\
the Search button will initiate the search on all text\n\
in both files. A small diamond will appear in the\n\
overview area for each line that matches the search\n\
pattern. To move to a match you may click on one of the\n\
diamonds in the overview area or use the Search Next or\n\
Search Previous buttons from this menu.\n\
\n\
Search Next\n\
Move the cursor from its current position to the next\n\
match from either file. If there are no more matches\n\
then it the cursor is positioned at the bottom.\n\
\n\
Search Previous\n\
Move the cursor from its current position to the\n\
previous match from either file. If there are no more\n\
matches then it the cursor is positioned at the top.\n\
\n\
Scroll Down\n\
The cursor line is moved down half the number of\n\
visible lines and then that line is centered in the\n\
window if possible. The functionality of this and the\n\
following buttons in this menu are really not required\n\
since it can all be done using the scroll bars. They\n\
are included so that accelerators may be added. In this\n\
way the operation of xdiff can be completely controlled\n\
from the keyboard.\n\
\n\
Scroll Up\n\
The cursor line is moved up half the number of visible\n\
lines and then that line is centered in the window if\n\
possible.\n\
\n\
Cursor Down\n\
The cursor line is moved to the next line. That line is\n\
the centered in the window if possible. This gives the\n\
effect of the text scrolling under a stationary cursor.\n\
\n\
Cursor Up\n\
The cursor line moves as above but in the other\n\
direction.\n\
\n\
Cursor Top\n\
The cursor line is set to the first line. That line is\n\
displayed at the top of the window.\n\
\n\
Cursor Bottom\n\
The cursor line is set to the last line. That line is\n\
displayed at the bottom of the window of possible.\n\
\n\
Redo Diff\n\
'diff' is run on the files again. Doing so allows changing\n\
one of the files with a text editor and seeing how the two\n\
files then compare. This is especially useful for certain\n\
file merging.\n
*helpWindow*globalMenu.labelString: \
\n\
GLOBAL MENU\n\
\n\
This menu contains operation that affect the entire file.\n\
\n\
Select Left\n\
Selects all the difference regions from the left file.\n\
\n\
Select Right\n\
Selects all the difference regions from the right file.\n\
\n\
Select Neither\n\
All regions from both files are unselected. Only common\n\
text will be included in the merged output.\n\
\n\
Unselect\n\
Removes all selections that have been made.\n\
\n\
Tabs 4\n\
Specifies that tabs should be expanded to 4 spaces.\n\
\n\
Tabs 8\n\
Specifies that tabs should be expanded to 8 spaces.\n\
\n\
Line Numbers\n\
Each line of text will be prefixed with the line number\n\
from its file. Regions of absent text will not have a\n\
line number.\n
*helpWindow*regionMenu.labelString: \
\n\
REGION MENU\n\
\n\
The functions of the Region Menu use the location of the\n\
cursor line to specify the region for which the function is\n\
to be performed. These functions will only work when the\n\
cursor line is on a difference.\n\
\n\
Select Right\n\
The entire difference region from the right file is\n\
selected.\n\
\n\
Select Left\n\
The entire difference region from the left file is\n\
selected.\n\
\n\
Select Neither\n\
Both the left and the right regions are unselected.\n\
Neither region will be included in the merged output.\n\
\n\
Unselect\n\
Any previous selection made to this region will be\n\
removed.\n\
\n\
Split Right\n\
In the case when the text has changed between the left\n\
and the right files and it is desired to have both\n\
differences appear in the merged output split right can\n\
be used to create two differences so that each can then\n\
be selected individually. Split right will list the\n\
text from the right file first and then the text from\n\
the left file. Any selection that has been previously\n\
made to the region will be applied to both regions\n\
after the split.\n\
\n\
Split Left\n\
Same as Split Right except that the text from the left\n\
file is listed first.\n
*helpWindow*lineMenu.labelString: \
\n\
LINE MENU\n\
\n\
This menu's functions use the location of the cursor line to\n\
specify the line for which the operation is to be performed.\n\
These functions will only work when the cursor line is on a\n\
difference.\n\
\n\
Select Right\n\
Only the cursor line is selected from the right file.\n\
\n\
Select Left\n\
Only the cursor line is selected from the left file.\n\
\n\
Select Neither\n\
The cursor line for both sides are unselected and so\n\
neither line will be included in the merged output.\n\
\n\
Unselect\n\
Any previous selection made to this line will be\n\
removed.\n
*helpWindow*helpMenu.labelString: \
\n\
HELP MENU\n\
\n\
On Context\n\
To obtain help for any widget in the main window.\n\
Selecting the help on context button will cause the\n\
cursor to change to a question mark. Move this cursor\n\
to any of the widgets and click. A help window will\n\
appear to describe the widget and it interactions.\n\
\n\
About xdiff\n\
Provides general information about xdiff.\n
*helpWindow*viewWindow.labelString: \
\n\
OVERVIEW WINDOW\n\
\n\
The overview window appears at the right side of the xdiff\n\
window. It's purpose is to show graphically the number,\n\
location and size of the differences between the two files.\n\
This display consists of two columns representing the files\n\
and their differences and an area in between where lines\n\
indicate where the differences occur with respect to the\n\
other file. A small arrow is shown in each column and\n\
represents the position of the cursor line in that file.\n\
The relative lengths of the files are shown by comparing the\n\
lengths of the two columns.\n\
\n\
Pressing any button while the pointer is in the overview\n\
area will move the cursor line to the position in the file\n\
indicated by the pointer position. If the pointer is in the\n\
left half of the overview window the line will be determined\n\
from the left file and from the right file if the pointer is\n\
in the right half. The cursor line will then be displayed\n\
in the center of the text windows.\n
*helpWindow*textWindow.labelString: \
\n\
TEXT WINDOW\n\
\n\
xdiff uses diff(1) to determine the differences between the\n\
two files. The text of the two files is displayed in two\n\
scrollable windows in the main area of the window.\n\
Differences are highlighted using different colours for the\n\
foreground and background. These may be specified by the\n\
user as described below in the section on user preferences.\n\
A vertical slider separates the two text areas and controls\n\
the vertical positioning of both text areas simultaneously.\n\
The size of the thumb of the slider is scalled to represent\n\
the amount of text visible in the windows.\n\
\n\
xdiff can be used to merge the differences from the two\n\
files into third. To select the desired differences the user\n\
interacts as follows. To write this merged version see the\n\
section of the File menu.\n\
\n\
With the pointer in the left window and pressing the left\n\
button the cursor line moves to the line under the pointer.\n\
If this line is in a difference region then the the left\n\
region is selected. Similarly the differences in the right\n\
window may be selected by pressing the left button on the\n\
difference in the right window.\n\
\n\
Pressing the middle button with the pointer in either the\n\
left or right windows will move the cursor line to the line\n\
under the pointer. If this is within a difference region\n\
then a selection of only the cursor line is made. This\n\
allows a finer level of selection of which text will appear\n\
in the merged output.\n\
\n\
Holding the Shift key will cause the region or line, as\n\
described above, to have it's selection removed.\n\
\n\
Pressing the right button while in either the left or right\n\
windows will post a popup menu. This popup's methods are to\n\
move to other difference regions. Accelerators may be\n\
attached to provide quick navigation using the keyboard.\n\
\n\
Next Difference\n\
Go to the first line of the next difference region.\n\
\n\
Previous Difference\n\
Go to the last line of the previous difference region.\n\
\n\
Next Unselected\n\
Go the the first line of the next difference region\n\
that is still unselected.\n\
\n\
Previous Unselected\n\
Go the the last line of the previous difference region\n\
that is still unselected.\n
*helpWindow*messageLine.labelString: \
\n\
This line is used to display user prompts and error messages.\n
*helpWindow*horizontalScroll.labelString: \
\n\
HORIZONTAL SCROLL BAR \n\
\n\
Its a standard scroll bar thing.\n
*helpWindow*verticalScroll.labelString: \
\n\
VERTICAL SCROLL BAR \n\
\n\
Its a standard scroll bar thing.\n