Hex Artifact Content Вы: nobody
Вход

Artifact d716cd045823053608a099b58656977f158b4de0:


0000: ef bb bf 24 65 6e 67 69 6e 65 20 4a 53 63 72 69  ...$engine JScri
0010: 70 74 0d 0a 24 75 6e 61 6d 65 20 73 63 72 69 70  pt..$uname scrip
0020: 74 64 65 76 0d 0a 24 64 6e 61 6d 65 20 d0 a0 d0  tdev..$dname ...
0030: b0 d0 b7 d1 80 d0 b0 d0 b1 d0 be d1 82 d0 ba d0  ................
0040: b0 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 be  . ..............
0050: d0 b2 0d 0a 24 61 64 64 69 6e 20 67 6c 6f 62 61  ....$addin globa
0060: 6c 0d 0a 24 61 64 64 69 6e 20 73 74 64 6c 69 62  l..$addin stdlib
0070: 0d 0a 24 61 64 64 69 6e 20 73 74 64 63 6f 6d 6d  ..$addin stdcomm
0080: 61 6e 64 73 0d 0a 24 61 64 64 69 6e 20 73 6e 65  ands..$addin sne
0090: 67 6f 70 61 74 77 6e 64 0d 0a 0d 0a 2f 2a 20 d0  gopatwnd..../* .
00a0: a1 d0 ba d1 80 d0 b8 d0 bf d1 82 2d d0 bf d0 be  ...........-....
00b0: d0 bc d0 be d1 89 d0 bd d0 b8 d0 ba 20 d0 b4 d0  ............ ...
00c0: bb d1 8f 20 d1 80 d0 b0 d0 b7 d1 80 d0 b0 d0 b1  ... ............
00d0: d0 be d1 82 d1 87 d0 b8 d0 ba d0 be d0 b2 20 d1  .............. .
00e0: 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 be d0 b2 20  ............... 
00f0: d0 b4 d0 bb d1 8f 20 d0 a1 d0 bd d0 b5 d0 b3 d0  ...... .........
0100: be d0 bf d0 b0 d1 82 d0 b0 2e 0d 0a 20 2a 20 d0  ............ * .
0110: 90 d0 b2 d1 82 d0 be d1 80 20 20 20 20 20 20 20  .........       
0120: 20 3a 20 d0 90 d0 bb d0 b5 d0 ba d1 81 d0 b0 d0   : .............
0130: bd d0 b4 d1 80 20 d0 9a d1 83 d0 bd d1 82 d0 b0  ..... ..........
0140: d1 88 d0 be d0 b2 2c 20 6b 75 6e 74 61 73 68 6f  ......, kuntasho
0150: 76 40 63 6f 6d 70 61 75 64 2e 72 75 0d 0a 20 2a  v@compaud.ru.. *
0160: 20 d0 94 d0 b0 d1 82 d0 b0 20 d1 81 d0 be d0 b7   ........ ......
0170: d0 b4 d0 b0 d0 bd d0 b8 d1 8f 3a 20 31 38 2e 30  ..........: 18.0
0180: 38 2e 32 30 31 31 0d 0a 20 2a 20 d0 9e d0 bf d0  8.2011.. * .....
0190: b8 d1 81 d0 b0 d0 bd d0 b8 d0 b5 3a 20 0d 0a 20  ...........: .. 
01a0: 2a 20 20 20 20 20 20 2d 20 d0 94 d0 be d0 b1 d0  *      - .......
01b0: b0 d0 b2 d0 bb d1 8f d0 b5 d1 82 20 d0 b2 20 d0  ........... .. .
01c0: ba d0 be d0 bd d1 82 d0 b5 d0 ba d1 81 d1 82 d0  ................
01d0: bd d0 be d0 b5 20 d0 bc d0 b5 d0 bd d1 8e 20 d0  ..... ........ .
01e0: be d0 ba d0 bd d0 b0 20 d0 a1 d0 bd d0 b5 d0 b3  ....... ........
01f0: d0 be d0 bf d0 b0 d1 82 d0 b0 20 d0 bf d1 83 d0  .......... .....
0200: bd d0 ba d1 82 20 22 d0 a0 d0 b5 d0 b4 d0 b0 d0  ..... ".........
0210: ba d1 82 d0 b8 d1 80 d0 be d0 b2 d0 b0 d1 82 d1  ................
0220: 8c 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 22 2c  . ............",
0230: 0d 0a 20 2a 20 20 20 20 20 20 d0 bf d1 80 d0 b8  .. *      ......
0240: 20 d0 b2 d1 8b d0 b1 d0 be d1 80 d0 b5 20 d0 ba   ............ ..
0250: d0 be d1 82 d0 be d1 80 d0 be d0 b3 d0 be 20 d0  .............. .
0260: b8 d1 81 d1 85 d0 be d0 b4 d0 bd d1 8b d0 b9 20  ............... 
0270: d0 ba d0 be d0 b4 20 d1 81 d0 ba d1 80 d0 b8 d0  ...... .........
0280: bf d1 82 d0 b0 20 d0 be d1 82 d0 ba d1 80 d1 8b  ..... ..........
0290: d0 b2 d0 b0 d0 b5 d1 82 d1 81 d1 8f 20 d0 b2 20  ............ .. 
02a0: d1 83 d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 bb  ................
02b0: d0 b5 d0 bd d0 bd d0 be d0 bc 20 d0 b2 20 d0 bd  .......... .. ..
02c0: d0 b0 d1 81 d1 82 d1 80 d0 be d0 b9 d0 ba d0 b0  ................
02d0: d1 85 0d 0a 20 2a 20 20 20 20 20 20 d1 82 d0 b5  .... *      ....
02e0: d0 ba d1 81 d1 82 d0 be d0 b2 d0 be d0 bc 20 d1  .............. .
02f0: 80 d0 b5 d0 b4 d0 b0 d0 ba d1 82 d0 be d1 80 d0  ................
0300: b5 2e 0d 0a 20 2a 0d 0a 20 2a 20 20 20 20 20 20  .... *.. *      
0310: 2d 20 d0 9e d1 82 d1 81 d0 bb d0 b5 d0 b6 d0 b8  - ..............
0320: d0 b2 d0 b0 d0 b5 d1 82 20 d0 b8 d0 b7 d0 bc d0  ........ .......
0330: b5 d0 bd d0 b5 d0 bd d0 b8 d1 8f 20 d0 b2 20 d0  ........... .. .
0340: be d1 82 d0 ba d1 80 d1 8b d1 82 d0 be d0 bc 20  ............... 
0350: d0 bd d0 b0 20 d1 80 d0 b5 d0 b4 d0 b0 d0 ba d1  .... ...........
0360: 82 d0 b8 d1 80 d0 be d0 b2 d0 b0 d0 bd d0 b8 d0  ................
0370: b5 20 d1 84 d0 b0 d0 b9 d0 bb d0 b5 20 d1 81 d0  . .......... ...
0380: ba d1 80 d0 b8 d0 bf d1 82 d0 b0 20 d0 b8 20 d0  ........... .. .
0390: b0 d0 b2 d1 82 d0 be d0 bc d0 b0 d1 82 d0 b8 d1  ................
03a0: 87 d0 b5 d1 81 d0 ba d0 b8 20 0d 0a 20 2a 20 20  ......... .. *  
03b0: 20 20 20 20 d0 bf d0 b5 d1 80 d0 b5 d0 b7 d0 b0      ............
03c0: d0 b3 d1 80 d1 83 d0 b6 d0 b0 d0 b5 d1 82 20 d0  .............. .
03d0: b5 d0 b3 d0 be 2c 20 d1 82 d0 b0 d0 ba d0 b8 d0  ....., .........
03e0: bc 20 d0 be d0 b1 d1 80 d0 b0 d0 b7 d0 be d0 bc  . ..............
03f0: 2c 20 d0 b8 d0 b7 d0 bc d0 b5 d0 bd d0 b5 d0 bd  , ..............
0400: d0 b8 d1 8f 2c 20 d0 b2 d0 bd d0 b5 d1 81 d0 b5  ...., ..........
0410: d0 bd d0 bd d1 8b d0 b5 20 d0 b2 20 d1 81 d0 ba  ........ .. ....
0420: d1 80 d0 b8 d0 bf d1 82 20 d0 b2 d1 81 d1 82 d1  ........ .......
0430: 83 d0 bf d0 b0 d1 8e d1 82 20 d1 81 d1 80 d0 b0  ......... ......
0440: d0 b7 d1 83 20 d0 b1 d0 b5 d0 b7 0d 0a 20 2a 20  .... ........ * 
0450: 20 20 20 20 20 d0 bd d0 b5 d0 be d0 b1 d1 85 d0       ...........
0460: be d0 b4 d0 b8 d0 bc d0 be d1 81 d1 82 d0 b8 20  ............... 
0470: d0 bf d0 b5 d1 80 d0 b5 d0 b7 d0 b0 d0 b3 d1 80  ................
0480: d1 83 d0 b7 d0 ba d0 b8 20 d1 81 d0 ba d1 80 d0  ........ .......
0490: b8 d0 bf d1 82 d0 b0 2e 0d 0a 20 2a 2f 0d 0a 0d  .......... */...
04a0: 0a 73 74 64 6c 69 62 2e 72 65 71 75 69 72 65 28  .stdlib.require(
04b0: 22 6a 73 68 69 6e 74 2e 6a 73 22 2c 20 53 65 6c  "jshint.js", Sel
04c0: 66 53 63 72 69 70 74 29 3b 0d 0a 73 74 64 6c 69  fScript);..stdli
04d0: 62 2e 72 65 71 75 69 72 65 28 22 54 65 78 74 57  b.require("TextW
04e0: 69 6e 64 6f 77 2e 6a 73 22 2c 20 53 65 6c 66 53  indow.js", SelfS
04f0: 63 72 69 70 74 29 3b 0d 0a 73 74 64 6c 69 62 2e  cript);..stdlib.
0500: 72 65 71 75 69 72 65 28 22 53 65 6c 65 63 74 56  require("SelectV
0510: 61 6c 75 65 44 69 61 6c 6f 67 2e 6a 73 22 2c 20  alueDialog.js", 
0520: 53 65 6c 66 53 63 72 69 70 74 29 3b 0d 0a 0d 0a  SelfScript);....
0530: 2f 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  /* *************
0540: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0550: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0560: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 20  *************.. 
0570: 2a 20 20 d0 9d d0 b0 d1 81 d1 82 d1 80 d0 be d0  *  .............
0580: b9 d0 ba d0 b8 20 d1 81 d0 ba d1 80 d0 b8 d0 bf  ..... ..........
0590: d1 82 d0 b0 20 d0 bf d0 be 20 d1 83 d0 bc d0 be  .... .... ......
05a0: d0 bb d1 87 d0 b0 d0 bd d0 b8 d1 8e 2e 0d 0a 20  ............... 
05b0: 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  * **************
05c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
05d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
05e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 20 2a 2f 0d 0a  *********** */..
05f0: 20 0d 0a 2f 2f 20 d0 98 d0 bd d1 82 d0 b5 d1 80   ..// ..........
0600: d0 b2 d0 b0 d0 bb 20 d0 bf d1 80 d0 be d0 b2 d0  ...... .........
0610: b5 d1 80 d0 ba d0 b8 20 d1 80 d0 b5 d0 b4 d0 b0  ....... ........
0620: d0 ba d1 82 d0 b8 d1 80 d1 83 d0 b5 d0 bc d1 8b  ................
0630: d1 85 20 d1 84 d0 b0 d0 b9 d0 bb d0 be d0 b2 2e  .. .............
0640: 0d 0a 76 61 72 20 63 68 65 63 6b 49 6e 74 65 72  ..var checkInter
0650: 76 61 6c 20 3d 20 32 3b 20 0d 0a 0d 0a 2f 2f 20  val = 2; ....// 
0660: d0 a1 d0 bf d1 80 d0 b0 d1 88 d0 b8 d0 b2 d0 b0  ................
0670: d1 82 d1 8c 20 d0 bf d0 b5 d1 80 d0 b5 d0 b4 20  .... .......... 
0680: d0 bf d0 b5 d1 80 d0 b5 d0 b7 d0 b0 d0 b3 d1 80  ................
0690: d1 83 d0 b7 d0 ba d0 be d0 b9 2e 0d 0a 76 61 72  .............var
06a0: 20 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f 61 64   askBeforeReload
06b0: 20 3d 20 74 72 75 65 3b 0d 0a 0d 0a 2f 2f 20 d0   = true;....// .
06c0: 9a d0 be d0 bc d0 b0 d0 bd d0 b4 d0 b0 20 d0 b4  ............. ..
06d0: d0 bb d1 8f 20 d0 b7 d0 b0 d0 bf d1 83 d1 81 d0  .... ...........
06e0: ba d0 b0 20 d1 80 d0 b5 d0 b4 d0 b0 d0 ba d1 82  ... ............
06f0: d0 be d1 80 d0 b0 20 d1 81 d0 ba d1 80 d0 b8 d0  ...... .........
0700: bf d1 82 d0 b0 2e 0d 0a 76 61 72 20 72 75 6e 45  ........var runE
0710: 64 69 74 6f 72 43 6d 64 20 3d 20 22 6e 6f 74 65  ditorCmd = "note
0720: 70 61 64 2e 65 78 65 20 5c 22 25 31 5c 22 22 3b  pad.exe \"%1\"";
0730: 0d 0a 0d 0a 2f 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a  ..../* *********
0740: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0750: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0760: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0770: 2a 0d 0a 20 2a 20 20 d0 9c d0 b0 d0 ba d1 80 d0  *.. *  .........
0780: be d1 81 d1 8b 2e 0d 0a 20 2a 20 2a 2a 2a 2a 2a  ........ * *****
0790: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
07a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
07b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
07c0: 2a 2a 2a 2a 20 2a 2f 0d 0a 0d 0a 66 75 6e 63 74  **** */....funct
07d0: 69 6f 6e 20 6d 61 63 72 6f 73 d0 9d d0 b0 d1 81  ion macros......
07e0: d1 82 d1 80 d0 be d0 b9 d0 ba d0 b0 28 29 0d 0a  ............()..
07f0: 7b 0d 0a 20 20 20 20 76 61 72 20 70 61 74 68 54  {..    var pathT
0800: 6f 46 6f 72 6d 20 3d 20 53 65 6c 66 53 63 72 69  oForm = SelfScri
0810: 70 74 2e 66 75 6c 6c 50 61 74 68 2e 72 65 70 6c  pt.fullPath.repl
0820: 61 63 65 28 2f 6a 73 24 2f 2c 20 27 73 73 66 27  ace(/js$/, 'ssf'
0830: 29 0d 0a 20 20 20 20 2f 2f 20 d0 9e d0 b1 d1 80  )..    // ......
0840: d0 b0 d0 b1 d0 be d1 82 d0 ba d1 83 20 d1 81 d0  ............ ...
0850: be d0 b1 d1 8b d1 82 d0 b8 d0 b9 20 d1 84 d0 be  ........... ....
0860: d1 80 d0 bc d1 8b 20 d0 bf d1 80 d0 b8 d0 b2 d1  ...... .........
0870: 8f d0 b6 d0 b5 d0 bc 20 d0 ba 20 d1 81 d0 b0 d0  ....... .. .....
0880: bc d0 be d0 bc d1 83 20 d1 81 d0 ba d1 80 d0 b8  ....... ........
0890: d0 bf d1 82 d1 83 0d 0a 20 20 20 20 66 6f 72 6d  ........    form
08a0: 20 3d 20 6c 6f 61 64 53 63 72 69 70 74 46 6f 72   = loadScriptFor
08b0: 6d 28 70 61 74 68 54 6f 46 6f 72 6d 2c 20 53 65  m(pathToForm, Se
08c0: 6c 66 53 63 72 69 70 74 2e 73 65 6c 66 29 3b 0d  lfScript.self);.
08d0: 0a 20 20 20 20 66 6f 72 6d 2e 63 68 65 63 6b 49  .    form.checkI
08e0: 6e 74 65 72 76 61 6c 20 3d 20 63 68 65 63 6b 49  nterval = checkI
08f0: 6e 74 65 72 76 61 6c 3b 0d 0a 20 20 20 20 66 6f  nterval;..    fo
0900: 72 6d 2e 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f  rm.askBeforeRelo
0910: 61 64 20 3d 20 61 73 6b 42 65 66 6f 72 65 52 65  ad = askBeforeRe
0920: 6c 6f 61 64 3b 0d 0a 20 20 20 20 66 6f 72 6d 2e  load;..    form.
0930: 72 75 6e 45 64 69 74 6f 72 43 6d 64 20 3d 20 72  runEditorCmd = r
0940: 75 6e 45 64 69 74 6f 72 43 6d 64 3b 0d 0a 20 20  unEditorCmd;..  
0950: 20 20 66 6f 72 6d 2e d0 9e d1 82 d0 ba d1 80 d1    form..........
0960: 8b d1 82 d1 8c d0 9c d0 be d0 b4 d0 b0 d0 bb d1  ................
0970: 8c d0 bd d0 be 28 29 3b 0d 0a 20 20 20 20 66 6f  .....();..    fo
0980: 72 6d 20 3d 20 6e 75 6c 6c 3b 0d 0a 7d 0d 0a 0d  rm = null;..}...
0990: 0a 66 75 6e 63 74 69 6f 6e 20 6d 61 63 72 6f 73  .function macros
09a0: d0 a1 d1 84 d0 be d1 80 d0 bc d0 b8 d1 80 d0 be  ................
09b0: d0 b2 d0 b0 d1 82 d1 8c d0 9a d0 be d0 b4 d0 9e  ................
09c0: d0 b1 d1 80 d0 b0 d0 b1 d0 be d1 82 d1 87 d0 b8  ................
09d0: d0 ba d0 be d0 b2 d0 a4 d0 be d1 80 d0 bc d1 8b  ................
09e0: d0 9d d0 b0 4a 61 76 61 53 63 72 69 70 74 28 29  ....JavaScript()
09f0: 20 7b 0d 0a 0d 0a 20 20 20 20 76 61 72 20 77 20   {....    var w 
0a00: 3d 20 73 74 64 6c 69 62 2e 72 65 71 75 69 72 65  = stdlib.require
0a10: 28 27 54 65 78 74 57 69 6e 64 6f 77 2e 6a 73 27  ('TextWindow.js'
0a20: 29 2e 47 65 74 54 65 78 74 57 69 6e 64 6f 77 28  ).GetTextWindow(
0a30: 29 3b 0d 0a 20 20 20 20 69 66 20 28 21 77 29 20  );..    if (!w) 
0a40: 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 0d 0a 20  return;..    .. 
0a50: 20 20 20 2f 2f 20 d0 95 d1 81 d0 bb d0 b8 20 d0     // ........ .
0a60: b5 d1 81 d1 82 d1 8c 20 d0 b2 d1 8b d0 b4 d0 b5  ....... ........
0a70: d0 bb d0 b5 d0 bd d0 b8 d0 b5 20 2d 20 d0 b8 d1  .......... - ...
0a80: 81 d0 bf d0 be d0 bb d1 8c d0 b7 d1 83 d0 b5 d0  ................
0a90: bc 20 d0 b5 d0 b3 d0 be 2c 20 d0 b8 d0 bd d0 b0  . ......, ......
0aa0: d1 87 d0 b5 20 d0 ba d0 be d0 bd d0 b2 d0 b5 d1  .... ...........
0ab0: 80 d1 82 d0 b8 d1 80 d1 83 d0 b5 d0 bc 20 d0 b2  ............. ..
0ac0: d0 b5 d1 81 d1 8c 20 d0 bc d0 be d0 b4 d1 83 d0  ...... .........
0ad0: bb d1 8c 2e 0d 0a 20 20 20 20 76 61 72 20 63 6f  ......    var co
0ae0: 64 65 54 6f 43 6f 6e 76 65 72 74 20 3d 20 77 2e  deToConvert = w.
0af0: 47 65 74 53 65 6c 65 63 74 65 64 54 65 78 74 28  GetSelectedText(
0b00: 29 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 69 66  );..    ..    if
0b10: 20 28 63 6f 64 65 54 6f 43 6f 6e 76 65 72 74 20   (codeToConvert 
0b20: 3d 3d 20 22 22 29 0d 0a 20 20 20 20 20 20 20 20  == "")..        
0b30: 63 6f 64 65 54 6f 43 6f 6e 76 65 72 74 20 3d 20  codeToConvert = 
0b40: 77 2e 47 65 74 54 65 78 74 28 29 3b 0d 0a 20 20  w.GetText();..  
0b50: 20 20 20 20 20 20 0d 0a 20 20 20 20 76 61 72 20        ..    var 
0b60: 63 6c 61 73 73 4e 61 6d 65 20 3d 20 73 6e 65 67  className = sneg
0b70: 6f 70 61 74 2e 70 61 72 73 65 54 65 6d 70 6c 61  opat.parseTempla
0b80: 74 65 53 74 72 69 6e 67 28 27 3c 3f 22 d0 a3 d0  teString('<?"...
0b90: ba d0 b0 d0 b6 d0 b8 d1 82 d0 b5 20 d0 b8 d0 bc  ........... ....
0ba0: d1 8f 20 d0 ba d0 bb d0 b0 d1 81 d1 81 d0 b0 20  .. ............ 
0bb0: 28 d0 b5 d1 81 d0 bb d0 b8 20 d0 bd d0 b5 20 d0  (........ .... .
0bc0: b7 d0 b0 d0 b4 d0 b0 d0 bd d0 be 20 2d 20 d1 81  ........... - ..
0bd0: d0 be d0 b7 d0 b4 d0 b0 d1 8e d1 82 d1 81 d1 8f  ................
0be0: 20 d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d0 b8 20   .............. 
0bf0: d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 b0 29 22  ..............)"
0c00: 3e 27 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a  >');..        ..
0c10: 20 20 20 20 76 61 72 20 6a 73 43 6f 64 65 20 3d      var jsCode =
0c20: 20 63 6f 64 65 54 6f 43 6f 6e 76 65 72 74 3b 0d   codeToConvert;.
0c30: 0a 20 20 20 20 0d 0a 20 20 20 20 76 61 72 20 72  .    ..    var r
0c40: 65 70 20 3d 20 63 6c 61 73 73 4e 61 6d 65 20 3f  ep = className ?
0c50: 20 63 6c 61 73 73 4e 61 6d 65 20 2b 20 22 2e 70   className + ".p
0c60: 72 6f 74 6f 74 79 70 65 2e 24 31 20 3d 20 66 75  rototype.$1 = fu
0c70: 6e 63 74 69 6f 6e 20 28 24 32 29 20 7b 22 20 3a  nction ($2) {" :
0c80: 20 22 66 75 6e 63 74 69 6f 6e 20 24 31 20 28 24   "function $1 ($
0c90: 32 29 20 7b 22 3b 0d 0a 20 20 20 20 0d 0a 20 20  2) {";..    ..  
0ca0: 20 20 6a 73 43 6f 64 65 20 3d 20 6a 73 43 6f 64    jsCode = jsCod
0cb0: 65 2e 72 65 70 6c 61 63 65 28 2f d0 9f d1 80 d0  e.replace(/.....
0cc0: be d1 86 d0 b5 d0 b4 d1 83 d1 80 d0 b0 5c 73 2b  .............\s+
0cd0: 28 5b 5c 77 d0 90 2d d1 8f 5c 64 5f 5d 2b 29 5c  ([\w..-..\d_]+)\
0ce0: 73 2a 5c 28 28 2e 2a 3f 29 5c 29 2f 69 67 2c 20  s*\((.*?)\)/ig, 
0cf0: 72 65 70 29 3b 0d 0a 20 20 20 20 6a 73 43 6f 64  rep);..    jsCod
0d00: 65 20 3d 20 6a 73 43 6f 64 65 2e 72 65 70 6c 61  e = jsCode.repla
0d10: 63 65 28 2f d0 9a d0 be d0 bd d0 b5 d1 86 d0 9f  ce(/............
0d20: d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83 d1 80 d1 8b  ................
0d30: 2f 69 67 2c 20 22 7d 22 29 3b 0d 0a 20 20 20 20  /ig, "}");..    
0d40: 0d 0a 20 20 20 20 73 74 64 63 6f 6d 6d 61 6e 64  ..    stdcommand
0d50: 73 2e 46 72 6e 74 65 6e 64 2e 43 6c 65 61 72 4d  s.Frntend.ClearM
0d60: 65 73 73 61 67 65 57 69 6e 64 6f 77 2e 73 65 6e  essageWindow.sen
0d70: 64 28 29 3b 20 2f 2f 20 d0 9e d1 87 d0 b8 d1 81  d(); // ........
0d80: d1 82 d0 b8 d1 82 d1 8c 20 d0 be d0 ba d0 bd d0  ........ .......
0d90: be 20 d1 81 d0 be d0 be d0 b1 d1 89 d0 b5 d0 bd  . ..............
0da0: d0 b8 d0 b9 2e 0d 0a 20 20 20 20 4d 65 73 73 61  .......    Messa
0db0: 67 65 28 6a 73 43 6f 64 65 29 3b 0d 0a 20 20 20  ge(jsCode);..   
0dc0: 20 0d 0a 20 20 20 20 72 65 74 75 72 6e 20 74 72   ..    return tr
0dd0: 75 65 3b 0d 0a 7d 0d 0a 20 0d 0a 66 75 6e 63 74  ue;..}.. ..funct
0de0: 69 6f 6e 20 6d 61 63 72 6f 73 d0 9f d0 b5 d1 80  ion macros......
0df0: d0 b5 d0 b7 d0 b0 d0 b3 d1 80 d1 83 d0 b7 d0 b8  ................
0e00: d1 82 d1 8c d0 a2 d0 b5 d0 ba d1 83 d1 89 d0 b8  ................
0e10: d0 b9 d0 a1 d0 ba d1 80 d0 b8 d0 bf d1 82 28 29  ..............()
0e20: 20 7b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 61   {..    ..    va
0e30: 72 20 77 20 3d 20 73 74 64 6c 69 62 2e 72 65 71  r w = stdlib.req
0e40: 75 69 72 65 28 27 54 65 78 74 57 69 6e 64 6f 77  uire('TextWindow
0e50: 2e 6a 73 27 29 2e 47 65 74 54 65 78 74 57 69 6e  .js').GetTextWin
0e60: 64 6f 77 28 29 3b 0d 0a 20 20 20 20 69 66 20 28  dow();..    if (
0e70: 21 77 29 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20  !w) return;..   
0e80: 20 0d 0a 20 20 20 20 76 61 72 20 76 69 65 77 20   ..    var view 
0e90: 3d 20 77 2e 47 65 74 56 69 65 77 28 29 3b 0d 0a  = w.GetView();..
0ea0: 20 20 20 20 69 66 20 28 21 76 69 65 77 29 20 72      if (!view) r
0eb0: 65 74 75 72 6e 3b 0d 0a 20 20 20 20 0d 0a 20 20  eturn;..    ..  
0ec0: 20 20 76 61 72 20 64 6f 63 20 3d 20 76 69 65 77    var doc = view
0ed0: 2e 67 65 74 44 6f 63 75 6d 65 6e 74 28 29 3b 0d  .getDocument();.
0ee0: 0a 20 20 20 20 69 66 20 28 64 6f 63 2e 69 73 4d  .    if (doc.isM
0ef0: 6f 64 69 66 69 65 64 20 7c 7c 20 64 6f 63 2e 70  odified || doc.p
0f00: 61 74 68 2e 6d 61 74 63 68 28 2f 5e 5c 73 2a 24  ath.match(/^\s*$
0f10: 2f 29 29 20 7b 0d 0a 20 20 20 20 09 76 61 72 20  /)) {..    .var 
0f20: 61 6e 73 77 65 72 20 3d 20 28 6e 65 77 20 51 75  answer = (new Qu
0f30: 65 72 79 44 69 61 6c 6f 67 45 78 28 22 d0 a1 d0  eryDialogEx("...
0f40: ba d1 80 d0 b8 d0 bf d1 82 20 d0 b1 d1 8b d0 bb  ......... ......
0f50: 20 d0 b8 d0 b7 d0 bc d0 b5 d0 bd d0 b5 d0 bd 20   .............. 
0f60: d0 b8 20 d0 bf d0 b5 d1 80 d0 b5 d0 b4 20 5b d0  .. .......... [.
0f70: bf d0 b5 d1 80 d0 b5 5d d0 b7 d0 b0 d0 b3 d1 80  .......]........
0f80: d1 83 d0 b7 d0 ba d0 be d0 b9 20 d0 b1 d1 83 d0  .......... .....
0f90: b4 d0 b5 d1 82 20 d0 b7 d0 b0 d0 bf d0 b8 d1 81  ..... ..........
0fa0: d0 b0 d0 bd 2e 20 d0 9f d1 80 d0 be d0 b4 d0 be  ..... ..........
0fb0: d0 bb d0 b6 d0 b8 d1 82 d1 8c 3f 22 29 29 2e 53  ..........?")).S
0fc0: 68 6f 77 28 29 3b 0d 0a 20 20 20 20 09 69 66 20  how();..    .if 
0fd0: 28 61 6e 73 77 65 72 20 3d 3d 20 51 75 65 72 79  (answer == Query
0fe0: 44 69 61 6c 6f 67 45 78 2e 52 65 74 75 72 6e 43  DialogEx.ReturnC
0ff0: 6f 64 65 73 2e 4e 6f 29 20 7b 0d 0a 20 20 20 20  odes.No) {..    
1000: 09 09 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 09  ..return;..    .
1010: 7d 0d 0a 20 20 20 20 09 73 74 64 63 6f 6d 6d 61  }..    .stdcomma
1020: 6e 64 73 2e 46 72 61 6d 65 2e 46 69 6c 65 53 61  nds.Frame.FileSa
1030: 76 65 2e 73 65 6e 64 28 29 3b 0d 0a 20 20 20 20  ve.send();..    
1040: 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 61 72  }..    ..    var
1050: 20 66 75 6c 6c 70 61 74 68 20 3d 20 27 73 63 72   fullpath = 'scr
1060: 69 70 74 3a 27 20 2b 20 64 6f 63 2e 70 61 74 68  ipt:' + doc.path
1070: 2e 72 65 70 6c 61 63 65 28 2f 5e 66 69 6c 65 3a  .replace(/^file:
1080: 5c 2f 5c 2f 2f 69 2c 20 27 27 29 2e 72 65 70 6c  \/\//i, '').repl
1090: 61 63 65 28 2f 5c 2f 2f 67 2c 20 27 5c 5c 27 29  ace(/\//g, '\\')
10a0: 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 61 72  ;..    ..    var
10b0: 20 61 64 64 69 6e 47 72 6f 75 70 20 3d 20 61 64   addinGroup = ad
10c0: 64 69 6e 73 2e 62 79 55 6e 69 71 75 65 4e 61 6d  dins.byUniqueNam
10d0: 65 28 27 53 6e 65 67 6f 70 61 74 4d 61 69 6e 53  e('SnegopatMainS
10e0: 63 72 69 70 74 27 29 2e 6f 62 6a 65 63 74 2e 41  cript').object.A
10f0: 64 64 69 6e 73 54 72 65 65 47 72 6f 75 70 73 2e  ddinsTreeGroups.
1100: 55 73 65 72 41 64 64 69 6e 73 3b 0d 0a 20 20 20  UserAddins;..   
1110: 20 0d 0a 20 20 20 20 76 61 72 20 73 63 72 69 70   ..    var scrip
1120: 74 41 64 64 69 6e 09 3d 20 61 64 64 69 6e 73 2e  tAddin.= addins.
1130: 62 79 46 75 6c 6c 50 61 74 68 28 66 75 6c 6c 70  byFullPath(fullp
1140: 61 74 68 29 3b 0d 0a 20 20 20 20 69 66 20 28 73  ath);..    if (s
1150: 63 72 69 70 74 41 64 64 69 6e 29 20 7b 20 20 20  criptAddin) {   
1160: 20 09 0d 0a 20 20 20 20 09 61 64 64 69 6e 47 72   ...    .addinGr
1170: 6f 75 70 20 3d 20 73 63 72 69 70 74 41 64 64 69  oup = scriptAddi
1180: 6e 2e 67 72 6f 75 70 3b 0d 0a 20 20 20 20 09 61  n.group;..    .a
1190: 64 64 69 6e 73 2e 75 6e 6c 6f 61 64 41 64 64 69  ddins.unloadAddi
11a0: 6e 28 73 63 72 69 70 74 41 64 64 69 6e 29 3b 0d  n(scriptAddin);.
11b0: 0a 20 20 20 20 7d 0d 0a 20 20 20 20 61 64 64 69  .    }..    addi
11c0: 6e 73 2e 6c 6f 61 64 41 64 64 69 6e 28 66 75 6c  ns.loadAddin(ful
11d0: 6c 70 61 74 68 2c 20 61 64 64 69 6e 47 72 6f 75  lpath, addinGrou
11e0: 70 29 3b 0d 0a 20 20 20 20 4d 65 73 73 61 67 65  p);..    Message
11f0: 28 22 d0 a1 d0 ba d1 80 d0 b8 d0 bf d1 82 20 22  ("............ "
1200: 20 2b 20 66 75 6c 6c 70 61 74 68 20 2b 20 22 20   + fullpath + " 
1210: d0 bf d0 b5 d1 80 d0 b5 d0 b7 d0 b0 d0 b3 d1 80  ................
1220: d1 83 d0 b6 d0 b5 d0 bd 21 22 29 3b 0d 0a 7d 0d  ........!");..}.
1230: 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 6d 61 63 72  ...function macr
1240: 6f 73 d0 a1 d0 be d1 85 d1 80 d0 b0 d0 bd d0 b8  os..............
1250: d1 82 d1 8c d0 a1 d0 ba d1 80 d0 b8 d0 bf d1 82  ................
1260: d0 97 d0 b0 d0 bc d0 b5 d0 bd d0 b8 d0 b2 d0 9f  ................
1270: d1 80 d0 be d0 b1 d0 b5 d0 bb d1 8b d0 9d d0 b0  ................
1280: d0 a2 d0 b0 d0 b1 d1 83 d0 bb d1 8f d1 86 d0 b8  ................
1290: d1 8e 28 29 20 7b 0d 0a 20 20 20 20 76 61 72 20  ..() {..    var 
12a0: 77 20 3d 20 73 74 64 6c 69 62 2e 72 65 71 75 69  w = stdlib.requi
12b0: 72 65 28 27 54 65 78 74 57 69 6e 64 6f 77 2e 6a  re('TextWindow.j
12c0: 73 27 29 2e 47 65 74 54 65 78 74 57 69 6e 64 6f  s').GetTextWindo
12d0: 77 28 29 3b 0d 0a 20 20 20 20 69 66 20 28 21 77  w();..    if (!w
12e0: 29 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 76  ) return;..    v
12f0: 61 72 20 73 65 6c 20 3d 20 77 2e 47 65 74 43 61  ar sel = w.GetCa
1300: 72 65 74 50 6f 73 28 29 3b 0d 0a 20 20 20 20 76  retPos();..    v
1310: 61 72 20 74 65 45 78 74 20 3d 20 73 74 64 6c 69  ar teExt = stdli
1320: 62 2e 72 65 71 75 69 72 65 28 73 74 64 6c 69 62  b.require(stdlib
1330: 2e 67 65 74 53 6e 65 67 6f 70 61 74 4d 61 69 6e  .getSnegopatMain
1340: 46 6f 6c 64 65 72 28 29 20 2b 20 27 73 63 72 69  Folder() + 'scri
1350: 70 74 73 5c 5c 74 65 78 74 45 64 69 74 6f 72 45  pts\\textEditorE
1360: 78 74 2e 6a 73 27 29 3b 0d 0a 20 20 20 20 73 74  xt.js');..    st
1370: 64 63 6f 6d 6d 61 6e 64 73 2e 46 72 61 6d 65 2e  dcommands.Frame.
1380: 53 65 6c 65 63 74 41 6c 6c 2e 73 65 6e 64 28 29  SelectAll.send()
1390: 3b 0d 0a 20 20 20 20 74 65 45 78 74 2e 72 65 70  ;..    teExt.rep
13a0: 6c 61 63 65 54 61 62 73 54 6f 53 70 61 63 65 73  laceTabsToSpaces
13b0: 49 6e 53 65 6c 65 63 74 65 64 54 65 78 74 28 74  InSelectedText(t
13c0: 72 75 65 29 3b 0d 0a 20 20 20 20 73 74 64 63 6f  rue);..    stdco
13d0: 6d 6d 61 6e 64 73 2e 46 72 61 6d 65 2e 46 69 6c  mmands.Frame.Fil
13e0: 65 53 61 76 65 2e 73 65 6e 64 28 29 3b 0d 0a 20  eSave.send();.. 
13f0: 20 20 20 77 2e 53 65 74 43 61 72 65 74 50 6f 73     w.SetCaretPos
1400: 28 73 65 6c 2e 62 65 67 69 6e 52 6f 77 20 2d 20  (sel.beginRow - 
1410: 31 35 2c 20 73 65 6c 2e 62 65 67 69 6e 43 6f 6c  15, sel.beginCol
1420: 29 3b 0d 0a 20 20 20 20 77 2e 53 65 74 43 61 72  );..    w.SetCar
1430: 65 74 50 6f 73 28 73 65 6c 2e 62 65 67 69 6e 52  etPos(sel.beginR
1440: 6f 77 2c 20 73 65 6c 2e 62 65 67 69 6e 43 6f 6c  ow, sel.beginCol
1450: 29 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f  );..}....functio
1460: 6e 20 6d 61 63 72 6f 73 d0 a1 d0 be d1 85 d1 80  n macros........
1470: d0 b0 d0 bd d0 b8 d1 82 d1 8c d0 a1 d0 ba d1 80  ................
1480: d0 b8 d0 bf d1 82 d0 97 d0 b0 d0 bc d0 b5 d0 bd  ................
1490: d0 b8 d1 82 d1 8c d0 a2 d0 b0 d0 b1 d1 83 d0 bb  ................
14a0: d1 8f d1 86 d0 b8 d1 8e d0 9f d0 b5 d1 80 d0 b5  ................
14b0: d0 b7 d0 b0 d0 b3 d1 80 d1 83 d0 b7 d0 b8 d1 82  ................
14c0: d1 8c 28 29 20 7b 0d 0a 20 20 20 20 6d 61 63 72  ..() {..    macr
14d0: 6f 73 d0 a1 d0 be d1 85 d1 80 d0 b0 d0 bd d0 b8  os..............
14e0: d1 82 d1 8c d0 a1 d0 ba d1 80 d0 b8 d0 bf d1 82  ................
14f0: d0 97 d0 b0 d0 bc d0 b5 d0 bd d0 b8 d0 b2 d0 9f  ................
1500: d1 80 d0 be d0 b1 d0 b5 d0 bb d1 8b d0 9d d0 b0  ................
1510: d0 a2 d0 b0 d0 b1 d1 83 d0 bb d1 8f d1 86 d0 b8  ................
1520: d1 8e 28 29 3b 0d 0a 20 20 20 20 6d 61 63 72 6f  ..();..    macro
1530: 73 d0 9f d0 b5 d1 80 d0 b5 d0 b7 d0 b0 d0 b3 d1  s...............
1540: 80 d1 83 d0 b7 d0 b8 d1 82 d1 8c d0 a2 d0 b5 d0  ................
1550: ba d1 83 d1 89 d0 b8 d0 b9 d0 a1 d0 ba d1 80 d0  ................
1560: b8 d0 bf d1 82 28 29 3b 0d 0a 7d 0d 0a 0d 0a 66  .....();..}....f
1570: 75 6e 63 74 69 6f 6e 20 6d 61 63 72 6f 73 d0 92  unction macros..
1580: d1 81 d1 82 d0 b0 d0 b2 d0 b8 d1 82 d1 8c 52 65  ..............Re
1590: 71 75 69 72 65 28 29 20 7b 0d 0a 0d 0a 09 76 61  quire() {.....va
15a0: 72 20 74 77 20 3d 20 6e 65 77 20 54 65 78 74 57  r tw = new TextW
15b0: 69 6e 64 6f 77 28 29 3b 0d 0a 09 69 66 20 28 21  indow();...if (!
15c0: 74 77 2e 49 73 41 63 74 69 76 65 28 29 29 20 7b  tw.IsActive()) {
15d0: 0d 0a 09 09 72 65 74 75 72 6e 3b 0d 0a 09 7d 0d  ....return;...}.
15e0: 0a 0d 0a 09 76 61 72 20 72 65 71 75 69 72 65 73  ....var requires
15f0: 20 3d 20 7b 7d 3b 0d 0a 09 0d 0a 09 2f 2f 20 d0   = {};......// .
1600: a1 d1 84 d0 be d1 80 d0 bc d0 b8 d1 80 d1 83 d0  ................
1610: b5 d0 bc 20 d1 81 d0 bf d0 b8 d1 81 d0 be d0 ba  ... ............
1620: 20 d1 84 d0 b0 d0 b9 d0 bb d0 be d0 b2 2d d0 b1   ............-..
1630: d0 b8 d0 b1 d0 bb d0 b8 d0 be d1 82 d0 b5 d0 ba  ................
1640: 20 d0 b8 d0 b7 20 d0 ba d0 b0 d1 82 d0 b0 d0 bb   .... ..........
1650: d0 be d0 b3 d0 b0 20 4c 69 62 73 2e 0d 0a 09 76  ...... Libs....v
1660: 61 72 20 72 65 5f 6a 73 20 3d 20 2f 5c 2e 6a 73  ar re_js = /\.js
1670: 24 2f 69 3b 0d 0a 09 0d 0a 09 76 61 72 20 66 73  $/i;......var fs
1680: 6f 20 3d 20 6e 65 77 20 41 63 74 69 76 65 58 4f  o = new ActiveXO
1690: 62 6a 65 63 74 28 22 53 63 72 69 70 74 69 6e 67  bject("Scripting
16a0: 2e 46 69 6c 65 53 79 73 74 65 6d 4f 62 6a 65 63  .FileSystemObjec
16b0: 74 22 29 3b 0d 0a 09 76 61 72 20 6c 69 62 73 46  t");...var libsF
16c0: 6f 6c 64 65 72 20 3d 20 66 73 6f 2e 47 65 74 46  older = fso.GetF
16d0: 6f 6c 64 65 72 28 73 74 64 6c 69 62 2e 67 65 74  older(stdlib.get
16e0: 53 6e 65 67 6f 70 61 74 4d 61 69 6e 46 6f 6c 64  SnegopatMainFold
16f0: 65 72 28 29 20 2b 20 27 73 63 72 69 70 74 73 5c  er() + 'scripts\
1700: 5c 4c 69 62 73 27 29 3b 0d 0a 09 76 61 72 20 66  \Libs');...var f
1710: 69 6c 65 73 20 3d 20 6e 65 77 20 45 6e 75 6d 65  iles = new Enume
1720: 72 61 74 6f 72 28 6c 69 62 73 46 6f 6c 64 65 72  rator(libsFolder
1730: 2e 46 69 6c 65 73 29 3b 0d 0a 09 66 6f 72 20 28  .Files);...for (
1740: 3b 20 21 66 69 6c 65 73 2e 61 74 45 6e 64 28 29  ; !files.atEnd()
1750: 3b 20 66 69 6c 65 73 2e 6d 6f 76 65 4e 65 78 74  ; files.moveNext
1760: 28 29 29 20 7b 0d 0a 09 09 69 66 20 28 72 65 5f  ()) {....if (re_
1770: 6a 73 2e 74 65 73 74 28 66 69 6c 65 73 2e 69 74  js.test(files.it
1780: 65 6d 28 29 2e 4e 61 6d 65 29 29 20 7b 0d 0a 09  em().Name)) {...
1790: 09 09 72 65 71 75 69 72 65 73 5b 66 69 6c 65 73  ..requires[files
17a0: 2e 69 74 65 6d 28 29 2e 4e 61 6d 65 5d 20 3d 20  .item().Name] = 
17b0: 27 73 74 64 6c 69 62 2e 72 65 71 75 69 72 65 28  'stdlib.require(
17c0: 22 27 20 2b 20 66 69 6c 65 73 2e 69 74 65 6d 28  "' + files.item(
17d0: 29 2e 4e 61 6d 65 20 2b 20 27 22 2c 20 53 65 6c  ).Name + '", Sel
17e0: 66 53 63 72 69 70 74 29 3b 27 3b 0d 0a 09 09 7d  fScript);';....}
17f0: 0d 0a 09 7d 0d 0a 0d 0a 09 2f 2f 20 d0 9f d1 80  ...}.....// ....
1800: d0 b5 d0 b4 d0 bb d0 be d0 b6 d0 b8 d0 bc 20 d0  .............. .
1810: bf d0 be d0 bb d1 8c d0 b7 d0 be d0 b2 d0 b0 d1  ................
1820: 82 d0 b5 d0 bb d1 8e 20 d0 b2 d1 8b d0 b1 d1 80  ....... ........
1830: d0 b0 d1 82 d1 8c 20 d0 b1 d0 b8 d0 b1 d0 bb d0  ...... .........
1840: b8 d0 be d1 82 d0 b5 d0 ba d1 83 20 d0 b8 d0 b7  ........... ....
1850: 20 d1 81 d0 bf d0 b8 d1 81 d0 ba d0 b0 2e 0d 0a   ...............
1860: 09 76 61 72 20 64 6c 67 20 3d 20 6e 65 77 20 53  .var dlg = new S
1870: 65 6c 65 63 74 56 61 6c 75 65 44 69 61 6c 6f 67  electValueDialog
1880: 28 22 d0 92 d1 8b d0 b1 d0 b5 d1 80 d0 b8 d1 82  ("..............
1890: d0 b5 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 2d  .. ............-
18a0: d0 b1 d0 b8 d0 b1 d0 bb d0 b8 d0 be d1 82 d0 b5  ................
18b0: d0 ba d1 83 22 29 3b 0d 0a 09 69 66 20 28 64 6c  ....");...if (dl
18c0: 67 2e 73 65 6c 65 63 74 56 61 6c 75 65 28 72 65  g.selectValue(re
18d0: 71 75 69 72 65 73 29 29 20 7b 0d 0a 09 09 74 77  quires)) {....tw
18e0: 2e 49 6e 73 65 72 74 4c 69 6e 65 28 74 77 2e 47  .InsertLine(tw.G
18f0: 65 74 43 61 72 65 74 50 6f 73 28 29 2e 62 65 67  etCaretPos().beg
1900: 69 6e 52 6f 77 2c 20 64 6c 67 2e 73 65 6c 65 63  inRow, dlg.selec
1910: 74 65 64 56 61 6c 75 65 29 3b 0d 0a 09 09 74 77  tedValue);....tw
1920: 2e 53 65 74 43 61 72 65 74 50 6f 73 28 74 77 2e  .SetCaretPos(tw.
1930: 47 65 74 43 61 72 65 74 50 6f 73 28 29 2e 62 65  GetCaretPos().be
1940: 67 69 6e 52 6f 77 2c 20 64 6c 67 2e 73 65 6c 65  ginRow, dlg.sele
1950: 63 74 65 64 56 61 6c 75 65 2e 6c 65 6e 67 74 68  ctedValue.length
1960: 20 2b 20 31 29 3b 0d 0a 09 7d 0d 0a 7d 0d 0a 0d   + 1);...}..}...
1970: 0a 2f 2a 20 d0 92 d0 be d0 b7 d0 b2 d1 80 d0 b0  ./* ............
1980: d1 89 d0 b0 d0 b5 d1 82 20 d0 bd d0 b0 d0 b7 d0  ........ .......
1990: b2 d0 b0 d0 bd d0 b8 d0 b5 20 d0 bc d0 b0 d0 ba  ......... ......
19a0: d1 80 d0 be d1 81 d0 b0 20 d0 bf d0 be 20 d1 83  ........ .... ..
19b0: d0 bc d0 be d0 bb d1 87 d0 b0 d0 bd d0 b8 d1 8e  ................
19c0: 20 2d 20 d0 b2 d1 8b d0 b7 d1 8b d0 b2 d0 b0 d0   - .............
19d0: b5 d1 82 d1 81 d1 8f 2c 20 d0 ba d0 be d0 b3 d0  ......., .......
19e0: b4 d0 b0 20 d0 bf d0 be d0 bb d1 8c d0 b7 d0 be  ... ............
19f0: d0 b2 d0 b0 d1 82 d0 b5 d0 bb d1 8c 20 0d 0a d0  ............ ...
1a00: b4 d0 b2 d0 b0 d0 b6 d0 b4 d1 8b 20 d1 89 d0 b5  ........... ....
1a10: d0 bb d0 ba d0 b0 d0 b5 d1 82 20 d0 bc d1 8b d1  .......... .....
1a20: 88 d1 8c d1 8e 20 d0 bf d0 be 20 d0 bd d0 b0 d0  ..... .... .....
1a30: b7 d0 b2 d0 b0 d0 bd d0 b8 d1 8e 20 d1 81 d0 ba  ........... ....
1a40: d1 80 d0 b8 d0 bf d1 82 d0 b0 20 d0 b2 20 d0 be  .......... .. ..
1a50: d0 ba d0 bd d0 b5 20 d0 a1 d0 bd d0 b5 d0 b3 d0  ...... .........
1a60: be d0 bf d0 b0 d1 82 d0 b0 2e 20 2a 2f 0d 0a 66  .......... */..f
1a70: 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 61 75  unction getDefau
1a80: 6c 74 4d 61 63 72 6f 73 28 29 20 7b 0d 0a 20 20  ltMacros() {..  
1a90: 20 20 72 65 74 75 72 6e 20 27 d0 9d d0 b0 d1 81    return '......
1aa0: d1 82 d1 80 d0 be d0 b9 d0 ba d0 b0 27 3b 0d 0a  ............';..
1ab0: 7d 0d 0a 0d 0a 20 0d 0a 2f 2a 20 2a 2a 2a 2a 2a  }.... ../* *****
1ac0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1ad0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1ae0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1af0: 2a 2a 2a 2a 2a 0d 0a 20 2a 20 20 d0 a0 d0 b5 d0  *****.. *  .....
1b00: b0 d0 bb d0 b8 d0 b7 d0 b0 d1 86 d0 b8 d1 8f 20  ............... 
1b10: d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d0 be d0 bd  ................
1b20: d0 b0 d0 bb d0 b0 20 d1 81 d0 ba d1 80 d0 b8 d0  ...... .........
1b30: bf d1 82 d0 b0 2e 0d 0a 20 2a 20 2a 2a 2a 2a 2a  ........ * *****
1b40: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1b50: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1b60: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1b70: 2a 2a 2a 2a 20 2a 2f 0d 0a 0d 0a 2f 2f 20 d0 9f  **** */....// ..
1b80: d1 83 d1 82 d0 b8 20 d1 85 d1 80 d0 b0 d0 bd d0  ...... .........
1b90: b5 d0 bd d0 b8 d1 8f 20 d0 bd d0 b0 d1 81 d1 82  ....... ........
1ba0: d1 80 d0 be d0 b5 d0 ba 20 d1 81 d0 ba d1 80 d0  ........ .......
1bb0: b8 d0 bf d1 82 d0 b0 20 d0 b2 20 d0 bf d1 80 d0  ....... .. .....
1bc0: be d1 84 d0 b0 d0 b9 d0 bb d0 b5 2e 0d 0a 76 61  ..............va
1bd0: 72 20 70 66 6c 50 61 74 68 73 20 3d 20 7b 0d 0a  r pflPaths = {..
1be0: 20 20 20 20 63 68 65 63 6b 49 6e 74 65 72 76 61      checkInterva
1bf0: 6c 20 3a 20 27 73 63 72 69 70 74 64 65 76 2f 63  l : 'scriptdev/c
1c00: 68 65 63 6b 49 6e 74 65 72 76 61 6c 27 2c 0d 0a  heckInterval',..
1c10: 20 20 20 20 72 75 6e 45 64 69 74 6f 72 43 6d 64      runEditorCmd
1c20: 3a 20 27 73 63 72 69 70 74 64 65 76 2f 72 75 6e  : 'scriptdev/run
1c30: 43 6d 64 45 64 69 74 6f 72 27 2c 0d 0a 20 20 20  CmdEditor',..   
1c40: 20 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f 61 64   askBeforeReload
1c50: 3a 20 27 73 63 72 69 70 74 64 65 76 2f 61 73 6b  : 'scriptdev/ask
1c60: 42 65 66 6f 72 65 52 65 6c 6f 61 64 27 0d 0a 7d  BeforeReload'..}
1c70: 3b 0d 0a 20 20 0d 0a 2f 2f 20 d0 a1 d0 bf d0 b8  ;..  ..// ......
1c80: d1 81 d0 be d0 ba 20 d1 80 d0 b5 d0 b4 d0 b0 d0  ...... .........
1c90: ba d1 82 d0 b8 d1 80 d1 83 d0 b5 d0 bc d1 8b d1  ................
1ca0: 85 20 d1 84 d0 b0 d0 b9 d0 bb d0 be d0 b2 20 d1  . ............ .
1cb0: 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 be d0 b2 2e  ................
1cc0: 0d 0a 76 61 72 20 64 65 76 46 69 6c 65 73 20 3d  ..var devFiles =
1cd0: 20 76 38 4e 65 77 28 22 d0 a1 d1 82 d1 80 d1 83   v8New("........
1ce0: d0 ba d1 82 d1 83 d1 80 d0 b0 22 29 3b 0d 0a 0d  ..........");...
1cf0: 0a 2f 2f 20 d0 92 d1 80 d0 b5 d0 bc d1 8f 20 d0  .// .......... .
1d00: bf d0 be d1 81 d0 bb d0 b5 d0 b4 d0 bd d0 b5 d0  ................
1d10: b9 20 d0 bf d1 80 d0 be d0 b2 d0 b5 d1 80 d0 ba  . ..............
1d20: d0 b8 0d 0a 76 61 72 20 6c 61 73 74 43 68 65 63  ....var lastChec
1d30: 6b 54 69 6d 65 20 3d 20 6e 65 77 20 44 61 74 65  kTime = new Date
1d40: 28 29 2e 67 65 74 54 69 6d 65 28 29 20 2f 20 31  ().getTime() / 1
1d50: 30 30 30 3b 0d 0a 0d 0a 2f 2f 20 d0 9f d0 be d0  000;....// .....
1d60: b4 d0 ba d0 bb d1 8e d1 87 d0 b0 d0 b5 d0 bc 20  ............... 
1d70: d0 b3 d0 bb d0 be d0 b1 d0 b0 d0 bb d1 8c d0 bd  ................
1d80: d1 8b d0 b5 20 d0 ba d0 be d0 bd d1 82 d0 b5 d0  .... ...........
1d90: ba d1 81 d1 82 d1 8b 2e 0d 0a 2f 2f 67 6c 6f 62  ..........//glob
1da0: 61 6c 2e 63 6f 6e 6e 65 63 74 47 6c 6f 62 61 6c  al.connectGlobal
1db0: 73 28 53 65 6c 66 53 63 72 69 70 74 29 3b 0d 0a  s(SelfScript);..
1dc0: 61 64 64 69 6e 73 2e 62 79 55 6e 69 71 75 65 4e  addins.byUniqueN
1dd0: 61 6d 65 28 22 67 6c 6f 62 61 6c 22 29 2e 6f 62  ame("global").ob
1de0: 6a 65 63 74 2e 63 6f 6e 6e 65 63 74 47 6c 6f 62  ject.connectGlob
1df0: 61 6c 73 28 53 65 6c 66 53 63 72 69 70 74 29 3b  als(SelfScript);
1e00: 0d 0a 0d 0a 65 76 65 6e 74 73 2e 63 6f 6e 6e 65  ....events.conne
1e10: 63 74 28 44 65 73 69 67 6e 65 72 2c 20 22 6f 6e  ct(Designer, "on
1e20: 49 64 6c 65 22 2c 20 53 65 6c 66 53 63 72 69 70  Idle", SelfScrip
1e30: 74 2e 73 65 6c 66 29 0d 0a 66 75 6e 63 74 69 6f  t.self)..functio
1e40: 6e 20 6f 6e 49 64 6c 65 28 29 0d 0a 7b 0d 0a 20  n onIdle()..{.. 
1e50: 20 20 20 76 61 72 20 63 75 72 54 69 6d 65 20 3d     var curTime =
1e60: 20 6e 65 77 20 44 61 74 65 28 29 2e 67 65 74 54   new Date().getT
1e70: 69 6d 65 28 29 20 2f 20 31 30 30 30 3b 0d 0a 20  ime() / 1000;.. 
1e80: 20 20 20 69 66 20 28 63 75 72 54 69 6d 65 20 2d     if (curTime -
1e90: 20 6c 61 73 74 43 68 65 63 6b 54 69 6d 65 20 3e   lastCheckTime >
1ea0: 20 63 68 65 63 6b 49 6e 74 65 72 76 61 6c 29 20   checkInterval) 
1eb0: 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20  ..    {..       
1ec0: 20 43 68 65 63 6b 46 69 6c 65 73 28 29 3b 0d 0a   CheckFiles();..
1ed0: 20 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63      }..}....func
1ee0: 74 69 6f 6e 20 51 75 65 72 79 44 69 61 6c 6f 67  tion QueryDialog
1ef0: 45 78 28 71 75 65 73 74 69 6f 6e 2c 20 6e 65 65  Ex(question, nee
1f00: 64 59 65 73 4e 6f 54 6f 41 6c 6c 29 20 0d 0a 7b  dYesNoToAll) ..{
1f10: 20 0d 0a 20 20 20 20 74 68 69 73 2e 71 75 65 73   ..    this.ques
1f20: 74 69 6f 6e 20 3d 20 71 75 65 73 74 69 6f 6e 3b  tion = question;
1f30: 0d 0a 20 20 20 20 74 68 69 73 2e 6e 65 65 64 59  ..    this.needY
1f40: 65 73 4e 6f 54 6f 41 6c 6c 20 3d 20 6e 65 65 64  esNoToAll = need
1f50: 59 65 73 4e 6f 54 6f 41 6c 6c 3b 0d 0a 7d 0d 0a  YesNoToAll;..}..
1f60: 20 20 0d 0a 51 75 65 72 79 44 69 61 6c 6f 67 45    ..QueryDialogE
1f70: 78 2e 52 65 74 75 72 6e 43 6f 64 65 73 20 3d 20  x.ReturnCodes = 
1f80: 7b 0d 0a 20 20 20 20 27 59 65 73 27 20 20 20 20  {..    'Yes'    
1f90: 20 20 20 3a 20 27 d0 94 d0 b0 27 2c 0d 0a 20 20     : '....',..  
1fa0: 20 20 27 59 65 73 54 6f 41 6c 6c 27 20 20 3a 20    'YesToAll'  : 
1fb0: 27 d0 94 d0 b0 20 d0 b4 d0 bb d1 8f 20 d0 b2 d1  '.... ...... ...
1fc0: 81 d0 b5 d1 85 27 2c 0d 0a 20 20 20 20 27 4e 6f  .....',..    'No
1fd0: 27 20 20 20 20 20 20 20 20 3a 20 27 d0 9d d0 b5  '        : '....
1fe0: d1 82 27 2c 0d 0a 20 20 20 20 27 4e 6f 54 6f 41  ..',..    'NoToA
1ff0: 6c 6c 27 20 20 20 3a 20 27 d0 9d d0 b5 d1 82 20  ll'   : '...... 
2000: d0 b4 d0 bb d1 8f 20 d0 b2 d1 81 d0 b5 d1 85 27  ...... ........'
2010: 0d 0a 7d 0d 0a 0d 0a 51 75 65 72 79 44 69 61 6c  ..}....QueryDial
2020: 6f 67 45 78 2e 70 72 6f 74 6f 74 79 70 65 2e 53  ogEx.prototype.S
2030: 68 6f 77 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29  how = function()
2040: 0d 0a 7b 0d 0a 20 20 20 20 2f 2f 20 d0 9a d0 bd  ..{..    // ....
2050: d0 be d0 bf d0 ba d0 b8 20 d0 b4 d0 b8 d0 b0 d0  ........ .......
2060: bb d0 be d0 b3 d0 b0 20 d0 92 d0 be d0 bf d1 80  ....... ........
2070: d0 be d1 81 2e 0d 0a 20 20 20 20 76 61 72 20 62  .......    var b
2080: 75 74 74 6f 6e 73 20 3d 20 76 38 4e 65 77 28 22  uttons = v8New("
2090: d0 a1 d0 bf d0 b8 d1 81 d0 be d0 ba d0 97 d0 bd  ................
20a0: d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b9 22 29 3b 0d  ............");.
20b0: 0a 20 20 20 20 0d 0a 20 20 20 20 62 75 74 74 6f  .    ..    butto
20c0: 6e 73 2e d0 94 d0 be d0 b1 d0 b0 d0 b2 d0 b8 d1  ns..............
20d0: 82 d1 8c 28 51 75 65 72 79 44 69 61 6c 6f 67 45  ...(QueryDialogE
20e0: 78 2e 52 65 74 75 72 6e 43 6f 64 65 73 2e 59 65  x.ReturnCodes.Ye
20f0: 73 29 3b 0d 0a 20 20 20 20 62 75 74 74 6f 6e 73  s);..    buttons
2100: 2e d0 94 d0 be d0 b1 d0 b0 d0 b2 d0 b8 d1 82 d1  ................
2110: 8c 28 51 75 65 72 79 44 69 61 6c 6f 67 45 78 2e  .(QueryDialogEx.
2120: 52 65 74 75 72 6e 43 6f 64 65 73 2e 4e 6f 29 3b  ReturnCodes.No);
2130: 0d 0a 20 20 20 20 0d 0a 20 20 20 20 69 66 20 28  ..    ..    if (
2140: 74 68 69 73 2e 6e 65 65 64 59 65 73 4e 6f 54 6f  this.needYesNoTo
2150: 41 6c 6c 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20  All)..    {..   
2160: 20 20 20 20 20 62 75 74 74 6f 6e 73 2e d0 92 d1       buttons....
2170: 81 d1 82 d0 b0 d0 b2 d0 b8 d1 82 d1 8c 28 32 2c  .............(2,
2180: 20 51 75 65 72 79 44 69 61 6c 6f 67 45 78 2e 52   QueryDialogEx.R
2190: 65 74 75 72 6e 43 6f 64 65 73 2e 59 65 73 54 6f  eturnCodes.YesTo
21a0: 41 6c 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 62  All);..        b
21b0: 75 74 74 6f 6e 73 2e d0 94 d0 be d0 b1 d0 b0 d0  uttons..........
21c0: b2 d0 b8 d1 82 d1 8c 28 51 75 65 72 79 44 69 61  .......(QueryDia
21d0: 6c 6f 67 45 78 2e 52 65 74 75 72 6e 43 6f 64 65  logEx.ReturnCode
21e0: 73 2e 4e 6f 54 6f 41 6c 6c 29 3b 20 20 20 20 20  s.NoToAll);     
21f0: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20             ..   
2200: 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 72 65   }..    ..    re
2210: 74 75 72 6e 20 d0 92 d0 be d0 bf d1 80 d0 be d1  turn ...........
2220: 81 28 74 68 69 73 2e 71 75 65 73 74 69 6f 6e 2c  .(this.question,
2230: 20 62 75 74 74 6f 6e 73 29 3b 20 20 20 20 20 20   buttons);      
2240: 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20  ..}....function 
2250: 43 68 65 63 6b 46 69 6c 65 73 28 29 20 0d 0a 7b  CheckFiles() ..{
2260: 0d 0a 20 20 20 20 76 61 72 20 73 63 72 69 70 74  ..    var script
2270: 73 54 6f 52 65 6c 6f 61 64 20 3d 20 6e 65 77 20  sToReload = new 
2280: 41 72 72 61 79 28 29 3b 0d 0a 20 20 20 20 0d 0a  Array();..    ..
2290: 20 20 20 20 66 6f 72 28 76 61 72 20 61 64 64 69      for(var addi
22a0: 6e 73 3d 6e 65 77 20 45 6e 75 6d 65 72 61 74 6f  ns=new Enumerato
22b0: 72 28 64 65 76 46 69 6c 65 73 29 3b 20 21 61 64  r(devFiles); !ad
22c0: 64 69 6e 73 2e 61 74 45 6e 64 28 29 3b 20 61 64  dins.atEnd(); ad
22d0: 64 69 6e 73 2e 6d 6f 76 65 4e 65 78 74 28 29 29  dins.moveNext())
22e0: 20 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20   ..    {..      
22f0: 20 20 76 61 72 20 61 49 6e 66 6f 20 3d 20 61 64    var aInfo = ad
2300: 64 69 6e 73 2e 69 74 65 6d 28 29 2e d0 97 d0 bd  dins.item().....
2310: d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b5 3b 0d 0a 20  ............;.. 
2320: 20 20 20 20 20 20 20 69 66 20 28 61 49 6e 66 6f         if (aInfo
2330: 2e 43 68 65 63 6b 49 66 4d 6f 64 69 66 69 65 64  .CheckIfModified
2340: 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ())..           
2350: 20 73 63 72 69 70 74 73 54 6f 52 65 6c 6f 61 64   scriptsToReload
2360: 2e 70 75 73 68 28 61 49 6e 66 6f 29 3b 0d 0a 20  .push(aInfo);.. 
2370: 20 20 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20     }..    ..    
2380: 76 61 72 20 6e 65 65 64 54 6f 41 73 6b 20 3d 20  var needToAsk = 
2390: 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f 61 64 3b  askBeforeReload;
23a0: 0d 0a 20 20 20 20 76 61 72 20 64 6f 52 65 6c 6f  ..    var doRelo
23b0: 61 64 20 3d 20 21 61 73 6b 42 65 66 6f 72 65 52  ad = !askBeforeR
23c0: 65 6c 6f 61 64 3b 0d 0a 20 20 20 20 76 61 72 20  eload;..    var 
23d0: 6e 65 65 64 59 65 73 4e 6f 54 6f 41 6c 6c 20 3d  needYesNoToAll =
23e0: 20 28 73 63 72 69 70 74 73 54 6f 52 65 6c 6f 61   (scriptsToReloa
23f0: 64 2e 6c 65 6e 67 74 68 20 3e 20 31 29 3b 0d 0a  d.length > 1);..
2400: 20 20 20 20 0d 0a 20 20 20 20 66 6f 72 28 76 61      ..    for(va
2410: 72 20 69 3d 30 3b 20 69 3c 73 63 72 69 70 74 73  r i=0; i<scripts
2420: 54 6f 52 65 6c 6f 61 64 2e 6c 65 6e 67 74 68 3b  ToReload.length;
2430: 20 69 2b 2b 29 0d 0a 20 20 20 20 7b 0d 0a 20 20   i++)..    {..  
2440: 20 20 20 20 20 20 76 61 72 20 73 20 3d 20 73 63        var s = sc
2450: 72 69 70 74 73 54 6f 52 65 6c 6f 61 64 5b 69 5d  riptsToReload[i]
2460: 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20  ;..        ..   
2470: 20 20 20 20 20 69 66 20 28 6e 65 65 64 54 6f 41       if (needToA
2480: 73 6b 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a  sk)..        {..
2490: 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20              var 
24a0: 6d 73 67 20 3d 20 22 d0 a1 d0 ba d1 80 d0 b8 d0  msg = ".........
24b0: bf d1 82 20 5c 22 22 20 2b 20 73 2e 6f 62 6a 65  ... \"" + s.obje
24c0: 63 74 2e 64 69 73 70 6c 61 79 4e 61 6d 65 20 0d  ct.displayName .
24d0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
24e0: 20 20 20 20 20 2b 20 22 5c 22 20 28 22 20 2b 20       + "\" (" + 
24f0: 73 2e 6f 62 6a 65 63 74 2e 75 6e 69 71 75 65 4e  s.object.uniqueN
2500: 61 6d 65 20 2b 20 22 29 20 d0 b1 d1 8b d0 bb 20  ame + ") ...... 
2510: d0 b8 d0 b7 d0 bc d0 b5 d0 bd d0 b5 d0 bd 2e 5c  ...............\
2520: 6e 22 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  n"..            
2530: 20 20 20 20 20 20 20 20 2b 20 22 d0 9f d0 b5 d1          + ".....
2540: 80 d0 b5 d0 b7 d0 b0 d0 b3 d1 80 d1 83 d0 b7 d0  ................
2550: b8 d1 82 d1 8c 20 d1 81 d0 ba d1 80 d0 b8 d0 bf  ..... ..........
2560: d1 82 3f 22 3b 0d 0a 20 20 20 20 20 20 20 20 20  ..?";..         
2570: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20             ..   
2580: 20 20 20 20 20 20 20 20 20 76 61 72 20 61 6e 73           var ans
2590: 77 65 72 20 3d 20 28 6e 65 77 20 51 75 65 72 79  wer = (new Query
25a0: 44 69 61 6c 6f 67 45 78 28 6d 73 67 2c 20 6e 65  DialogEx(msg, ne
25b0: 65 64 59 65 73 4e 6f 54 6f 41 6c 6c 29 29 2e 53  edYesNoToAll)).S
25c0: 68 6f 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  how();..        
25d0: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20      ..          
25e0: 20 20 64 6f 52 65 6c 6f 61 64 20 3d 20 28 61 6e    doReload = (an
25f0: 73 77 65 72 20 3d 3d 20 51 75 65 72 79 44 69 61  swer == QueryDia
2600: 6c 6f 67 45 78 2e 52 65 74 75 72 6e 43 6f 64 65  logEx.ReturnCode
2610: 73 2e 59 65 73 20 7c 7c 20 61 6e 73 77 65 72 20  s.Yes || answer 
2620: 3d 3d 20 51 75 65 72 79 44 69 61 6c 6f 67 45 78  == QueryDialogEx
2630: 2e 52 65 74 75 72 6e 43 6f 64 65 73 2e 59 65 73  .ReturnCodes.Yes
2640: 54 6f 41 6c 6c 29 3b 0d 0a 20 20 20 20 20 20 20  ToAll);..       
2650: 20 20 20 20 20 6e 65 65 64 54 6f 41 73 6b 20 3d       needToAsk =
2660: 20 28 61 6e 73 77 65 72 20 3d 3d 20 51 75 65 72   (answer == Quer
2670: 79 44 69 61 6c 6f 67 45 78 2e 52 65 74 75 72 6e  yDialogEx.Return
2680: 43 6f 64 65 73 2e 59 65 73 20 7c 7c 20 61 6e 73  Codes.Yes || ans
2690: 77 65 72 20 3d 3d 20 51 75 65 72 79 44 69 61 6c  wer == QueryDial
26a0: 6f 67 45 78 2e 52 65 74 75 72 6e 43 6f 64 65 73  ogEx.ReturnCodes
26b0: 2e 4e 6f 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d  .No);..        }
26c0: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
26d0: 20 20 20 20 69 66 20 28 64 6f 52 65 6c 6f 61 64      if (doReload
26e0: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73  )..            s
26f0: 2e 52 65 6c 6f 61 64 28 29 3b 0d 0a 20 20 20 20  .Reload();..    
2700: 7d 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e  }..}....function
2710: 20 67 65 74 4d 6f 64 69 66 69 63 61 74 69 6f 6e   getModification
2720: 53 74 61 6d 70 28 66 29 20 0d 0a 7b 0d 0a 20 20  Stamp(f) ..{..  
2730: 20 20 69 66 20 28 66 2e d0 a1 d1 83 d1 89 d0 b5    if (f.........
2740: d1 81 d1 82 d0 b2 d1 83 d0 b5 d1 82 28 29 29 0d  ............()).
2750: 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20  .    {..        
2760: 72 65 74 75 72 6e 20 6e 65 77 20 44 61 74 65 28  return new Date(
2770: 66 2e d0 9f d0 be d0 bb d1 83 d1 87 d0 b8 d1 82  f...............
2780: d1 8c d0 92 d1 80 d0 b5 d0 bc d1 8f d0 98 d0 b7  ................
2790: d0 bc d0 b5 d0 bd d0 b5 d0 bd d0 b8 d1 8f 28 29  ..............()
27a0: 29 2e 67 65 74 54 69 6d 65 28 29 3b 20 0d 0a 20  ).getTime(); .. 
27b0: 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 72 65 74 75     }....    retu
27c0: 72 6e 20 6e 75 6c 6c 3b 0d 0a 7d 0d 0a 0d 0a 66  rn null;..}....f
27d0: 75 6e 63 74 69 6f 6e 20 4f 6e 53 6e 65 67 6f 70  unction OnSnegop
27e0: 61 74 57 6e 64 45 64 69 74 53 63 72 69 70 74 4d  atWndEditScriptM
27f0: 65 6e 75 49 74 65 6d 28 63 75 72 72 65 6e 74 52  enuItem(currentR
2800: 6f 77 29 0d 0a 7b 0d 0a 20 20 20 20 76 61 72 20  ow)..{..    var 
2810: 69 73 41 64 64 69 6e 20 3d 20 63 75 72 72 65 6e  isAddin = curren
2820: 74 52 6f 77 2e 50 69 63 74 75 72 65 20 21 3d 20  tRow.Picture != 
2830: 30 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 69 66  0;..    ..    if
2840: 20 28 21 69 73 41 64 64 69 6e 29 20 0d 0a 20 20   (!isAddin) ..  
2850: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20        return;.. 
2860: 20 20 20 0d 0a 20 20 20 20 76 61 72 20 61 64 64     ..    var add
2870: 69 6e 4f 62 6a 65 63 74 20 3d 20 63 75 72 72 65  inObject = curre
2880: 6e 74 52 6f 77 2e 6f 62 6a 65 63 74 3b 0d 0a 20  ntRow.object;.. 
2890: 20 20 20 69 66 20 28 30 20 21 3d 20 61 64 64 69     if (0 != addi
28a0: 6e 4f 62 6a 65 63 74 2e 66 75 6c 6c 50 61 74 68  nObject.fullPath
28b0: 2e 69 6e 64 65 78 4f 66 28 22 73 63 72 69 70 74  .indexOf("script
28c0: 3a 22 29 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20  :"))..    {..   
28d0: 20 20 20 20 20 4d 65 73 73 61 67 65 42 6f 78 28       MessageBox(
28e0: 22 d0 ad d1 82 d0 be 20 d0 bd d0 b5 20 d1 81 d0  "...... .... ...
28f0: ba d1 80 d0 b8 d0 bf d1 82 22 29 3b 0d 0a 20 20  .........");..  
2900: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20        return;.. 
2910: 20 20 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20     }..    ..    
2920: 69 66 20 28 61 64 64 69 6e 4f 62 6a 65 63 74 2e  if (addinObject.
2930: 75 6e 69 71 75 65 4e 61 6d 65 20 3d 3d 20 53 65  uniqueName == Se
2940: 6c 66 53 63 72 69 70 74 2e 75 6e 69 71 75 65 4e  lfScript.uniqueN
2950: 61 6d 65 29 20 0d 0a 20 20 20 20 7b 0d 0a 20 20  ame) ..    {..  
2960: 20 20 20 20 20 20 4d 65 73 73 61 67 65 42 6f 78        MessageBox
2970: 28 22 d0 a1 d0 ba d1 80 d0 b8 d0 bf d1 82 20 5c  ("............ \
2980: 22 d0 a0 d0 b0 d0 b7 d1 80 d0 b0 d0 b1 d0 be d1  "...............
2990: 82 d0 ba d0 b0 20 d1 81 d0 ba d1 80 d0 b8 d0 bf  ..... ..........
29a0: d1 82 d0 be d0 b2 5c 22 20 d0 bd d0 b5 d0 bb d1  ......\" .......
29b0: 8c d0 b7 d1 8f 20 d0 b8 d1 81 d0 bf d0 be d0 bb  ..... ..........
29c0: d1 8c d0 b7 d0 be d0 b2 d0 b0 d1 82 d1 8c 20 d0  .............. .
29d0: b4 d0 bb d1 8f 20 d0 be d1 82 d0 bb d0 b0 d0 b4  ..... ..........
29e0: d0 ba d0 b8 20 d1 81 d0 b0 d0 bc d0 be d0 b3 d0  .... ...........
29f0: be 20 d1 81 d0 b5 d0 b1 d1 8f 21 22 29 3b 0d 0a  . ........!");..
2a00: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d          return;.
2a10: 0a 20 20 20 20 7d 0d 0a 20 20 20 20 0d 0a 20 20  .    }..    ..  
2a20: 20 20 76 61 72 20 66 75 6c 6c 50 61 74 68 20 3d    var fullPath =
2a30: 20 47 65 74 41 64 64 69 6e 46 69 6c 65 50 61 74   GetAddinFilePat
2a40: 68 28 61 64 64 69 6e 4f 62 6a 65 63 74 29 3b 0d  h(addinObject);.
2a50: 0a 20 20 20 20 76 61 72 20 63 6f 6d 6d 61 6e 64  .    var command
2a60: 20 3d 20 72 75 6e 45 64 69 74 6f 72 43 6d 64 2e   = runEditorCmd.
2a70: 72 65 70 6c 61 63 65 28 2f 25 31 2f 2c 20 66 75  replace(/%1/, fu
2a80: 6c 6c 50 61 74 68 29 3b 0d 0a 20 20 20 20 20 20  llPath);..      
2a90: 20 20 0d 0a 20 20 20 20 69 66 20 28 21 64 65 76    ..    if (!dev
2aa0: 46 69 6c 65 73 2e d0 a1 d0 b2 d0 be d0 b9 d1 81  Files...........
2ab0: d1 82 d0 b2 d0 be 28 61 64 64 69 6e 4f 62 6a 65  ......(addinObje
2ac0: 63 74 2e 75 6e 69 71 75 65 4e 61 6d 65 29 29 0d  ct.uniqueName)).
2ad0: 0a 20 20 20 20 20 20 20 20 64 65 76 46 69 6c 65  .        devFile
2ae0: 73 2e d0 92 d1 81 d1 82 d0 b0 d0 b2 d0 b8 d1 82  s...............
2af0: d1 8c 28 61 64 64 69 6e 4f 62 6a 65 63 74 2e 75  ..(addinObject.u
2b00: 6e 69 71 75 65 4e 61 6d 65 2c 20 6e 65 77 20 41  niqueName, new A
2b10: 64 64 69 6e 49 6e 66 6f 28 61 64 64 69 6e 4f 62  ddinInfo(addinOb
2b20: 6a 65 63 74 29 29 3b 0d 0a 20 20 20 20 0d 0a 20  ject));..    .. 
2b30: 20 20 20 d0 97 d0 b0 d0 bf d1 83 d1 81 d1 82 d0     .............
2b40: b8 d1 82 d1 8c d0 9f d1 80 d0 b8 d0 bb d0 be d0  ................
2b50: b6 d0 b5 d0 bd d0 b8 d0 b5 28 63 6f 6d 6d 61 6e  .........(comman
2b60: 64 29 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69  d);..}....functi
2b70: 6f 6e 20 49 6e 69 74 53 63 72 69 70 74 41 6e 64  on InitScriptAnd
2b80: 52 75 6e 28 29 0d 0a 7b 20 20 20 20 0d 0a 20 20  Run()..{    ..  
2b90: 20 20 2f 2f 20 d0 9f d1 80 d0 be d0 b8 d0 bd d0    // ...........
2ba0: b8 d1 86 d0 b8 d0 b0 d0 bb d0 b8 d0 b7 d0 b8 d1  ................
2bb0: 80 d1 83 d0 b5 d0 bc 20 d0 bd d0 b0 d1 81 d1 82  ....... ........
2bc0: d1 80 d0 be d0 b9 d0 ba d0 b8 20 d1 81 d0 ba d1  .......... .....
2bd0: 80 d0 b8 d0 bf d1 82 d0 b0 2e 2e 2e 0d 0a 20 20  ..............  
2be0: 20 20 70 72 6f 66 69 6c 65 52 6f 6f 74 2e 63 72    profileRoot.cr
2bf0: 65 61 74 65 56 61 6c 75 65 28 70 66 6c 50 61 74  eateValue(pflPat
2c00: 68 73 2e 63 68 65 63 6b 49 6e 74 65 72 76 61 6c  hs.checkInterval
2c10: 2c 20 63 68 65 63 6b 49 6e 74 65 72 76 61 6c 2c  , checkInterval,
2c20: 20 70 66 6c 53 6e 65 67 6f 70 61 74 29 0d 0a 20   pflSnegopat).. 
2c30: 20 20 20 70 72 6f 66 69 6c 65 52 6f 6f 74 2e 63     profileRoot.c
2c40: 72 65 61 74 65 56 61 6c 75 65 28 70 66 6c 50 61  reateValue(pflPa
2c50: 74 68 73 2e 72 75 6e 45 64 69 74 6f 72 43 6d 64  ths.runEditorCmd
2c60: 2c 20 72 75 6e 45 64 69 74 6f 72 43 6d 64 2c 20  , runEditorCmd, 
2c70: 70 66 6c 53 6e 65 67 6f 70 61 74 29 20 20 20 20  pflSnegopat)    
2c80: 0d 0a 20 20 20 20 70 72 6f 66 69 6c 65 52 6f 6f  ..    profileRoo
2c90: 74 2e 63 72 65 61 74 65 56 61 6c 75 65 28 70 66  t.createValue(pf
2ca0: 6c 50 61 74 68 73 2e 61 73 6b 42 65 66 6f 72 65  lPaths.askBefore
2cb0: 52 65 6c 6f 61 64 2c 20 61 73 6b 42 65 66 6f 72  Reload, askBefor
2cc0: 65 52 65 6c 6f 61 64 2c 20 70 66 6c 53 6e 65 67  eReload, pflSneg
2cd0: 6f 70 61 74 29 20 20 20 20 0d 0a 20 20 20 20 0d  opat)    ..    .
2ce0: 0a 20 20 20 20 2f 2f 20 2e 2e 2e d0 b8 20 d0 bf  .    // ..... ..
2cf0: d1 80 d0 be d1 87 d0 b8 d1 82 d0 b0 d0 b5 d0 bc  ................
2d00: 20 d0 b8 d1 85 3a 0d 0a 20 20 20 20 63 68 65 63   ....:..    chec
2d10: 6b 49 6e 74 65 72 76 61 6c 20 3d 20 70 72 6f 66  kInterval = prof
2d20: 69 6c 65 52 6f 6f 74 2e 67 65 74 56 61 6c 75 65  ileRoot.getValue
2d30: 28 70 66 6c 50 61 74 68 73 2e 63 68 65 63 6b 49  (pflPaths.checkI
2d40: 6e 74 65 72 76 61 6c 29 3b 0d 0a 20 20 20 20 72  nterval);..    r
2d50: 75 6e 45 64 69 74 6f 72 43 6d 64 20 3d 20 70 72  unEditorCmd = pr
2d60: 6f 66 69 6c 65 52 6f 6f 74 2e 67 65 74 56 61 6c  ofileRoot.getVal
2d70: 75 65 28 70 66 6c 50 61 74 68 73 2e 72 75 6e 45  ue(pflPaths.runE
2d80: 64 69 74 6f 72 43 6d 64 29 3b 0d 0a 20 20 20 20  ditorCmd);..    
2d90: 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f 61 64 20  askBeforeReload 
2da0: 3d 20 70 72 6f 66 69 6c 65 52 6f 6f 74 2e 67 65  = profileRoot.ge
2db0: 74 56 61 6c 75 65 28 70 66 6c 50 61 74 68 73 2e  tValue(pflPaths.
2dc0: 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f 61 64 29  askBeforeReload)
2dd0: 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 2f 2f 20  ;..    ..    // 
2de0: d0 92 d0 bd d0 b5 d0 b4 d1 80 d1 8f d0 b5 d0 bc  ................
2df0: d1 81 d1 8f 20 d0 b2 20 d0 ba d0 be d0 bd d1 82  .... .. ........
2e00: d0 b5 d0 ba d1 81 d1 82 d0 bd d0 be d0 b5 20 d0  .............. .
2e10: bc d0 b5 d0 bd d1 8e 20 d0 be d0 ba d0 bd d0 b0  ....... ........
2e20: 20 d0 a1 d0 bd d0 b5 d0 b3 d0 be d0 bf d0 b0 d1   ...............
2e30: 82 d0 b0 2e 0d 0a 20 20 20 20 77 69 74 68 20 28  ......    with (
2e40: 73 6e 65 67 6f 70 61 74 77 6e 64 2e 67 65 74 53  snegopatwnd.getS
2e50: 6e 65 67 6f 70 61 74 57 6e 64 28 29 29 0d 0a 20  negopatWnd()).. 
2e60: 20 20 20 20 20 20 20 41 64 64 43 6f 6e 74 65 78         AddContex
2e70: 74 4d 65 6e 75 49 74 65 6d 28 22 d0 a0 d0 b5 d0  tMenuItem(".....
2e80: b4 d0 b0 d0 ba d1 82 d0 b8 d1 80 d0 be d0 b2 d0  ................
2e90: b0 d1 82 d1 8c 20 d1 81 d0 ba d1 80 d0 b8 d0 bf  ..... ..........
2ea0: d1 82 2e 2e 2e 22 2c 20 4f 6e 53 6e 65 67 6f 70  .....", OnSnegop
2eb0: 61 74 57 6e 64 45 64 69 74 53 63 72 69 70 74 4d  atWndEditScriptM
2ec0: 65 6e 75 49 74 65 6d 2c 20 0d 0a 20 20 20 20 20  enuItem, ..     
2ed0: 20 20 20 20 20 20 20 22 d0 a0 d0 b5 d0 b4 d0 b0         "........
2ee0: d0 ba d1 82 d0 b8 d1 80 d0 be d0 b2 d0 b0 d1 82  ................
2ef0: d1 8c 20 d1 84 d0 b0 d0 b9 d0 bb 20 d1 81 d0 ba  .. ........ ....
2f00: d1 80 d0 b8 d0 bf d1 82 d0 b0 20 d0 b2 20 d0 b7  .......... .. ..
2f10: d0 b0 d0 b4 d0 b0 d0 bd d0 bd d0 be d0 bc 20 d1  .............. .
2f20: 80 d0 b5 d0 b4 d0 b0 d0 ba d1 82 d0 be d1 80 d0  ................
2f30: b5 2c 20 d1 81 20 d0 b0 d0 b2 d1 82 d0 be 2d d0  ., .. ........-.
2f40: bf d0 b5 d1 80 d0 b5 d0 b7 d0 b0 d0 b3 d1 80 d1  ................
2f50: 83 d0 b7 d0 ba d0 be d0 b9 22 29 3b 0d 0a 7d 0d  .........");..}.
2f60: 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 47 65 74 41  ...function GetA
2f70: 64 64 69 6e 46 69 6c 65 50 61 74 68 28 61 64 64  ddinFilePath(add
2f80: 69 6e 4f 62 6a 65 63 74 29 0d 0a 7b 0d 0a 20 20  inObject)..{..  
2f90: 20 20 72 65 74 75 72 6e 20 61 64 64 69 6e 4f 62    return addinOb
2fa0: 6a 65 63 74 2e 66 75 6c 6c 50 61 74 68 2e 72 65  ject.fullPath.re
2fb0: 70 6c 61 63 65 28 2f 5e 5c 77 2b 3a 2f 2c 27 27  place(/^\w+:/,''
2fc0: 29 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 2a 2a 2a 2a  );..}..../* ****
2fd0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
2fe0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
2ff0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3000: 2a 2a 2a 2a 2a 2a 0d 0a 20 2a 20 20 d0 9a d0 bb  ******.. *  ....
3010: d0 b0 d1 81 d1 81 20 41 64 64 69 6e 49 6e 66 6f  ...... AddinInfo
3020: 2e 20 d0 a5 d1 80 d0 b0 d0 bd d0 b8 d1 82 20 d0  . ............ .
3030: b8 d0 bd d1 84 d0 be d1 80 d0 bc d0 b0 d1 86 d0  ................
3040: b8 d1 8e 20 d0 be 20 d1 80 d0 b5 d0 b4 d0 b0 d0  ... .. .........
3050: ba d1 82 d0 b8 d1 80 d1 83 d0 b5 d0 bc d0 be d0  ................
3060: bc 20 d0 b0 d0 b4 d0 b4 d0 b8 d0 bd d0 b5 2e 0d  . ..............
3070: 0a 20 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  . * ************
3080: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3090: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
30a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 20 2a 2f  ************* */
30b0: 0d 0a 66 75 6e 63 74 69 6f 6e 20 41 64 64 69 6e  ..function Addin
30c0: 49 6e 66 6f 28 61 64 64 69 6e 4f 62 6a 65 63 74  Info(addinObject
30d0: 29 20 0d 0a 7b 0d 0a 20 20 20 20 74 68 69 73 2e  ) ..{..    this.
30e0: 6f 62 6a 65 63 74 20 3d 20 61 64 64 69 6e 4f 62  object = addinOb
30f0: 6a 65 63 74 3b 0d 0a 20 20 20 20 74 68 69 73 2e  ject;..    this.
3100: 66 69 6c 65 20 3d 20 76 38 4e 65 77 28 22 d0 a4  file = v8New("..
3110: d0 b0 d0 b9 d0 bb 22 2c 20 47 65 74 41 64 64 69  ......", GetAddi
3120: 6e 46 69 6c 65 50 61 74 68 28 61 64 64 69 6e 4f  nFilePath(addinO
3130: 62 6a 65 63 74 29 29 3b 0d 0a 20 20 20 20 0d 0a  bject));..    ..
3140: 20 20 20 20 74 68 69 73 2e 6c 61 73 74 4d 6f 64      this.lastMod
3150: 69 66 69 65 64 20 3d 20 67 65 74 4d 6f 64 69 66  ified = getModif
3160: 69 63 61 74 69 6f 6e 53 74 61 6d 70 28 74 68 69  icationStamp(thi
3170: 73 2e 66 69 6c 65 29 3b 0d 0a 7d 0d 0a 0d 0a 41  s.file);..}....A
3180: 64 64 69 6e 49 6e 66 6f 2e 70 72 6f 74 6f 74 79  ddinInfo.prototy
3190: 70 65 2e 52 65 6c 6f 61 64 20 3d 20 66 75 6e 63  pe.Reload = func
31a0: 74 69 6f 6e 28 29 0d 0a 7b 0d 0a 20 20 20 20 76  tion()..{..    v
31b0: 61 72 20 6f 6c 64 49 6e 73 74 61 6e 63 65 20 3d  ar oldInstance =
31c0: 20 74 68 69 73 2e 6f 62 6a 65 63 74 3b 0d 0a 20   this.object;.. 
31d0: 20 20 20 0d 0a 20 20 20 20 76 61 72 20 75 6e 69     ..    var uni
31e0: 71 75 65 4e 61 6d 65 20 3d 20 6f 6c 64 49 6e 73  queName = oldIns
31f0: 74 61 6e 63 65 2e 75 6e 69 71 75 65 4e 61 6d 65  tance.uniqueName
3200: 3b 0d 0a 20 20 20 20 76 61 72 20 64 69 73 70 6c  ;..    var displ
3210: 61 79 4e 61 6d 65 20 3d 20 6f 6c 64 49 6e 73 74  ayName = oldInst
3220: 61 6e 63 65 2e 64 69 73 70 6c 61 79 4e 61 6d 65  ance.displayName
3230: 3b 0d 0a 20 20 20 20 76 61 72 20 6c 6f 61 64 53  ;..    var loadS
3240: 74 72 69 6e 67 20 3d 20 6f 6c 64 49 6e 73 74 61  tring = oldInsta
3250: 6e 63 65 2e 66 75 6c 6c 50 61 74 68 3b 0d 0a 20  nce.fullPath;.. 
3260: 20 20 20 76 61 72 20 61 64 64 69 6e 47 72 6f 75     var addinGrou
3270: 70 20 3d 20 6f 6c 64 49 6e 73 74 61 6e 63 65 2e  p = oldInstance.
3280: 67 72 6f 75 70 3b 0d 0a 0d 0a 20 20 20 20 74 72  group;....    tr
3290: 79 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20  y..    {..      
32a0: 20 20 61 64 64 69 6e 73 2e 75 6e 6c 6f 61 64 41    addins.unloadA
32b0: 64 64 69 6e 28 6f 6c 64 49 6e 73 74 61 6e 63 65  ddin(oldInstance
32c0: 29 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 63  );..    }..    c
32d0: 61 74 63 68 28 65 29 0d 0a 20 20 20 20 7b 0d 0a  atch(e)..    {..
32e0: 20 20 20 20 20 20 20 20 4d 65 73 73 61 67 65 28          Message(
32f0: 22 d0 9e d1 88 d0 b8 d0 b1 d0 ba d0 b0 20 d0 bf  "............ ..
3300: d1 80 d0 b8 20 d0 b2 d1 8b d0 b3 d1 80 d1 83 d0  .... ...........
3310: b7 d0 ba d0 b5 20 d0 b0 d0 b4 d0 b4 d0 b8 d0 bd  ..... ..........
3320: d0 b0 20 22 20 2b 20 64 69 73 70 6c 61 79 4e 61  .. " + displayNa
3330: 6d 65 20 2b 20 22 3a 20 22 20 2b 20 65 2e 64 65  me + ": " + e.de
3340: 73 63 72 69 70 74 69 6f 6e 29 3b 0d 0a 20 20 20  scription);..   
3350: 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 69 66   }..    ..    if
3360: 28 21 6f 6c 64 49 6e 73 74 61 6e 63 65 2e 75 6e  (!oldInstance.un
3370: 69 71 75 65 4e 61 6d 65 2e 6c 65 6e 67 74 68 29  iqueName.length)
3380: 20 20 2f 2f 20 d0 b0 d0 b4 d0 b4 d0 b8 d0 bd 20    // .......... 
3390: d1 80 d0 b5 d0 b0 d0 bb d1 8c d0 bd d0 be 20 d0  .............. .
33a0: b2 d1 8b d0 b3 d1 80 d1 83 d0 b7 d0 b8 d0 bb d1  ................
33b0: 81 d1 8f 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20  .....    {..    
33c0: 20 20 20 20 74 72 79 0d 0a 20 20 20 20 20 20 20      try..       
33d0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
33e0: 74 68 69 73 2e 6f 62 6a 65 63 74 20 3d 20 61 64  this.object = ad
33f0: 64 69 6e 73 2e 6c 6f 61 64 41 64 64 69 6e 28 6c  dins.loadAddin(l
3400: 6f 61 64 53 74 72 69 6e 67 2c 20 61 64 64 69 6e  oadString, addin
3410: 47 72 6f 75 70 29 3b 0d 0a 20 20 20 20 20 20 20  Group);..       
3420: 20 7d 0d 0a 20 20 20 20 20 20 20 20 63 61 74 63   }..        catc
3430: 68 28 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d  h(e)..        {.
3440: 0a 20 20 20 20 20 20 20 20 20 20 20 20 4d 65 73  .            Mes
3450: 73 61 67 65 28 22 d0 9e d1 88 d0 b8 d0 b1 d0 ba  sage("..........
3460: d0 b0 20 d0 bf d1 80 d0 b8 20 d0 b7 d0 b0 d0 b3  .. ...... ......
3470: d1 80 d1 83 d0 b7 d0 ba d0 b5 3a 20 22 20 2b 20  ..........: " + 
3480: 65 2e 64 65 73 63 72 69 70 74 69 6f 6e 29 3b 0d  e.description);.
3490: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20  .        }..    
34a0: 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 64 65 6c  }..    ..    del
34b0: 65 74 65 20 6f 6c 64 49 6e 73 74 61 6e 63 65 3b  ete oldInstance;
34c0: 0d 0a 0d 0a 20 20 20 20 2f 2f 20 d0 9d d0 b0 d0  ....    // .....
34d0: b4 d0 be 20 d0 bd d0 b0 d0 b9 d1 82 d0 b8 20 d0  ... .......... .
34e0: bd d0 be d0 b2 d1 8b d0 b9 20 d0 be d0 b1 d1 8a  ......... ......
34f0: d0 b5 d0 ba d1 82 20 d0 b0 d0 b4 d0 b4 d0 b8 d0  ...... .........
3500: bd d0 b0 20 d0 bf d0 be 20 d0 b5 d0 b3 d0 be 20  ... .... ...... 
3510: d0 b8 d0 bc d0 b5 d0 bd d0 b8 20 d0 b8 20 d0 b7  .......... .. ..
3520: d0 b0 d0 bf d0 be d0 bc d0 bd d0 b8 d1 82 d1 8c  ................
3530: 3a 0d 0a 20 20 20 20 2f 2f 74 68 69 73 2e 6f 62  :..    //this.ob
3540: 6a 65 63 74 20 3d 20 61 64 64 69 6e 73 2e 62 79  ject = addins.by
3550: 55 6e 69 71 75 65 4e 61 6d 65 28 75 6e 69 71 75  UniqueName(uniqu
3560: 65 4e 61 6d 65 29 3b 0d 0a 7d 0d 0a 0d 0a 41 64  eName);..}....Ad
3570: 64 69 6e 49 6e 66 6f 2e 70 72 6f 74 6f 74 79 70  dinInfo.prototyp
3580: 65 2e 43 68 65 63 6b 49 66 4d 6f 64 69 66 69 65  e.CheckIfModifie
3590: 64 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 0d 0a  d = function()..
35a0: 7b 0d 0a 20 20 20 20 76 61 72 20 63 75 72 53 74  {..    var curSt
35b0: 61 6d 70 20 3d 20 67 65 74 4d 6f 64 69 66 69 63  amp = getModific
35c0: 61 74 69 6f 6e 53 74 61 6d 70 28 74 68 69 73 2e  ationStamp(this.
35d0: 66 69 6c 65 29 3b 0d 0a 20 20 20 20 69 66 20 28  file);..    if (
35e0: 63 75 72 53 74 61 6d 70 20 21 3d 20 74 68 69 73  curStamp != this
35f0: 2e 6c 61 73 74 4d 6f 64 69 66 69 65 64 29 20 0d  .lastModified) .
3600: 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20  .    {..        
3610: 74 68 69 73 2e 6c 61 73 74 4d 6f 64 69 66 69 65  this.lastModifie
3620: 64 20 3d 20 63 75 72 53 74 61 6d 70 3b 0d 0a 20  d = curStamp;.. 
3630: 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72         return tr
3640: 75 65 3b 0d 0a 20 20 20 20 7d 0d 0a 0d 0a 20 20  ue;..    }....  
3650: 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0d    return false;.
3660: 0a 7d 0d 0a 0d 0a 2f 2a 20 2a 2a 2a 2a 2a 2a 2a  .}..../* *******
3670: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3680: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3690: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
36a0: 2a 2a 2a 0d 0a 20 2a 20 20 d0 9e d0 b1 d1 80 d0  ***.. *  .......
36b0: b0 d0 b1 d0 be d1 82 d1 87 d0 b8 d0 ba d0 b8 20  ............... 
36c0: d1 81 d0 be d0 b1 d1 8b d1 82 d0 b8 d0 b9 20 d0  .............. .
36d0: ad d0 a3 20 d1 84 d0 be d1 80 d0 bc d1 8b 20 d0  ... .......... .
36e0: bd d0 b0 d1 81 d1 82 d1 80 d0 be d0 b9 d0 ba d0  ................
36f0: b8 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 b0  . ..............
3700: 2e 0d 0a 20 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ... * **********
3710: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3720: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3730: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 20  *************** 
3740: 2a 2f 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 d0  */....function .
3750: 9e d0 9a d0 9d d0 b0 d0 b6 d0 b0 d1 82 d0 b8 d0  ................
3760: b5 28 d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82  .(..............
3770: 29 0d 0a 20 7b 0d 0a 20 20 20 20 69 66 20 28 63  ).. {..    if (c
3780: 68 65 63 6b 49 6e 74 65 72 76 61 6c 20 21 3d 20  heckInterval != 
3790: 66 6f 72 6d 2e 63 68 65 63 6b 49 6e 74 65 72 76  form.checkInterv
37a0: 61 6c 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20  al)..    {..    
37b0: 20 20 20 20 63 68 65 63 6b 49 6e 74 65 72 76 61      checkInterva
37c0: 6c 20 3d 20 66 6f 72 6d 2e 63 68 65 63 6b 49 74  l = form.checkIt
37d0: 65 72 76 61 6c 3b 0d 0a 20 20 20 20 20 20 20 20  erval;..        
37e0: 70 72 6f 66 69 6c 65 52 6f 6f 74 2e 73 65 74 56  profileRoot.setV
37f0: 61 6c 75 65 28 70 66 6c 50 61 74 68 73 2e 63 68  alue(pflPaths.ch
3800: 65 63 6b 49 74 65 72 76 61 6c 2c 20 63 68 65 63  eckIterval, chec
3810: 6b 49 6e 74 65 72 76 61 6c 29 3b 20 20 20 20 20  kInterval);     
3820: 20 20 20 20 20 20 0d 0a 20 20 20 20 7d 0d 0a 20        ..    }.. 
3830: 20 20 20 0d 0a 20 20 20 20 69 66 20 28 72 75 6e     ..    if (run
3840: 45 64 69 74 6f 72 43 6d 64 20 21 3d 20 66 6f 72  EditorCmd != for
3850: 6d 2e 72 75 6e 45 64 69 74 6f 72 43 6d 64 29 0d  m.runEditorCmd).
3860: 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20  .    {..        
3870: 72 75 6e 45 64 69 74 6f 72 43 6d 64 20 3d 20 66  runEditorCmd = f
3880: 6f 72 6d 2e 72 75 6e 45 64 69 74 6f 72 43 6d 64  orm.runEditorCmd
3890: 3b 0d 0a 20 20 20 20 20 20 20 20 70 72 6f 66 69  ;..        profi
38a0: 6c 65 52 6f 6f 74 2e 73 65 74 56 61 6c 75 65 28  leRoot.setValue(
38b0: 70 66 6c 50 61 74 68 73 2e 72 75 6e 45 64 69 74  pflPaths.runEdit
38c0: 6f 72 43 6d 64 2c 20 72 75 6e 45 64 69 74 6f 72  orCmd, runEditor
38d0: 43 6d 64 29 3b 20 20 20 20 20 20 20 20 20 20 20  Cmd);           
38e0: 0d 0a 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 69  ..    }....    i
38f0: 66 20 28 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f  f (askBeforeRelo
3900: 61 64 20 21 3d 20 66 6f 72 6d 2e 61 73 6b 42 65  ad != form.askBe
3910: 66 6f 72 65 52 65 6c 6f 61 64 29 0d 0a 20 20 20  foreReload)..   
3920: 20 7b 0d 0a 20 20 20 20 20 20 20 20 61 73 6b 42   {..        askB
3930: 65 66 6f 72 65 52 65 6c 6f 61 64 20 3d 20 66 6f  eforeReload = fo
3940: 72 6d 2e 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f  rm.askBeforeRelo
3950: 61 64 3b 0d 0a 20 20 20 20 20 20 20 20 70 72 6f  ad;..        pro
3960: 66 69 6c 65 52 6f 6f 74 2e 73 65 74 56 61 6c 75  fileRoot.setValu
3970: 65 28 70 66 6c 50 61 74 68 73 2e 61 73 6b 42 65  e(pflPaths.askBe
3980: 66 6f 72 65 52 65 6c 6f 61 64 2c 20 61 73 6b 42  foreReload, askB
3990: 65 66 6f 72 65 52 65 6c 6f 61 64 29 3b 20 20 20  eforeReload);   
39a0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 7d 0d          ..    }.
39b0: 0a 20 20 20 20 0d 0a 0d 0a 20 20 20 20 66 6f 72  .    ....    for
39c0: 6d 2e d0 97 d0 b0 d0 ba d1 80 d1 8b d1 82 d1 8c  m...............
39d0: 28 29 3b 0d 0a 20 7d 0d 0a 20 0d 0a 66 75 6e 63  ();.. }.. ..func
39e0: 74 69 6f 6e 20 72 75 6e 45 64 69 74 6f 72 43 6d  tion runEditorCm
39f0: 64 d0 9d d0 b0 d1 87 d0 b0 d0 bb d0 be d0 92 d1  d...............
3a00: 8b d0 b1 d0 be d1 80 d0 b0 28 d0 ad d0 bb d0 b5  .........(......
3a10: d0 bc d0 b5 d0 bd d1 82 2c 20 d0 a1 d1 82 d0 b0  ........, ......
3a20: d0 bd d0 b4 d0 b0 d1 80 d1 82 d0 bd d0 b0 d1 8f  ................
3a30: d0 9e d0 b1 d1 80 d0 b0 d0 b1 d0 be d1 82 d0 ba  ................
3a40: d0 b0 29 0d 0a 7b 0d 0a 20 20 20 20 d0 a1 d1 82  ..)..{..    ....
3a50: d0 b0 d0 bd d0 b4 d0 b0 d1 80 d1 82 d0 bd d0 b0  ................
3a60: d1 8f d0 9e d0 b1 d1 80 d0 b0 d0 b1 d0 be d1 82  ................
3a70: d0 ba d0 b0 2e 76 61 6c 20 3d 20 66 61 6c 73 65  .....val = false
3a80: 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 61 72  ;..    ..    var
3a90: 20 73 65 6c 44 6c 67 20 3d 20 76 38 4e 65 77 28   selDlg = v8New(
3aa0: 22 d0 94 d0 b8 d0 b0 d0 bb d0 be d0 b3 d0 92 d1  "...............
3ab0: 8b d0 b1 d0 be d1 80 d0 b0 d0 a4 d0 b0 d0 b9 d0  ................
3ac0: bb d0 b0 22 2c 20 76 38 4e 65 77 28 22 d0 9f d0  ...", v8New("...
3ad0: b5 d1 80 d0 b5 d1 87 d0 b8 d1 81 d0 bb d0 b5 d0  ................
3ae0: bd d0 b8 d0 b5 d0 a0 d0 b5 d0 b6 d0 b8 d0 bc d0  ................
3af0: 94 d0 b8 d0 b0 d0 bb d0 be d0 b3 d0 b0 d0 92 d1  ................
3b00: 8b d0 b1 d0 be d1 80 d0 b0 d0 a4 d0 b0 d0 b9 d0  ................
3b10: bb d0 b0 22 29 2e d0 9e d1 82 d0 ba d1 80 d1 8b  ...")...........
3b20: d1 82 d0 b8 d0 b5 29 3b 0d 0a 20 20 20 20 73 65  ......);..    se
3b30: 6c 44 6c 67 2e d0 97 d0 b0 d0 b3 d0 be d0 bb d0  lDlg............
3b40: be d0 b2 d0 be d0 ba 20 3d 20 22 d0 92 d1 8b d0  ....... = ".....
3b50: b1 d0 b5 d1 80 d0 b8 d1 82 d0 b5 20 d0 b8 d1 81  ........... ....
3b60: d0 bf d0 be d0 bb d0 bd d1 8f d0 b5 d0 bc d1 8b  ................
3b70: d0 b9 20 d1 84 d0 b0 d0 b9 d0 bb 20 d1 80 d0 b5  .. ........ ....
3b80: d0 b4 d0 b0 d0 ba d1 82 d0 be d1 80 d0 b0 2f 49  ............../I
3b90: 44 45 22 3b 0d 0a 20 20 20 20 73 65 6c 44 6c 67  DE";..    selDlg
3ba0: 2e d0 9f d0 be d0 bb d0 bd d0 be d0 b5 d0 98 d0  ................
3bb0: bc d1 8f d0 a4 d0 b0 d0 b9 d0 bb d0 b0 20 3d 20  ............. = 
3bc0: 22 22 3b 0d 0a 20 20 20 20 73 65 6c 44 6c 67 2e  "";..    selDlg.
3bd0: d0 9f d1 80 d0 b5 d0 b4 d0 b2 d0 b0 d1 80 d0 b8  ................
3be0: d1 82 d0 b5 d0 bb d1 8c d0 bd d1 8b d0 b9 d0 9f  ................
3bf0: d1 80 d0 be d1 81 d0 bc d0 be d1 82 d1 80 20 3d  .............. =
3c00: 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 73 65 6c   false;..    sel
3c10: 44 6c 67 2e d0 a4 d0 b8 d0 bb d1 8c d1 82 d1 80  Dlg.............
3c20: 20 3d 20 22 d0 98 d1 81 d0 bf d0 be d0 bb d0 bd   = "............
3c30: d1 8f d0 b5 d0 bc d1 8b d0 b5 20 d1 84 d0 b0 d0  .......... .....
3c40: b9 d0 bb d1 8b 20 28 2a 2e 65 78 65 29 7c 2a 2e  ..... (*.exe)|*.
3c50: 65 78 65 7c d0 92 d1 81 d0 b5 20 d1 84 d0 b0 d0  exe|...... .....
3c60: b9 d0 bb d1 8b 7c 2a 22 3b 0d 0a 0d 0a 20 20 20  .....|*";....   
3c70: 20 69 66 20 28 73 65 6c 44 6c 67 2e d0 92 d1 8b   if (selDlg.....
3c80: d0 b1 d1 80 d0 b0 d1 82 d1 8c 28 29 29 0d 0a 20  ..........()).. 
3c90: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 66 6f     {..        fo
3ca0: 72 6d 2e 72 75 6e 45 64 69 74 6f 72 43 6d 64 20  rm.runEditorCmd 
3cb0: 3d 20 73 65 6c 44 6c 67 2e d0 9f d0 be d0 bb d0  = selDlg........
3cc0: bd d0 be d0 b5 d0 98 d0 bc d1 8f d0 a4 d0 b0 d0  ................
3cd0: b9 d0 bb d0 b0 3b 0d 0a 20 20 20 20 20 20 20 20  .....;..        
3ce0: 69 66 20 28 66 6f 72 6d 2e 72 75 6e 45 64 69 74  if (form.runEdit
3cf0: 6f 72 43 6d 64 2e 6d 61 74 63 68 28 2f 65 78 65  orCmd.match(/exe
3d00: 24 2f 29 29 20 0d 0a 20 20 20 20 20 20 20 20 20  $/)) ..         
3d10: 20 20 20 66 6f 72 6d 2e 72 75 6e 45 64 69 74 6f     form.runEdito
3d20: 72 43 6d 64 20 2b 3d 20 27 20 22 25 31 22 27 3b  rCmd += ' "%1"';
3d30: 0d 0a 20 20 20 20 7d 20 20 20 20 0d 0a 7d 0d 0a  ..    }    ..}..
3d40: 0d 0a 66 75 6e 63 74 69 6f 6e 20 6c 62 53 63 72  ..function lbScr
3d50: 69 70 74 41 62 6f 75 74 d0 9d d0 b0 d0 b6 d0 b0  iptAbout........
3d60: d1 82 d0 b8 d0 b5 28 29 0d 0a 7b 0d 0a 20 20 20  ......()..{..   
3d70: 20 d0 97 d0 b0 d0 bf d1 83 d1 81 d1 82 d0 b8 d1   ...............
3d80: 82 d1 8c d0 9f d1 80 d0 b8 d0 bb d0 be d0 b6 d0  ................
3d90: b5 d0 bd d0 b8 d0 b5 28 22 68 74 74 70 3a 2f 2f  .......("http://
3da0: 73 6e 65 67 6f 70 61 74 2e 72 75 2f 73 63 72 69  snegopat.ru/scri
3db0: 70 74 73 2f 77 69 6b 69 3f 6e 61 6d 65 3d 44 65  pts/wiki?name=De
3dc0: 76 54 6f 6f 6c 73 2f 73 63 72 69 70 74 64 65 76  vTools/scriptdev
3dd0: 2e 6a 73 22 29 3b 0d 0a 7d 0d 0a 0d 0a 2f 2f 2f  .js");..}....///
3de0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
3df0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
3e00: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
3e10: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
3e20: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
3e30: 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 20 d0 9f d0 be  /////..//// ....
3e40: d0 b4 d0 b4 d0 b5 d1 80 d0 b6 d0 ba d0 b0 20 d0  .............. .
3e50: bf d1 80 d0 be d0 b2 d0 b5 d1 80 d0 ba d0 b8 20  ............... 
3e60: d1 81 d0 b8 d0 bd d1 82 d0 b0 d0 ba d1 81 d0 b8  ................
3e70: d1 81 d0 b0 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1  .... ...........
3e80: 82 d0 be d0 b2 20 28 4a 53 48 69 6e 74 29 0d 0a  ..... (JSHint)..
3e90: 2f 2f 2f 2f 20 0d 0a 0d 0a 66 75 6e 63 74 69 6f  //// ....functio
3ea0: 6e 20 6d 61 63 72 6f 73 d0 9f d1 80 d0 be d0 b2  n macros........
3eb0: d0 b5 d1 80 d0 b8 d1 82 d1 8c d0 a1 d0 ba d1 80  ................
3ec0: d0 b8 d0 bf d1 82 28 29 20 7b 0d 0a 0d 0a 20 20  ......() {....  
3ed0: 20 20 76 61 72 20 65 72 72 43 6f 75 6e 74 20 3d    var errCount =
3ee0: 20 30 2c 0d 0a 20 20 20 20 20 20 20 20 73 63 72   0,..        scr
3ef0: 20 3d 20 6e 65 77 20 53 63 72 69 70 74 57 69 6e   = new ScriptWin
3f00: 64 6f 77 28 29 3b 0d 0a 0d 0a 20 20 20 20 69 66  dow();....    if
3f10: 20 28 21 73 63 72 2e 49 73 53 63 72 69 70 74 28   (!scr.IsScript(
3f20: 29 29 20 7b 0d 0a 20 20 20 20 09 73 74 64 63 6f  )) {..    .stdco
3f30: 6d 6d 61 6e 64 73 2e 46 72 6e 74 65 6e 64 2e 53  mmands.Frntend.S
3f40: 79 6e 74 61 78 43 68 65 63 6b 2e 73 65 6e 64 28  yntaxCheck.send(
3f50: 29 3b 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75  );..        retu
3f60: 72 6e 3b 0d 0a 20 20 20 20 7d 0d 0a 0d 0a 20 20  rn;..    }....  
3f70: 20 20 69 66 20 28 21 4a 53 48 49 4e 54 28 73 63    if (!JSHINT(sc
3f80: 72 2e 47 65 74 43 6f 64 65 4c 69 6e 65 73 28 29  r.GetCodeLines()
3f90: 29 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 69 66  )) {..        if
3fa0: 20 28 4a 53 48 49 4e 54 2e 65 72 72 6f 72 73 2e   (JSHINT.errors.
3fb0: 6c 65 6e 67 74 68 29 20 7b 0d 0a 20 20 20 20 20  length) {..     
3fc0: 20 20 20 20 20 20 20 76 61 72 20 6f 66 66 73 65         var offse
3fd0: 74 20 3d 20 73 63 72 2e 47 65 74 43 6f 64 65 53  t = scr.GetCodeS
3fe0: 74 61 72 74 4c 69 6e 65 28 29 3b 0d 0a 20 20 20  tartLine();..   
3ff0: 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61           for (va
4000: 72 20 69 3d 30 3b 20 69 3c 4a 53 48 49 4e 54 2e  r i=0; i<JSHINT.
4010: 65 72 72 6f 72 73 2e 6c 65 6e 67 74 68 3b 20 69  errors.length; i
4020: 2b 2b 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 20  ++) {..         
4030: 20 20 20 20 20 20 20 69 66 20 28 4a 53 48 49 4e         if (JSHIN
4040: 54 2e 65 72 72 6f 72 73 5b 69 5d 29 20 7b 0d 0a  T.errors[i]) {..
4050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4060: 20 20 20 20 65 72 72 43 6f 75 6e 74 2b 2b 3b 0d      errCount++;.
4070: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
4080: 20 20 20 20 20 73 68 6f 77 45 72 72 6f 72 28 73       showError(s
4090: 63 72 2c 20 4a 53 48 49 4e 54 2e 65 72 72 6f 72  cr, JSHINT.error
40a0: 73 5b 69 5d 2c 20 6f 66 66 73 65 74 29 3b 0d 0a  s[i], offset);..
40b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
40c0: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d  }..            }
40d0: 0d 0a 20 20 20 20 20 20 20 20 7d 20 20 20 20 20  ..        }     
40e0: 20 20 20 0d 0a 20 20 20 20 7d 09 0d 0a 20 20 20     ..    }...   
40f0: 20 0d 0a 20 20 20 20 69 66 20 28 65 72 72 43 6f   ..    if (errCo
4100: 75 6e 74 20 3d 3d 3d 20 30 29 20 7b 0d 0a 20 20  unt === 0) {..  
4110: 20 20 20 20 20 20 4d 65 73 73 61 67 65 28 22 d0        Message(".
4120: a1 d0 b8 d0 bd d1 82 d0 b0 d0 ba d1 81 d0 b8 d1  ................
4130: 87 d0 b5 d1 81 d0 ba d0 b8 d1 85 20 d0 be d1 88  ........... ....
4140: d0 b8 d0 b1 d0 be d0 ba 20 d0 bd d0 b5 20 d0 be  ........ .... ..
4150: d0 b1 d0 bd d0 b0 d1 80 d1 83 d0 b6 d0 b5 d0 bd  ................
4160: d0 be 21 22 29 3b 0d 0a 20 20 20 20 7d 20 20 20  ..!");..    }   
4170: 20 20 20 20 20 20 0d 0a 20 20 20 20 0d 0a 20 20        ..    ..  
4180: 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 20 20    return true;  
4190: 20 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e   ..}....function
41a0: 20 6d 61 63 72 6f 73 d0 9f d0 be d0 ba d0 b0 d0   macros.........
41b0: b7 d0 b0 d1 82 d1 8c d0 a1 d0 bf d0 b8 d1 81 d0  ................
41c0: be d0 ba d0 9c d0 b5 d1 82 d0 be d0 b4 d0 be d0  ................
41d0: b2 d0 a1 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 b0 28  ...............(
41e0: 29 20 7b 0d 0a 0d 0a 20 20 20 76 61 72 20 65 72  ) {....   var er
41f0: 72 43 6f 75 6e 74 20 3d 20 30 2c 0d 0a 20 20 20  rCount = 0,..   
4200: 20 20 20 20 20 73 63 72 20 3d 20 6e 65 77 20 53       scr = new S
4210: 63 72 69 70 74 57 69 6e 64 6f 77 28 29 2c 0d 0a  criptWindow(),..
4220: 20 20 20 20 20 20 20 20 64 61 74 61 20 3d 20 6e          data = n
4230: 75 6c 6c 2c 0d 0a 20 20 20 20 20 20 20 20 76 6c  ull,..        vl
4240: 46 75 6e 63 73 20 3d 20 76 38 4e 65 77 28 27 56  Funcs = v8New('V
4250: 61 6c 75 65 4c 69 73 74 27 29 3b 0d 0a 0d 0a 20  alueList');.... 
4260: 20 20 20 69 66 20 28 21 73 63 72 2e 49 73 53 63     if (!scr.IsSc
4270: 72 69 70 74 28 29 29 20 7b 0d 0a 20 20 20 20 09  ript()) {..    .
4280: 73 6e 65 67 6f 70 61 74 2e 73 68 6f 77 4d 65 74  snegopat.showMet
4290: 68 6f 64 73 4c 69 73 74 28 29 3b 0d 0a 20 20 20  hodsList();..   
42a0: 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20       return;..  
42b0: 20 20 7d 0d 0a 0d 0a 20 20 20 20 4a 53 48 49 4e    }....    JSHIN
42c0: 54 28 73 63 72 2e 47 65 74 43 6f 64 65 4c 69 6e  T(scr.GetCodeLin
42d0: 65 73 28 29 29 3b 0d 0a 20 20 20 20 0d 0a 09 4a  es());..    ...J
42e0: 53 48 49 4e 54 2e 64 61 74 61 28 29 2e 66 75 6e  SHINT.data().fun
42f0: 63 74 69 6f 6e 73 2e 66 6f 72 45 61 63 68 28 66  ctions.forEach(f
4300: 75 6e 63 74 69 6f 6e 28 66 75 6e 63 29 20 7b 0d  unction(func) {.
4310: 0a 09 09 76 6c 46 75 6e 63 73 2e 41 64 64 28 66  ...vlFuncs.Add(f
4320: 75 6e 63 2c 20 66 75 6e 63 2e 6e 61 6d 65 2e 72  unc, func.name.r
4330: 65 70 6c 61 63 65 28 2f 5e 5c 22 28 2e 2b 3f 29  eplace(/^\"(.+?)
4340: 5c 22 24 2f 2c 20 22 24 31 22 29 29 3b 0d 0a 09  \"$/, "$1"));...
4350: 7d 29 3b 0d 0a 09 0d 0a 09 76 61 72 20 64 6c 67  });......var dlg
4360: 20 3d 20 6e 65 77 20 53 65 6c 65 63 74 56 61 6c   = new SelectVal
4370: 75 65 44 69 61 6c 6f 67 28 22 d0 92 d1 8b d0 b1  ueDialog("......
4380: d0 b5 d1 80 d0 b8 d1 82 d0 b5 20 d0 bc d0 b5 d1  .......... .....
4390: 82 d0 be d0 b4 22 2c 20 76 6c 46 75 6e 63 73 29  .....", vlFuncs)
43a0: 3b 0d 0a 09 69 66 20 28 64 6c 67 2e 73 65 6c 65  ;...if (dlg.sele
43b0: 63 74 56 61 6c 75 65 28 29 29 20 7b 0d 0a 09 09  ctValue()) {....
43c0: 73 63 72 2e 53 65 74 43 61 72 65 74 50 6f 73 28  scr.SetCaretPos(
43d0: 64 6c 67 2e 73 65 6c 65 63 74 65 64 56 61 6c 75  dlg.selectedValu
43e0: 65 2e 6c 69 6e 65 20 2b 20 73 63 72 2e 47 65 74  e.line + scr.Get
43f0: 43 6f 64 65 53 74 61 72 74 4c 69 6e 65 28 29 2c  CodeStartLine(),
4400: 20 31 29 3b 0d 0a 09 7d 0d 0a 09 0d 0a 09 72 65   1);...}......re
4410: 74 75 72 6e 20 74 72 75 65 3b 0d 0a 7d 0d 0a 0d  turn true;..}...
4420: 0a 53 63 72 69 70 74 57 69 6e 64 6f 77 20 3d 20  .ScriptWindow = 
4430: 54 65 78 74 57 69 6e 64 6f 77 2e 65 78 74 65 6e  TextWindow.exten
4440: 64 28 7b 0d 0a 0d 0a 20 20 20 20 63 6f 6e 73 74  d({....    const
4450: 72 75 63 74 3a 20 66 75 6e 63 74 69 6f 6e 28 29  ruct: function()
4460: 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73   {..        this
4470: 2e 5f 73 75 70 65 72 28 29 3b 09 09 0d 0a 20 20  ._super();....  
4480: 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20    },..    ..    
4490: 49 73 53 63 72 69 70 74 3a 20 66 75 6e 63 74 69  IsScript: functi
44a0: 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 09 69 66 20  on() {..    .if 
44b0: 28 74 68 69 73 2e 49 73 41 63 74 69 76 65 28 29  (this.IsActive()
44c0: 29 20 7b 0d 0a 20 20 20 20 09 09 76 61 72 20 76  ) {..    ..var v
44d0: 69 65 77 20 3d 20 74 68 69 73 2e 47 65 74 56 69  iew = this.GetVi
44e0: 65 77 28 29 3b 0d 0a 20 09 09 09 69 66 20 28 76  ew();.. ...if (v
44f0: 69 65 77 29 20 7b 0d 0a 20 09 09 09 09 76 61 72  iew) {.. ....var
4500: 20 64 6f 63 20 3d 20 76 69 65 77 2e 67 65 74 44   doc = view.getD
4510: 6f 63 75 6d 65 6e 74 28 29 3b 0d 0a 20 09 09 09  ocument();.. ...
4520: 09 69 66 20 28 64 6f 63 29 20 7b 0d 0a 20 09 09  .if (doc) {.. ..
4530: 09 09 09 69 66 20 28 64 6f 63 2e 70 61 74 68 2e  ...if (doc.path.
4540: 6d 61 74 63 68 28 2f 5c 2e 28 6a 73 7c 76 62 73  match(/\.(js|vbs
4550: 29 24 2f 69 29 29 20 7b 0d 0a 20 09 09 09 09 09  )$/i)) {.. .....
4560: 09 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a 20  .return true;.. 
4570: 09 09 09 09 09 7d 0d 0a 20 09 09 09 09 7d 0d 0a  .....}.. ....}..
4580: 20 09 09 09 7d 0d 0a 09 20 20 20 20 20 20 20 20   ...}...        
4590: 76 61 72 20 6c 69 6e 65 73 20 3d 20 74 68 69 73  var lines = this
45a0: 2e 47 65 74 4c 69 6e 65 73 28 29 3b 0d 0a 09 20  .GetLines();... 
45b0: 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6c 69         return li
45c0: 6e 65 73 2e 6c 65 6e 67 74 68 20 26 26 20 6c 69  nes.length && li
45d0: 6e 65 73 5b 30 5d 2e 6d 61 74 63 68 28 2f 5e 5c  nes[0].match(/^\
45e0: 24 2f 29 3b 0d 0a 20 20 20 20 09 7d 0d 0a 20 20  $/);..    .}..  
45f0: 20 20 09 72 65 74 75 72 6e 20 66 61 6c 73 65 3b    .return false;
4600: 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a  ..    },..    ..
4610: 20 20 20 20 47 65 74 43 6f 64 65 53 74 61 72 74      GetCodeStart
4620: 4c 69 6e 65 3a 20 66 75 6e 63 74 69 6f 6e 28 29  Line: function()
4630: 20 7b 09 0d 0a 20 20 20 20 20 20 20 20 76 61 72   {...        var
4640: 20 73 74 61 72 74 20 3d 20 30 2c 0d 0a 20 20 20   start = 0,..   
4650: 20 20 20 20 20 20 20 20 20 6c 69 6e 65 73 20 3d           lines =
4660: 20 74 68 69 73 2e 47 65 74 4c 69 6e 65 73 28 29   this.GetLines()
4670: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d  ;..            .
4680: 0a 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28  .        while (
4690: 73 74 61 72 74 20 3c 20 6c 69 6e 65 73 2e 6c 65  start < lines.le
46a0: 6e 67 74 68 29 20 7b 0d 0a 20 20 20 20 20 20 20  ngth) {..       
46b0: 20 20 20 20 20 69 66 20 28 21 6c 69 6e 65 73 5b       if (!lines[
46c0: 73 74 61 72 74 5d 2e 6d 61 74 63 68 28 2f 5e 5c  start].match(/^\
46d0: 24 2f 29 20 26 26 20 0d 0a 20 20 20 20 20 20 20  $/) && ..       
46e0: 20 20 20 20 20 20 20 20 20 21 6c 69 6e 65 73 5b           !lines[
46f0: 73 74 61 72 74 5d 2e 6d 61 74 63 68 28 2f 5e 5c  start].match(/^\
4700: 73 2a 24 2f 29 29 20 7b 0d 0a 20 20 20 20 20 20  s*$/)) {..      
4710: 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b            break;
4720: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d  ..            }.
4730: 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61  .            sta
4740: 72 74 2b 2b 3b 0d 0a 20 20 20 20 20 20 20 20 7d  rt++;..        }
4750: 09 09 09 0d 0a 20 20 20 20 20 20 20 20 72 65 74  .....        ret
4760: 75 72 6e 20 73 74 61 72 74 3b 0d 0a 20 20 20 20  urn start;..    
4770: 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 47 65  },..    ..    Ge
4780: 74 43 6f 64 65 4c 69 6e 65 73 20 3a 20 66 75 6e  tCodeLines : fun
4790: 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 20  ction() {..     
47a0: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 47     return this.G
47b0: 65 74 4c 69 6e 65 73 28 29 2e 73 6c 69 63 65 28  etLines().slice(
47c0: 74 68 69 73 2e 47 65 74 43 6f 64 65 53 74 61 72  this.GetCodeStar
47d0: 74 4c 69 6e 65 28 29 29 3b 0d 0a 20 20 20 20 7d  tLine());..    }
47e0: 0d 0a 20 20 20 20 0d 0a 7d 29 3b 0d 0a 0d 0a 66  ..    ..});....f
47f0: 75 6e 63 74 69 6f 6e 20 73 68 6f 77 45 72 72 6f  unction showErro
4800: 72 28 74 77 2c 20 65 2c 20 6f 66 66 73 65 74 29  r(tw, e, offset)
4810: 20 7b 09 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76   {...    ..    v
4820: 61 72 20 65 76 69 64 65 6e 63 65 20 3d 20 27 27  ar evidence = ''
4830: 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 2f 2a 20  ;..    ..    /* 
4840: d0 a4 d0 be d1 80 d0 bc d0 b0 d1 82 20 d0 b2 d1  ............ ...
4850: 8b d0 b2 d0 be d0 b4 d0 b0 20 d0 be d1 88 d0 b8  ......... ......
4860: d0 b1 d0 ba d0 b8 20 d0 ba d0 b0 d0 ba 20 d0 b2  ...... ...... ..
4870: 20 31 d0 a1 3a 0d 0a 20 20 20 20 20 20 20 20 20   1..:..         
4880: 20 20 20 7b d0 93 d0 b4 d0 b5 7d 3a 20 d0 a7 d1     {......}: ...
4890: 82 d0 be 0d 0a 20 20 20 20 20 20 20 20 20 20 20  .....           
48a0: 20 d1 87 d0 b0 d1 81 d1 82 d1 8c 20 d1 81 d1 82   .......... ....
48b0: d1 80 d0 be d0 ba d0 b8 20 d1 81 20 d0 be d1 88  ........ .. ....
48c0: d0 b8 d0 b1 d0 ba d0 be d0 b9 3c 3c 3f 3e 3e 09  ..........<<?>>.
48d0: 0d 0a 20 20 20 20 20 20 20 20 3c 3c 3f 3e 3e 20  ..        <<?>> 
48e0: 2d 20 d0 bc d0 b0 d1 80 d0 ba d0 b5 d1 80 20 d0  - ............ .
48f0: bf d0 be d0 b7 d0 b8 d1 86 d0 b8 d0 b8 2c 20 d0  ............., .
4900: b2 20 d0 ba d0 be d1 82 d0 be d1 80 d0 be d0 bc  . ..............
4910: 20 d0 bf d1 80 d0 be d0 b8 d0 b7 d0 be d1 88 d0   ...............
4920: bb d0 b0 20 d0 be d1 88 d0 b8 d0 b1 d0 ba d0 b0  ... ............
4930: 2e 09 0d 0a 20 20 20 20 2a 2f 0d 0a 20 20 20 20  ....    */..    
4940: 0d 0a 20 20 20 20 69 66 20 28 65 2e 65 76 69 64  ..    if (e.evid
4950: 65 6e 63 65 29 20 7b 20 0d 0a 20 20 20 20 20 20  ence) { ..      
4960: 20 20 65 76 69 64 65 6e 63 65 20 3d 20 22 5c 6e    evidence = "\n
4970: 22 20 2b 20 65 2e 65 76 69 64 65 6e 63 65 3b 0d  " + e.evidence;.
4980: 0a 20 20 20 20 7d 0d 0a 20 20 20 20 4d 65 73 73  .    }..    Mess
4990: 61 67 65 28 22 7b 22 20 2b 20 65 2e 6c 69 6e 65  age("{" + e.line
49a0: 20 2b 20 22 7d 20 22 20 2b 20 65 2e 72 65 61 73   + "} " + e.reas
49b0: 6f 6e 20 2b 20 65 76 69 64 65 6e 63 65 2c 20 6d  on + evidence, m
49c0: 45 78 63 32 2c 20 0d 0a 20 20 20 20 09 66 75 6e  Exc2, ..    .fun
49d0: 63 74 69 6f 6e 20 28 6f 29 20 7b 6f 2e 77 2e 53  ction (o) {o.w.S
49e0: 65 74 43 61 72 65 74 50 6f 73 28 6f 2e 72 2c 20  etCaretPos(o.r, 
49f0: 6f 2e 63 29 3b 7d 2c 20 0d 0a 20 20 20 20 09 7b  o.c);}, ..    .{
4a00: 77 3a 74 77 2c 20 72 3a 65 2e 6c 69 6e 65 20 2b  w:tw, r:e.line +
4a10: 20 6f 66 66 73 65 74 2c 20 63 3a 65 2e 63 68 61   offset, c:e.cha
4a20: 72 61 63 74 65 72 7d 0d 0a 20 20 20 20 29 3b 0d  racter}..    );.
4a30: 0a 7d 0d 0a 0d 0a 2f 2f 2f 2f 20 0d 0a 2f 2f 2f  .}....//// ..///
4a40: 2f 20 d0 9f d0 be d0 b4 d0 b4 d0 b5 d1 80 d0 b6  / ..............
4a50: d0 ba d0 b0 20 d0 bf d1 80 d0 be d0 b2 d0 b5 d1  .... ...........
4a60: 80 d0 ba d0 b8 20 d1 81 d0 b8 d0 bd d1 82 d0 b0  ..... ..........
4a70: d0 ba d1 81 d0 b8 d1 81 d0 b0 20 d1 81 d0 ba d1  .......... .....
4a80: 80 d0 b8 d0 bf d1 82 d0 be d0 b2 20 28 4a 53 48  ........... (JSH
4a90: 69 6e 74 29 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  int)..//////////
4aa0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
4ab0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
4ac0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
4ad0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
4ae0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a  //////////////..
4af0: 0d 0a 2f 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ../* ***********
4b00: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
4b10: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
4b20: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d  ***************.
4b30: 0a 20 2a 20 20 d0 98 d0 bd d0 b8 d1 86 d0 b8 d0  . *  ...........
4b40: b0 d0 bb d0 b8 d0 b7 d0 b0 d1 86 d0 b8 d1 8f 20  ............... 
4b50: d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 b0 2e 0d  ................
4b60: 0a 20 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  . * ************
4b70: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
4b80: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
4b90: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 20 2a 2f  ************* */
4ba0: 0d 0a 0d 0a 20 49 6e 69 74 53 63 72 69 70 74 41  .... InitScriptA
4bb0: 6e 64 52 75 6e 28 29 3b 0d 0a 0d 0a 66 75 6e 63  ndRun();....func
4bc0: 74 69 6f 6e 20 6d 61 63 72 6f 73 74 65 73 74 54  tion macrostestT
4bd0: 68 72 6f 77 28 29 0d 0a 7b 0d 0a 20 20 20 20 74  hrow()..{..    t
4be0: 68 72 6f 77 20 22 65 78 63 65 70 74 69 6f 6e 22  hrow "exception"
4bf0: 0d 0a 7d 0d 0a                                   ..}..