dp.SyntaxHighlighter 的一个小bug

今天把的我的blog换了个新的空间,测试的时候发现dp.SyntaxHighlighter 代码高亮不好使,调试了一下才发现原来里面有个bug刚好被我碰上,今天真他妈该买彩票去。
虽然我常写php,但是我这次却尝试高亮c++的代码,出现了404错误,原因:
highlighter/highlighter.html 中有段代码:

  1. var TypeMapper = {
  2.     "php"        : PREFIX + "Php" + POSTFIX ,
  3.     "javascript" : PREFIX + "JScript" + POSTFIX ,
  4.     "java"       : PREFIX + "Java" + POSTFIX ,
  5.     "xml"        : PREFIX + "Xml" + POSTFIX ,
  6.     "html"       : PREFIX + "Xml" + POSTFIX ,
  7.     "c++"        : PREFIX + "Cpp" + POSTFIX ,
  8.     "cpp"        : PREFIX + "Cpp" + POSTFIX ,
  9.     "c#"         : PREFIX + "CSharp" + POSTFIX ,
  10.     "css"        : PREFIX + "Css" + POSTFIX ,
  11.     "delphi"     : PREFIX + "Delphi" + POSTFIX ,
  12.     "python"     : PREFIX + "Python" + POSTFIX ,
  13.     "ruby"       : PREFIX + "Ruby" + POSTFIX ,
  14.     "sql"        : PREFIX + "Sql" + POSTFIX ,
  15.     "vb"         : PREFIX + "Vb" + POSTFIX
  16. };

原本里面只有 "c++"的map,没有"cpp”map,但是同页面中代码:

  1. <SELECT name="codeType" id="codeType" onChange="setCodeType(this.value);">
  2.       <OPTION value="" FCKLANG="DlgSyntaxHighLighterSelectLang">语言</OPTION>
  3.       <OPTION value="cpp">C++</OPTION>
  4.       <OPTION value="c#">C#</OPTION>
  5.       <OPTION value="css">CSS</OPTION>
  6.       <OPTION value="delphi">Delphi</OPTION>
  7.       <OPTION value="java">Java</OPTION>
  8.       <OPTION value="javascript">JavaScript</OPTION>
  9.       <OPTION value="php">PHP</OPTION>
  10.       <OPTION value="python">Python</OPTION>
  11.       <OPTION value="ruby">Ruby</OPTION>
  12.       <OPTION value="sql">SQL</OPTION>
  13.       <OPTION value="xml">XML</OPTION>
  14.       <OPTION value="vb">VB</OPTION>
  15.     </SELECT>

"c++" 对应的value为“cpp” 于是就找不到东西了

解决办法:
在数组TypeMapper 中添加cpp的map就行了。

留下评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据