diff options
| author | Julie Lala <jules@okfoc.us> | 2014-12-03 22:02:34 -0500 |
|---|---|---|
| committer | Julie Lala <jules@okfoc.us> | 2014-12-03 22:02:34 -0500 |
| commit | 4dd8460f6a45d7956455ef9b39b33126c1b40e15 (patch) | |
| tree | 72d5b2da6f5a37bdf887f15305793c2060b071e1 /js/matrix.js | |
| parent | fcb2daab9246b8668f000282b2266cd97706b5c1 (diff) | |
fix arrows and printing backslashes
Diffstat (limited to 'js/matrix.js')
| -rw-r--r-- | js/matrix.js | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/js/matrix.js b/js/matrix.js index 98c132d..9809865 100644 --- a/js/matrix.js +++ b/js/matrix.js @@ -122,7 +122,7 @@ Matrix.prototype.mirc = function () { Matrix.prototype.irssi = function(){ var txt = this.mirc() .replace(/\%/g, '%%') - .replace(/\\/g, '\\\\') + .replace(/\\/g, '\\x5C') .replace(/\"/g, '\\\"') .replace(/\'/g, '\\\'') .replace(/\`/g, '\\\`') @@ -130,9 +130,29 @@ Matrix.prototype.irssi = function(){ .replace(/\s+$/g, '\n') .replace(/^\n+/, '') .replace(/\n/g, '\\n') - .replace(/\x03/g, '\\x03'); + .replace(/\x02/g, '\\x02') + .replace(/\x03/g, '\\x03') +console.log(txt.length) + var escaped_txt = "", kode + for (var i = 0; i < txt.length; i++) { + kode = txt.charCodeAt(i) + if (kode > 0x7f) { + kode = kode.toString(16) + switch (kode.length) { + case 2: + kode = "0" + kode + case 3: + kode = "0" + kode + } + escaped_txt += "\\u" + kode + } + else { + escaped_txt += txt[i] + } + } + // .replace(/\x03/g, '\\x03'); // console.log(txt) - return '/exec -out printf "' + txt + '"\n' + return '/exec -out printf "' + escaped_txt + '"\n' } Matrix.prototype.expand = function(i){ var w = this.w = clamp(this.w+i, 1, 9), h = this.h = clamp(this.h+i, 1, 9) |
