在MediaWiki geshi语法高亮扩展名</div>上添加<div>

时间:2014-07-22 00:24:38

标签: php syntax-highlighting mediawiki mediawiki-extensions geshi

我使用mediawiki来记录我遵循的程序,我在mediawiki中编写的源代码用扩展Genshi语法HighLight突出显示。我想在mediawiki中修改这个扩展,这样就可以在源代码上面创建一个框,在该框中编写我使用的编程语言。我试图在我的mediawiki中看到扩展源,但我没有找到“草图”<div>的段。我还看到了关于在mediawiki中创建新扩展的材料,以了解它是如何运行的,但我不明白该框的创建位置。

我像这样使用语法hightligher     some_code

这是从mediawiki

生成html代码的结果
<div class="mw-geshi mw-code mw-content-ltr" dir="ltr">
  <div class="bash source-bash">
   <pre class="de1">
    some_code
  </pre>
 </div> 
</div>

我想将div预先设置为第一个div,就像这个

一样
<div class='gsh-lang-label'>Language bash</div>
<div class="mw-geshi mw-code mw-content-ltr" dir="ltr">
  <div class="bash source-bash">
   <pre class="de1">
    some_code
  </pre>
 </div> 
</div>

你能解释我是否有可能做到这一点,我怎么能面对这个问题?

1 个答案:

答案 0 :(得分:0)

我认为普通的jQuery会解决这个问题。类似的东西:

$(".mw-geshi").each(function(){
    $(this).before("<div class='gsh-lang-label'>" + 
                   $(this).children().first().attr("class").split(' ')[0] + 
                   "</div>")
})

将其放在[[MediaWiki:Common.js]]中,以便为每个用户运行此脚本。