Tambahkan ‹div› pada ekstensi sorotan sintaksis geshi MediaWiki

Saya menggunakan mediawiki untuk mencatat prosedur yang saya ikuti, kode sumber yang saya tulis di mediawiki disorot dengan perluasan Genshi Syntax HighLight. Saya ingin memodifikasi perluasan ini di mediawiki sehingga dapat dibuat kotak di atas kode sumber yang di dalamnya tertulis bahasa pemrograman yang saya gunakan. Saya mencoba melihat sumber perluasan di mediawiki saya tetapi saya tidak menemukan segmen yang berisi "sketsa" <div>. Saya juga melihat materi tentang pembuatan ekspansi baru di mediawiki untuk memahami cara kerjanya, namun saya tidak mengerti di mana kotak itu dibuat.

Saya menggunakan sintaksis yang lebih tinggi seperti ini some_code

dan ini adalah hasil kode html yang dihasilkan dari mediawiki

<div class="mw-geshi mw-code mw-content-ltr" dir="ltr">
  <div class="bash source-bash">
   <pre class="de1">
    some_code
  </pre>
 </div> 
</div>

Saya ingin menambahkan div ke div pertama, seperti ini

<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>

Bisakah Anda menjelaskan kepada saya apakah hal itu mungkin dilakukan dan bagaimana saya bisa menghadapi masalahnya?


person Zerounozerolab    schedule 22.07.2014    source sumber


Jawaban (1)


Saya pikir jQuery biasa akan menyelesaikan masalah ini. Sesuatu seperti:

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

Letakkan ini di [[MediaWiki:Common.js]], sehingga skrip ini akan dijalankan untuk setiap pengguna.

person Sorawee Porncharoenwase    schedule 27.07.2014