Artifact
885c5e3a46391a51fb65004a436771889b07e654:
- File
vtcreator.js
— part of check-in
[3d380318fb]
at
2011-10-31 05:11:50
on branch trunk
— исправлен конструктор ТЗ
(user:
orefkov
size: 3828)
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 76 74 63 72 65 pt..$uname vtcre
0020: 61 74 6f 72 0d 0a 24 64 6e 61 6d 65 20 d0 9a d0 ator..$dname ...
0030: be d0 bd d1 81 d1 82 d1 80 d1 83 d0 ba d1 82 d0 ................
0040: be d1 80 20 d0 a2 d0 97 0d 0a 0d 0a 2f 2f 20 d0 ... ........// .
0050: 90 d0 bb d0 b5 d0 ba d1 81 d0 b0 d0 bd d0 b4 d1 ................
0060: 80 20 d0 9e d1 80 d0 b5 d1 84 d0 ba d0 be d0 b2 . ..............
0070: 0d 0a 2f 2f 20 d0 ad d1 82 d0 be 20 d0 bd d0 b5 ..// ...... ....
0080: d0 b1 d0 be d0 bb d1 8c d1 88 d0 be d0 b9 20 d1 .............. .
0090: 81 d0 ba d1 80 d0 b8 d0 bf d1 82 20 d1 81 20 d1 ........... .. .
00a0: 84 d0 be d1 80 d0 bc d0 be d0 b9 20 d0 b4 d0 bb ........... ....
00b0: d1 8f 20 d0 b3 d0 b5 d0 bd d0 b5 d1 80 d0 b0 d1 .. .............
00c0: 86 d0 b8 d0 b8 20 d1 82 d0 b5 d0 ba d1 81 d1 82 ..... ..........
00d0: d0 b0 20 d1 81 d0 be d0 b7 d0 b4 d0 b0 d0 bd d0 .. .............
00e0: b8 d1 8f 20 d0 a2 d0 b0 d0 b1 d0 bb d0 b8 d1 86 ... ............
00f0: d1 8b d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 ................
0100: d0 b9 2e 0d 0a 2f 2f 20 d0 9f d0 be d0 b7 d0 b2 .....// ........
0110: d0 be d0 bb d1 8f d0 b5 d1 82 20 d0 b2 d0 b2 d0 .......... .....
0120: b5 d1 81 d1 82 d0 b8 20 d0 b8 d0 bc d1 8f 20 d0 ....... ...... .
0130: bf d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d0 ................
0140: be d0 b9 2c 20 d0 b0 20 d1 82 d0 b0 d0 ba d0 b6 ..., .. ........
0150: d0 b5 20 d1 81 d0 be d1 81 d1 82 d0 b0 d0 b2 20 .. ............
0160: d0 ba d0 be d0 bb d0 be d0 bd d0 be d0 ba 20 d1 .............. .
0170: 81 20 d1 83 d0 ba d0 b0 d0 b7 d0 b0 d0 bd d0 b8 . ..............
0180: d0 b5 d0 bc 20 d0 b8 d0 bc d0 b5 d0 bd d0 b8 2c .... ..........,
0190: 0d 0a 2f 2f 20 d0 be d0 bf d0 b8 d1 81 d0 b0 d0 ..// ...........
01a0: bd d0 b8 d1 8f 20 d1 82 d0 b8 d0 bf d0 b0 2c 20 ..... ........,
01b0: d0 b7 d0 b0 d0 b3 d0 be d0 bb d0 be d0 b2 d0 ba ................
01c0: d0 b0 2c 20 d1 88 d0 b8 d1 80 d0 b8 d0 bd d1 8b .., ............
01d0: 2e 0d 0a 2f 2f 20 d0 94 d0 bb d1 8f 20 d0 b2 d0 ...// ...... ...
01e0: b2 d0 be d0 b4 d0 b0 20 d0 be d0 bf d0 b8 d1 81 ....... ........
01f0: d0 b0 d0 bd d0 b8 d1 8f 20 d1 82 d0 b8 d0 bf d0 ........ .......
0200: b0 20 d0 b8 d1 81 d0 bf d0 be d0 bb d1 8c d0 b7 . ..............
0210: d1 83 d0 b5 d1 82 d1 81 d1 8f 20 d1 88 d1 82 d0 .......... .....
0220: b0 d1 82 d0 bd d1 8b d0 b9 20 22 d0 9a d0 be d0 ......... ".....
0230: bd d1 81 d1 82 d1 80 d1 83 d0 ba d1 82 d0 be d1 ................
0240: 80 20 d0 be d0 bf d0 b8 d1 81 d0 b0 d0 bd d0 b8 . ..............
0250: d1 8f 20 d1 82 d0 b8 d0 bf d0 be d0 b2 22 2e 0d .. .........."..
0260: 0a 2f 2f 20 d0 9d d0 b0 d0 b4 d0 be 20 d0 b1 d1 .// ........ ...
0270: 8b 20 d0 bd d0 b0 d0 b2 d0 b5 d1 80 d0 bd d0 be . ..............
0280: d0 b5 20 d1 81 d0 b4 d0 b5 d0 bb d0 b0 d1 82 d1 .. .............
0290: 8c 20 d0 b5 d1 89 d0 b5 20 d0 b2 d0 b2 d0 be d0 . ...... .......
02a0: b4 20 d0 b8 d0 bd d0 b4 d0 b5 d0 ba d1 81 d0 be . ..............
02b0: d0 b2 2c 20 d0 bc d0 be d0 b6 d0 b5 d1 82 20 d0 .., .......... .
02c0: ba d1 82 d0 be 2d d1 82 d0 be 20 d0 b4 d0 be d0 .....-.... .....
02d0: b4 d0 b5 d0 bb d0 b0 d0 b5 d1 82 3f 0d 0a 0d 0a ...........?....
02e0: 61 64 64 69 6e 73 2e 62 79 55 6e 69 71 75 65 4e addins.byUniqueN
02f0: 61 6d 65 28 22 67 6c 6f 62 61 6c 22 29 2e 6f 62 ame("global").ob
0300: 6a 65 63 74 2e 63 6f 6e 6e 65 63 74 47 6c 6f 62 ject.connectGlob
0310: 61 6c 73 28 53 65 6c 66 53 63 72 69 70 74 29 0d als(SelfScript).
0320: 0a 66 6f 72 6d 20 3d 20 6c 6f 61 64 53 63 72 69 .form = loadScri
0330: 70 74 46 6f 72 6d 28 53 65 6c 66 53 63 72 69 70 ptForm(SelfScrip
0340: 74 2e 66 75 6c 6c 50 61 74 68 2e 72 65 70 6c 61 t.fullPath.repla
0350: 63 65 28 2f 6a 73 24 2f 69 2c 20 22 73 73 66 22 ce(/js$/i, "ssf"
0360: 29 2c 20 53 65 6c 66 53 63 72 69 70 74 2e 73 65 ), SelfScript.se
0370: 6c 66 29 0d 0a 66 6f 72 6d 2e d0 9a d0 bb d1 8e lf)..form.......
0380: d1 87 d0 a1 d0 be d1 85 d1 80 d0 b0 d0 bd d0 b5 ................
0390: d0 bd d0 b8 d1 8f d0 9f d0 be d0 bb d0 be d0 b6 ................
03a0: d0 b5 d0 bd d0 b8 d1 8f d0 9e d0 ba d0 bd d0 b0 ................
03b0: 20 3d 20 22 76 74 63 72 65 61 74 6f 72 22 0d 0a = "vtcreator"..
03c0: 0d 0a 66 75 6e 63 74 69 6f 6e 20 6d 61 63 72 6f ..function macro
03d0: 73 d0 a1 d0 be d0 b7 d0 b4 d0 b0 d1 82 d1 8c d0 s...............
03e0: a2 d0 b0 d0 b1 d0 bb d0 b8 d1 86 d1 83 d0 97 d0 ................
03f0: bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b9 28 29 0d .............().
0400: 0a 7b 0d 0a 20 20 20 20 69 66 28 21 73 6e 65 67 .{.. if(!sneg
0410: 6f 70 61 74 2e 61 63 74 69 76 65 54 65 78 74 57 opat.activeTextW
0420: 69 6e 64 6f 77 28 29 29 0d 0a 20 20 20 20 20 20 indow())..
0430: 20 20 66 6f 72 6d 2e d0 ad d0 bb d0 b5 d0 bc d0 form..........
0440: b5 d0 bd d1 82 d1 8b d0 a4 d0 be d1 80 d0 bc d1 ................
0450: 8b 2e d0 9d d0 b5 d0 b0 d0 ba d1 82 d0 b8 d0 b2 ................
0460: d0 bd d0 be d1 81 d1 82 d1 8c d0 9e d0 ba d0 bd ................
0470: d0 b0 2e d0 97 d0 b0 d0 b3 d0 be d0 bb d0 be d0 ................
0480: b2 d0 be d0 ba 20 3d 20 22 d0 9d d0 b5 d1 82 20 ..... = "......
0490: d0 b0 d0 ba d1 82 d0 b8 d0 b2 d0 bd d0 be d0 b3 ................
04a0: d0 be 20 d1 82 d0 b5 d0 ba d1 81 d1 82 d0 be d0 .. .............
04b0: b2 d0 be d0 b3 d0 be 20 d0 be d0 ba d0 bd d0 b0 ....... ........
04c0: 2e 20 d0 a2 d0 b5 d0 ba d1 81 d1 82 20 d0 b1 d1 . .......... ...
04d0: 83 d0 b4 d0 b5 d1 82 20 d0 b2 d1 8b d0 b2 d0 b5 ....... ........
04e0: d0 b4 d0 b5 d0 bd 20 d0 b2 20 d0 be d0 ba d0 bd ...... .. ......
04f0: d0 be 20 d1 81 d0 be d0 be d0 b1 d1 89 d0 b5 d0 .. .............
0500: bd d0 b8 d0 b9 22 0d 0a 20 20 20 20 65 6c 73 65 .....".. else
0510: 0d 0a 20 20 20 20 20 20 20 20 66 6f 72 6d 2e d0 .. form..
0520: ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 d1 8b d0 ................
0530: a4 d0 be d1 80 d0 bc d1 8b 2e d0 9d d0 b5 d0 b0 ................
0540: d0 ba d1 82 d0 b8 d0 b2 d0 bd d0 be d1 81 d1 82 ................
0550: d1 8c d0 9e d0 ba d0 bd d0 b0 2e d0 97 d0 b0 d0 ................
0560: b3 d0 be d0 bb d0 be d0 b2 d0 be d0 ba 20 3d 20 ............. =
0570: 22 22 0d 0a 20 20 20 20 69 66 28 21 66 6f 72 6d "".. if(!form
0580: 2e d0 9e d1 82 d0 ba d1 80 d1 8b d1 82 d1 8c d0 ................
0590: 9c d0 be d0 b4 d0 b0 d0 bb d1 8c d0 bd d0 be 28 ...............(
05a0: 29 29 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 )).. retu
05b0: 72 6e 0d 0a 20 20 20 20 76 61 72 20 74 65 78 74 rn.. var text
05c0: 20 3d 20 66 6f 72 6d 2e d0 98 d0 bc d1 8f d0 9f = form.........
05d0: d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d0 be ................
05e0: d0 b9 20 2b 20 22 20 3d 20 d0 9d d0 be d0 b2 d1 .. + " = .......
05f0: 8b d0 b9 20 d0 a2 d0 b0 d0 b1 d0 bb d0 b8 d1 86 ... ............
0600: d0 b0 d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 ................
0610: d0 b9 3b 5c 6e 22 0d 0a 20 20 20 20 2f 2f 20 d0 ..;\n".. // .
0620: 94 d0 bb d1 8f 20 d0 ba d0 b0 d0 b6 d0 b4 d0 be ..... ..........
0630: d0 b3 d0 be 20 d0 b8 d0 b7 0d 0a 20 20 20 20 66 .... ...... f
0640: 6f 72 28 76 61 72 20 72 6f 77 73 20 3d 20 6e 65 or(var rows = ne
0650: 77 20 45 6e 75 6d 65 72 61 74 6f 72 28 66 6f 72 w Enumerator(for
0660: 6d 2e d0 a1 d0 be d1 81 d1 82 d0 b0 d0 b2 d0 9a m...............
0670: d0 be d0 bb d0 be d0 bd d0 be d0 ba 29 3b 20 21 ............); !
0680: 72 6f 77 73 2e 61 74 45 6e 64 28 29 3b 20 72 6f rows.atEnd(); ro
0690: 77 73 2e 6d 6f 76 65 4e 65 78 74 28 29 29 0d 0a ws.moveNext())..
06a0: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 76 {.. v
06b0: 61 72 20 72 6f 77 20 3d 20 72 6f 77 73 2e 69 74 ar row = rows.it
06c0: 65 6d 28 29 0d 0a 20 20 20 20 20 20 20 20 76 61 em().. va
06d0: 72 20 69 74 65 6d 73 20 3d 20 6e 65 77 20 41 72 r items = new Ar
06e0: 72 61 79 28 29 0d 0a 20 20 20 20 20 20 20 20 69 ray().. i
06f0: 74 65 6d 73 2e 70 75 73 68 28 72 6f 77 2e d0 98 tems.push(row...
0700: d0 bc d1 8f 2e 6c 65 6e 67 74 68 20 3f 20 27 22 .....length ? '"
0710: 27 20 2b 20 72 6f 77 2e d0 98 d0 bc d1 8f 20 2b ' + row....... +
0720: 20 27 22 27 20 3a 20 22 22 29 0d 0a 20 20 20 20 '"' : "")..
0730: 20 20 20 20 69 74 65 6d 73 2e 70 75 73 68 28 72 items.push(r
0740: 6f 77 2e d0 a2 d0 b8 d0 bf 29 0d 0a 20 20 20 20 ow.......)..
0750: 20 20 20 20 69 74 65 6d 73 2e 70 75 73 68 28 72 items.push(r
0760: 6f 77 2e d0 97 d0 b0 d0 b3 d0 be d0 bb d0 be d0 ow..............
0770: b2 d0 be d0 ba 2e 6c 65 6e 67 74 68 20 3f 20 27 ......length ? '
0780: 22 27 20 2b 20 72 6f 77 2e d0 97 d0 b0 d0 b3 d0 "' + row........
0790: be d0 bb d0 be d0 b2 d0 be d0 ba 20 2b 20 27 22 ........... + '"
07a0: 27 20 3a 20 22 22 29 0d 0a 20 20 20 20 20 20 20 ' : "")..
07b0: 20 69 74 65 6d 73 2e 70 75 73 68 28 72 6f 77 2e items.push(row.
07c0: d0 a8 d0 b8 d1 80 d0 b8 d0 bd d0 b0 20 3f 20 22 ............ ? "
07d0: 22 20 2b 20 72 6f 77 2e d0 a8 d0 b8 d1 80 d0 b8 " + row.........
07e0: d0 bd d0 b0 20 3a 20 22 22 29 0d 0a 20 20 20 20 .... : "")..
07f0: 20 20 20 20 74 65 78 74 20 2b 3d 20 66 6f 72 6d text += form
0800: 2e d0 98 d0 bc d1 8f d0 9f d0 b5 d1 80 d0 b5 d0 ................
0810: bc d0 b5 d0 bd d0 bd d0 be d0 b9 20 2b 20 27 2e ........... + '.
0820: d0 9a d0 be d0 bb d0 be d0 bd d0 ba d0 b8 2e d0 ................
0830: 94 d0 be d0 b1 d0 b0 d0 b2 d0 b8 d1 82 d1 8c 28 ...............(
0840: 27 20 2b 20 69 74 65 6d 73 2e 6a 6f 69 6e 28 27 ' + items.join('
0850: 2c 20 27 29 2e 72 65 70 6c 61 63 65 28 2f 28 2c , ').replace(/(,
0860: 5c 73 29 2b 24 2f 2c 20 22 22 29 20 2b 20 22 29 \s)+$/, "") + ")
0870: 3b 5c 6e 22 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 ;\n".. }..
0880: 20 76 61 72 20 74 78 74 57 6e 64 20 3d 20 73 6e var txtWnd = sn
0890: 65 67 6f 70 61 74 2e 61 63 74 69 76 65 54 65 78 egopat.activeTex
08a0: 74 57 69 6e 64 6f 77 28 29 0d 0a 20 20 20 20 69 tWindow().. i
08b0: 66 28 21 74 78 74 57 6e 64 29 0d 0a 20 20 20 20 f(!txtWnd)..
08c0: 20 20 20 20 4d 65 73 73 61 67 65 28 74 65 78 74 Message(text
08d0: 29 0d 0a 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 ).. else..
08e0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 d0 {.. // .
08f0: 9d d0 b0 d0 b4 d0 be 20 d0 bf d0 be d0 bb d1 83 ....... ........
0900: d1 87 d0 b8 d1 82 d1 8c 20 d0 be d1 82 d1 81 d1 ........ .......
0910: 82 d1 83 d0 bf 0d 0a 20 20 20 20 20 20 20 20 76 ....... v
0920: 61 72 20 73 65 6c 20 3d 20 74 78 74 57 6e 64 2e ar sel = txtWnd.
0930: 67 65 74 53 65 6c 65 63 74 69 6f 6e 28 29 0d 0a getSelection()..
0940: 20 20 20 20 20 20 20 20 76 61 72 20 74 65 78 74 var text
0950: 4c 69 6e 65 20 3d 20 74 78 74 57 6e 64 2e 6c 69 Line = txtWnd.li
0960: 6e 65 28 73 65 6c 2e 62 65 67 69 6e 52 6f 77 29 ne(sel.beginRow)
0970: 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 d0 9a d1 .. // ...
0980: 83 d1 80 d1 81 d0 be d1 80 20 d0 bc d0 be d0 b6 ......... ......
0990: d0 b5 d1 82 20 d0 b1 d1 8b d1 82 d1 8c 20 d0 b7 .... ........ ..
09a0: d0 b0 20 d0 ba d0 be d0 bd d1 86 d0 be d0 bc 20 .. ............
09b0: d1 81 d1 82 d1 80 d0 be d0 ba d0 b8 0d 0a 20 20 ..............
09c0: 20 20 20 20 20 20 77 68 69 6c 65 28 74 65 78 74 while(text
09d0: 4c 69 6e 65 2e 6c 65 6e 67 74 68 20 3c 20 73 65 Line.length < se
09e0: 6c 2e 62 65 67 69 6e 43 6f 6c 20 2d 20 31 29 09 l.beginCol - 1).
09f0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 65 .. te
0a00: 78 74 4c 69 6e 65 20 2b 3d 20 27 20 27 0d 0a 20 xtLine += ' '..
0a10: 20 20 20 20 20 20 20 2f 2f 20 d0 9e d1 81 d1 82 // ......
0a20: d0 b0 d0 b2 d0 b8 d0 bc 20 d1 82 d0 be d0 bb d1 ........ .......
0a30: 8c d0 ba d0 be 20 d1 87 d0 b0 d1 81 d1 82 d1 8c ..... ..........
0a40: 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b8 20 d0 bf ............ ..
0a50: d0 b5 d1 80 d0 b5 d0 b4 20 d0 ba d1 83 d1 80 d1 ........ .......
0a60: 81 d0 be d1 80 d0 be d0 bc 0d 0a 20 20 20 20 20 ...........
0a70: 20 20 20 74 65 78 74 4c 69 6e 65 20 3d 20 74 65 textLine = te
0a80: 78 74 4c 69 6e 65 2e 73 75 62 73 74 72 28 30 2c xtLine.substr(0,
0a90: 20 73 65 6c 2e 62 65 67 69 6e 43 6f 6c 20 2d 20 sel.beginCol -
0aa0: 31 29 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 1).. var
0ab0: 6d 20 3d 20 74 65 78 74 4c 69 6e 65 2e 6d 61 74 m = textLine.mat
0ac0: 63 68 28 2f 5e 5c 73 2b 2f 29 0d 0a 20 20 20 20 ch(/^\s+/)..
0ad0: 20 20 20 20 69 66 28 6d 29 09 2f 2f 20 d0 95 d1 if(m).// ...
0ae0: 81 d1 82 d1 8c 20 d0 bf d1 80 d0 be d0 b1 d0 b5 ..... ..........
0af0: d0 bb d1 8c d0 bd d1 8b d0 b5 20 d1 81 d0 b8 d0 .......... .....
0b00: bc d0 b2 d0 be d0 bb d1 8b 20 d0 b2 20 d0 bd d0 ......... .. ...
0b10: b0 d1 87 d0 b0 d0 bb d0 b5 20 d1 81 d1 82 d1 80 ......... ......
0b20: d0 be d0 ba d0 b8 0d 0a 20 20 20 20 20 20 20 20 ........
0b30: 20 20 20 20 74 65 78 74 20 3d 20 74 65 78 74 2e text = text.
0b40: 72 65 70 6c 61 63 65 28 2f 5c 6e 2f 67 2c 20 27 replace(/\n/g, '
0b50: 5c 6e 27 20 2b 20 6d 5b 30 5d 29 09 2f 2f 20 d0 \n' + m[0]).// .
0b60: 97 d0 b0 d0 bc d0 b5 d0 bd d0 b8 d0 bc 20 d0 bf ............. ..
0b70: d0 b5 d1 80 d0 b5 d0 b2 d0 be d0 b4 d1 8b 20 d1 .............. .
0b80: 81 d1 82 d1 80 d0 be d0 ba 20 d0 bd d0 b0 20 d0 ......... .... .
0b90: bf d0 b5 d1 80 d0 b5 d0 b2 d0 be d0 b4 20 d1 81 ............. ..
0ba0: d1 82 d1 80 d0 be d0 ba 20 2b 20 d0 be d1 82 d1 ........ + .....
0bb0: 81 d1 82 d1 83 d0 bf 0d 0a 20 20 20 20 20 20 20 .........
0bc0: 20 74 65 78 74 20 3d 20 74 65 78 74 2e 72 65 70 text = text.rep
0bd0: 6c 61 63 65 28 2f 5c 73 2b 24 2f 6d 2c 20 27 27 lace(/\s+$/m, ''
0be0: 29 09 09 09 2f 2f 20 d0 a1 d0 be d0 ba d1 80 d0 )...// .........
0bf0: 9f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 d0 92 ... // ..
0c00: d1 81 d1 82 d0 b0 d0 b2 d0 b8 d0 bc 20 d1 82 d0 ............ ...
0c10: b5 d0 ba d1 81 d1 82 0d 0a 20 20 20 20 20 20 20 .........
0c20: 20 74 78 74 57 6e 64 2e 73 65 6c 65 63 74 65 64 txtWnd.selected
0c30: 54 65 78 74 20 3d 20 74 65 78 74 0d 0a 20 20 20 Text = text..
0c40: 20 20 20 20 20 2f 2f 74 78 74 57 6e 64 2e 73 65 //txtWnd.se
0c50: 74 43 61 72 65 74 50 6f 73 28 73 65 6c 2e 62 65 tCaretPos(sel.be
0c60: 67 69 6e 52 6f 77 2c 20 73 65 6c 2e 62 65 67 69 ginRow, sel.begi
0c70: 6e 43 6f 6c 29 0d 0a 20 20 20 20 7d 0d 0a 7d 0d nCol).. }..}.
0c80: 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 d0 9e d1 82 ...function ....
0c90: d0 bc d0 b5 d0 bd d0 b0 d0 9d d0 b0 d0 b6 d0 b0 ................
0ca0: d1 82 d0 b8 d0 b5 28 d0 ad d0 bb d0 b5 d0 bc d0 ......(.........
0cb0: b5 d0 bd d1 82 29 0d 0a 7b 0d 0a 20 20 20 20 66 .....)..{.. f
0cc0: 6f 72 6d 2e d0 97 d0 b0 d0 ba d1 80 d1 8b d1 82 orm.............
0cd0: d1 8c 28 66 61 6c 73 65 29 0d 0a 7d 0d 0a 0d 0a ..(false)..}....
0ce0: 66 75 6e 63 74 69 6f 6e 20 d0 9e d0 9a d0 9d d0 function .......
0cf0: b0 d0 b6 d0 b0 d1 82 d0 b8 d0 b5 28 d0 ad d0 bb ...........(....
0d00: d0 b5 d0 bc d0 b5 d0 bd d1 82 29 0d 0a 7b 0d 0a ..........)..{..
0d10: 20 20 20 20 66 6f 72 6d 2e d0 97 d0 b0 d0 ba d1 form........
0d20: 80 d1 8b d1 82 d1 8c 28 74 72 75 65 29 0d 0a 7d .......(true)..}
0d30: 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 d0 a1 d0 ....function ...
0d40: be d1 81 d1 82 d0 b0 d0 b2 d0 9a d0 be d0 bb d0 ................
0d50: be d0 bd d0 be d0 ba d0 a2 d0 b8 d0 bf d0 9d d0 ................
0d60: b0 d1 87 d0 b0 d0 bb d0 be d0 92 d1 8b d0 b1 d0 ................
0d70: be d1 80 d0 b0 28 d0 ad d0 bb d0 b5 d0 bc d0 b5 .....(..........
0d80: d0 bd d1 82 2c 20 d0 a1 d1 82 d0 b0 d0 bd d0 b4 ...., ..........
0d90: d0 b0 d1 80 d1 82 d0 bd d0 b0 d1 8f d0 9e d0 b1 ................
0da0: d1 80 d0 b0 d0 b1 d0 be d1 82 d0 ba d0 b0 29 0d ..............).
0db0: 0a 7b 0d 0a 20 20 20 20 76 61 72 20 69 6e 70 75 .{.. var inpu
0dc0: 74 20 3d 20 73 6e 65 67 6f 70 61 74 2e 70 61 72 t = snegopat.par
0dd0: 73 65 54 65 6d 70 6c 61 74 65 53 74 72 69 6e 67 seTemplateString
0de0: 28 27 3c 3f 22 d0 a3 d0 ba d0 b0 d0 b6 d0 b8 d1 ('<?"...........
0df0: 82 d0 b5 20 d1 82 d0 b8 d0 bf 22 2c 20 d0 9a d0 ... ......", ...
0e00: be d0 bd d1 81 d1 82 d1 80 d1 83 d0 ba d1 82 d0 ................
0e10: be d1 80 d0 9e d0 bf d0 b8 d1 81 d0 b0 d0 bd d0 ................
0e20: b8 d1 8f d0 a2 d0 b8 d0 bf d0 be d0 b2 3e 27 29 .............>')
0e30: 0d 0a 20 20 20 20 69 66 28 69 6e 70 75 74 2e 6c .. if(input.l
0e40: 65 6e 67 74 68 29 0d 0a 20 20 20 20 7b 0d 0a 20 ength).. {..
0e50: 20 20 20 20 20 20 20 69 6e 70 75 74 20 3d 20 69 input = i
0e60: 6e 70 75 74 2e 72 65 70 6c 61 63 65 28 2f 5c 6e nput.replace(/\n
0e70: 7c 3b 24 2f 67 2c 20 27 27 29 0d 0a 20 20 20 20 |;$/g, '')..
0e80: 20 20 20 20 66 6f 72 6d 2e d0 ad d0 bb d0 b5 d0 form........
0e90: bc d0 b5 d0 bd d1 82 d1 8b d0 a4 d0 be d1 80 d0 ................
0ea0: bc d1 8b 2e d0 a1 d0 be d1 81 d1 82 d0 b0 d0 b2 ................
0eb0: d0 9a d0 be d0 bb d0 be d0 bd d0 be d0 ba 2e d0 ................
0ec0: a2 d0 b5 d0 ba d1 83 d1 89 d0 b0 d1 8f d0 a1 d1 ................
0ed0: 82 d1 80 d0 be d0 ba d0 b0 2e d0 a2 d0 b8 d0 bf ................
0ee0: 20 3d 20 69 6e 70 75 74 0d 0a 20 20 20 20 7d 0d = input.. }.
0ef0: 0a 7d 0d 0a .}..