[Symbols starting with #\: are left as is, no case conversion or other mangling
Marco Baringer <mb@bese.it>**20050814141629] {
hunk ./js.lisp 33
+(defun untouchable-string-p (string)
+  (and (> (length string) 1)
+       (char= #\: (char string 0))))
+
hunk ./js.lisp 44
+                 (do-not-touch nil)
hunk ./js.lisp 52
-			  symbol (subseq symbol 1))))
+			  symbol (subseq symbol 1)))
+                   ((untouchable-string-p symbol)
+                    (setf do-not-touch t
+                          symbol (subseq symbol 1))))
hunk ./js.lisp 57
-		      (push (if (and lowercase (not all-uppercase))
-				(char-downcase c)
-				(char-upcase c)) res)
+		      (push (cond
+                              (do-not-touch c)
+                              ((and lowercase (not all-uppercase))
+                               (char-downcase c))
+                              (t (char-upcase c)))
+                            res)
}