okay, looks like MODx is also parsing within <pre> and <code> tags, so with the friendly help of Bogdan Günther i got a plugin working which will solve this problem:
// load content
$content=$modx->documentObject['content'];
// HTML-Parser
function parseMODxHTML($matches)
{
$code=$matches[1];
$code=str_replace('&', '&', $code);
$code=str_replace('[', '[', $code);
$code=str_replace(']', ']', $code);
$code=str_replace('{', '{', $code);
$code=str_replace('}', '}', $code);
$code=str_replace('<', '<', $code);
$code=str_replace('>', '>', $code);
$code=str_replace(chr(10).chr(9).chr(9), chr(10), $code);
$code=str_replace(chr(9), ' ', $code);
return $GLOBALS['tagStart'].$code.$GLOBALS['tagEnd'];
}
$GLOBALS['tagStart']='<code>'; $GLOBALS['tagEnd']='</code>';
$content=preg_replace_callback('#'.$GLOBALS['tagStart'].'(.*?)'.$GLOBALS['tagEnd'].'#s', 'parseMODxHTML', $content);
$GLOBALS['tagStart']='<pre>'; $GLOBALS['tagEnd']='</pre>';
$content=preg_replace_callback('#'.$GLOBALS['tagStart'].'(.*?)'.$GLOBALS['tagEnd'].'#s', 'parseMODxHTML', $content);
$GLOBALS['tagStart']='<pre class="prettyprint">'; $GLOBALS['tagEnd']='</pre>';
$content=preg_replace_callback('#'.$GLOBALS['tagStart'].'(.*?)'.$GLOBALS['tagEnd'].'#s', 'parseMODxHTML', $content);
$content=str_replace(chr(10).' </pre>', '</pre>', $content);
// save content
$modx->documentObject['content']=$content;
check System Event: "OnLoadWebDocument"
:)