Beyond Compare
From Pickwiki
Jump to navigationJump to searchBeyond Compare UV Dictionary formatter
http://farm5.static.flickr.com/4024/4663375640_cb1cf442ba.jpg
- Works with Beyond Compare - allows you to compare most UV dictionary items.
- Written in Javascript.
- Save this to c:\program files\Beyond Compare 3\helpers\UVDictCompare.js
- Setup a new Tools/File Format for UV Dictionaries.
- Under the Conversion tab - conversion drop down select: External Program
- Loading: cscript helpers\UVDictCompare.js %s %t %n
http://farm2.static.flickr.com/1269/4665084040_6bf2fd0799.jpg
// BC-UVDict Compare
// This script formats a UV dictionary item for compare.
// It is then opened with Beyond Compare (File Formats, Conversion)
// Stuart Boydell 31-Oct-2009
// 1. The dictionary items to compare are stored in a type19 file in UV
// - I-types should have attribute 10 and up deleted to remove compiled binary 'stuff'.
// - Expects type 19 record to be in the following format:
// hostName:@vm:dictPath:@am:dictName:@am:dictId:@am:field(dict<1>,' ',1):@am:system(99):@am:system(19):@am:lower(dictRecord)
// 2. items opened using Beyond Compare - it 'senses' the file type
// 3. BC invokes this script passing in source & target tmp file specs
// 4. this script writes the modified version of the dict to the target file
// 5. BC then compares these files.
// 6. <<todo>> writeback
var of, oa, fs, ft, i, j, z, zz;
var _vm = String.from[[CharCode]](253)
of = new [[ActiveXObject]]('Scripting.[[FileSystemObject]]');
oa = WScript.Arguments;
// take the source & target arguments from BC
fs = of.[[OpenTextFile]](oa(0),1,false);
ft = of.[[OpenTextFile]](oa(1),2,false);
// Read the dict item then pull att 7
z = fs.[[ReadAll]]();
zz = z.split('\n')[6].split(_vm);
//ft.[[WriteLine]]('File Path:' + oa(2).substr(0,oa(2).indexOf('//',10)));
ft.[[WriteLine]]('File Path:' + z.split('\n')[0].split(_vm)[1]);
ft.[[WriteLine]]('Dict Id :' + z.split('\n')[2]);
ft.[[WriteLine]]('---');
ft.Write(zz.join('\r\n'));
fs.Close
ft.Close
Beyond Compare SB+ Paragraph formatter
- Works with Beyond Compare - allows you to compare SB+ Paragraph Processes.
- Written in Javascript.
- Save this to c:\program files\Beyond Compare 3\helpers\SBParaCompare.js
- Setup a new Tools/File Format for SB Paragraphs.
- Under the Conversion tab - conversion drop down select: External Program
- Loading: cscript helpers\SBParaCompare.js %s %t %n
// BC-SB Paragraph Compare
// This scripts uses the output from a type 19 process file
// it is then used with Beyond Compare (File Formats, Conversion)
// Stuart Boydell 21-Dec-2009
// 0. setup a new Tools[[/File]] Format for SB Paragraphs. Loading: cscript [[SBParaCompare]].js %s %t %n
// 1. The paragraph items to compare are stored in a type19 file in U2
// 2. items are opened using Beyond Compare - it normally 'senses' the file type - but you can use the format drop down to force it.
// 3. BC invokes this script passing in source & target tmp file specs
// 4. this script writes the modified version of the process to the target file
// 5. BC then compares these files.
var of, oa, fs, ft, i, j, z, zz, re, lsep, ftyp;
var _vm = String.from[[CharCode]](253);
re = /\r\n/; // test for windows type newline
of = new [[ActiveXObject]]('Scripting.[[FileSystemObject]]');
oa = WScript.Arguments;
// take the source & target arguments from BC
fs = of.[[OpenTextFile]](oa(0),1,false);
ft = of.[[OpenTextFile]](oa(1),2,false);
fo = of.[[OpenTextFile]](oa(2),1,false);
// Read the process item then pull att 6
z = fs.[[ReadAll]]();
if (re.test(z)){
lsep = "\r\n";
ftyp = "Win";
} else {
lsep = "\n";
ftyp = "Unix";
}
zz = z.split(lsep);
//ft.[[WriteLine]]('File Path:' + oa(2).substr(0,oa(2).indexOf('//',10)));
ft.[[WriteLine]]('Desc:' + zz[1]);
ft.[[WriteLine]]('Dict:' + zz[4]);
ft.[[WriteLine]]('[[LastUpd]]:' + zz[13]);
//ft.[[WriteLine]]('F-type:' + ftyp);
ft.[[WriteLine]]('---');
ft.Write(zz[5].split(_vm).join(lsep));
fs.Close
ft.Close
Beyond Compare SB+ Paragraph Write back Script
- Works with Beyond Compare - allows you to write back edits.
- Written in Javascript.
- Save this to c:\program files\Beyond Compare 3\helpers\SBParaWriteback.js
- Under the Conversion tab - disable editing <off>
- Saving: cscript helpers\SBParaWriteback.js %s %t %n
// BC-SB Paragraph Compare - Write back
// This writes back to a type 19 process file
// it is then used with Beyond Compare (File Formats, Conversion)
// Stuart Boydell 21-Dec-2009
var of, oa, fs, ft, i, j, z, zz, lsep, re;
var _vm = String.from[[CharCode]](253);
re = /\r\n/; // test for windows type newline
of = new [[ActiveXObject]]('Scripting.[[FileSystemObject]]');
oa = WScript.Arguments;
// take the source & target arguments from BC
fs = of.[[OpenTextFile]](oa(0),1,false);
ft = of.[[OpenTextFile]](oa(1),2,false);
fo = of.[[OpenTextFile]](oa(2),1,false);
// Read the process item then pull att 6
z = fo.[[ReadAll]]();
if (re.test(z)){
lsep = "\r\n";
ftyp = "Win";
} else {
lsep = "\n";
ftyp = "Unix";
}
tt = z.split(lsep);
zz = fs.[[ReadAll]]().split(lsep);
tt[1] = zz[0].split(':')[1];
tt[2] = '';
tt[3] = '';
tt[4] = zz[1].split(':')[1];
tt[5] = zz.splice(4,zz.length).join(_vm);
ft.Write(tt.join(lsep));
fs.Close
ft.Close