summaryrefslogtreecommitdiff
path: root/js
diff options
context:
space:
mode:
Diffstat (limited to 'js')
-rw-r--r--js/lex.js11
-rw-r--r--js/matrix.js3
2 files changed, 10 insertions, 4 deletions
diff --git a/js/lex.js b/js/lex.js
index bfc8e8e..8c6b717 100644
--- a/js/lex.js
+++ b/js/lex.js
@@ -31,7 +31,12 @@ Lex.prototype.ascii = function(){
return this.char || " "
}
Lex.prototype.sanitize = function(){
- return this.char == "%" ? '%%' : this.char || " "
+ switch (this.char) {
+ case "%": return "%%"
+ case undefined:
+ case "": return " "
+ default: return this.char
+ }
}
var fgOnly = false
Lex.prototype.mirc = function(){
@@ -42,8 +47,8 @@ Lex.prototype.mirc = function(){
if (fgOnly) {
return "\x03" + (this.fg&15) + char
}
- if (this.bg == 1 && this.fg == 0) {
- return char
+ if ((this.bg&15) < 10) {
+ return "\x03" + (this.fg&15) + ",0" + (this.bg&15) + char
}
else {
return "\x03" + (this.fg&15) + "," + (this.bg&15) + char
diff --git a/js/matrix.js b/js/matrix.js
index 79f3d9f..a8ac200 100644
--- a/js/matrix.js
+++ b/js/matrix.js
@@ -170,7 +170,7 @@ Matrix.prototype.mirc = function () {
line += lex.sanitize()
}
else {
- if (x > 0 && last && (last.bg != 1 || last.fg != 0)) line += "\x03"
+ if (x > 0 && last) line += "\x03"
line += lex.mirc()
last = lex
}
@@ -187,6 +187,7 @@ Matrix.prototype.irssi = function(){
.replace(/\"/g, '\\\"')
.replace(/\'/g, '\\\'')
.replace(/\`/g, '\\\`')
+ .replace(/\$/g, '\\$')
.replace(/\s+\n/g, '\n')
.replace(/\s+$/g, '\n')
.replace(/^\n+/, '')