Appendix L: Yata diff
Yata version 3+ has an internal differ. A right-click on a table’s tab shows a
popup with several operations including these four:
- Select diff1 (selects the currently displayed table as diff1)
- Select diff2 (selects the currently displayed table as diff2)
- Reset diffs (clears tables of their diff flags)
- Justify tables (re-widths the cols of the two diffed tables so they are
Notes: diff1 must be selected before diff2. Diff2 can be re-selected, but
re-selecting diff1 causes diff2 to be cleared; diff2 must be selected after
diff1. Reloading a 2da causes its diff to be cleared.
Select diff2 causes four noticable things to happen:
- cells with texts that differ will be rendered with a teal background color
- the tables’ cols will be justified automatically
- the tables will scroll in unison if possible
- the DifferDialog will appear. It lists any differences between col headers
and row counts. Additionally a Goto button in the lower left corner of the
dialog can be used to cycle (forward only) through cell texts that are different
in the two tables. Note that the count of cell differences includes the ID cols
but their backgrounds will not be colored teal (since the ID col is a frozen
A right-click on a diffed cell shows a popup with several operations including
- merge to other - Ce (copies the text in the selected cell to the other table)
- merge to other - Ro (copies the texts of the row of the selected cell to the
The selected cell’s position (x/y) must be present in both tables. Rows do not
have to be the same length; any cells that overflow will be filled with “****”.
Merges of multiple cells or rows is not allowed. That’s what Appendix M:
WinMerge is for …
Appendix M: WinMerge
The operation under 2da Ops->External diff/merger will be enabled if the path to
your WinMerge executable is specified in Settings.Cfg by the variable “diff=”
diff=C:\Program Files (x86)\WinMerge\WinMergeU.exe
A diff is performed in Yata from its Tab menu (see Appendix L: Yata diff). If
you are doing a diff and the External diff/merger is invoked, WinMerge should
start with the two diffed files loaded.
Note that if you’re not doing a diff in Yata and select the operation, WinMerge
should start with a dialog asking what file you’d like to diff against the
currently displayed 2da.
Also note that kdiff3 accepts the same commandline file arguments as WinMerge,
so the path to its executable can be assigned in Settings.Cfg if preferred.
If a file is saved in the external differ, Yata’s file monitor should pop up
asking what to do (Reload file, Close 2da, or Cancel).