add:   h = h.replace(/<pre([^>]*)>(.*?)<\/pre>/gi, function (a, b, c) { c = c.replace(/<br\s*\/>/gi, '\n'); return '<pre' + b + '>' + c + '</pre>'; }); 
context: 	formatHTML : function(h) {		var s = this.settings, p = '', i = 0, li = 0, o = '', l;		h = h.replace(/\r/g, ''); // Windows sux, isn't carriage return a thing of the past :)		h = '\n' + h;		h = h.replace(new RegExp('\\n\\s+', 'gi'), '\n'); // Remove previous formatting		h = h.replace(this.nlBeforeRe, '\n<$1$2>');		h = h.replace(this.nlAfterRe, '<$1$2>\n');		h = h.replace(this.nlBeforeAfterRe, '\n<$1$2$3>\n');		h += '\n';		//tinyMCE.debug(h);		while ((i = h.indexOf('\n', i + 1)) != -1) {			if ((l = h.substring(li + 1, i)).length != 0) {				if (this.ouRe.test(l) && p.length >= s.indent_levels)					p = p.substring(s.indent_levels);				o += p + l + '\n';					if (this.inRe.test(l))					p += this.inStr;			}			li = i;		}		//tinyMCE.debug(h);		return o;	},
meta: 2801	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/2801/72a23bafa6881f92dcdcb701d5d2fa45c9a2876a/TinyMCE_Cleanup.class.js/clean/jscripts/tiny_mce/classes/TinyMCE_Cleanup.class.js