Добавьте ‹div› в расширение подсветки синтаксиса MediaWiki geshi.

Я использую mediawiki, чтобы отметить процедуру, которой я следую, исходные коды, которые я пишу в mediawiki, выделены расширением Genshi Syntax HighLight. Я хочу изменить это расширение в медиавики, чтобы оно могло быть создано над исходным кодом, в котором оно написано на языке программирования, который я использовал. Я попытался посмотреть исходники дополнений в своей медиавики, но не нашел сегмента, в котором есть «набросок» <div>. Я также видел материал о создании нового расширения в медиавики, чтобы понять, как оно работает, но я не понимаю, где создается ящик.

Я использую синтаксическую подсветку, как это some_code

и это результат создания 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>

Можете ли вы объяснить мне, возможно ли это сделать и как я могу столкнуться с проблемой?


person Zerounozerolab    schedule 22.07.2014    source источник


Ответы (1)


Думаю, обычный jQuery решит эту проблему. Что-то типа:

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

Поместите это в [[MediaWiki:Common.js]], чтобы этот скрипт запускался для каждого пользователя.

person Sorawee Porncharoenwase    schedule 27.07.2014