<p>Недавно я, по случайности, наткнулся на сравнительно старый
блог о том, как преобразовывать ASCII-код в ссылках в кириллицу . Можно считать это этаким дополнением к нему. Оказалось, что можно обойтись
JS...
</p>
Скрипт ниже, за авторством участника
Kopcap94, добавляет небольшую кнопочку <div class="button">Parse</div> над окошком для описания правки, которая мгновенно преобразовывает весь ASCII на странице в кириллицу. Никаких сторонних плагинов или смен браузера, просто и сердито. Лично я представлял этот скрипт как преобразованный викификатор

<p>Скрипт нужно скопировать в
Служебная:MyPage/wikia.js, для локального пользования, или на
w:Special:MyPage/global.js для повсеместного. Не забудьте перед этим включить кастомный JS в настройках))
</p>
<hr><div dir="ltr" class="mw-geshi mw-content-ltr"><div class="javascript source-javascript">
<span class="co1">// linkParser.js</span>
<span class="co1">// by Kopcap94</span>
<span class="sy0">!</span><span class="kw1">function</span><span class="br0">(</span> mw<span class="sy0">,</span> $ <span class="br0">)</span> <span class="br0">{</span>
<span class="kw1">if</span> <span class="br0">(</span> <span class="br0">[</span> <span class="st0">'edit'</span><span class="sy0">,</span> <span class="st0">'submit'</span> <span class="br0">]</span>.<span class="me1">indexOf</span><span class="br0">(</span> mw.<span class="me1">config</span>.<span class="kw1">get</span><span class="br0">(</span> <span class="st0">'wgAction'</span> <span class="br0">)</span><span class="br0">)</span> <span class="sy0">===</span> <span class="sy0">-</span><span class="nu0">1</span> <span class="br0">)</span> <span class="kw1">return</span><span class="sy0">;</span>
$<span class="br0">(</span> <span class="st0">'<button />'</span><span class="sy0">,</span> <span class="br0">{</span>
id<span class="sy0">:</span> <span class="st0">'linkParser'</span><span class="sy0">,</span>
style<span class="sy0">:</span> <span class="st0">'float: right; margin-bottom: 5px;'</span><span class="sy0">,</span>
text<span class="sy0">:</span> <span class="st0">'Parse'</span><span class="sy0">,</span>
type<span class="sy0">:</span> <span class="st0">'button'</span>
<span class="br0">}</span><span class="br0">)</span>
.<span class="me1">insertAfter</span><span class="br0">(</span> <span class="st0">'.wpSummary_canMinorEdit'</span> <span class="br0">)</span>
.<span class="me1">on</span><span class="br0">(</span> <span class="st0">'click'</span><span class="sy0">,</span> <span class="kw1">function</span><span class="br0">(</span><span class="br0">)</span> <span class="br0">{</span>
<span class="kw1">var</span> text <span class="sy0">=</span> $<span class="br0">(</span> <span class="st0">'#wpTextbox1'</span> <span class="br0">)</span>.<span class="me1">val</span><span class="br0">(</span><span class="br0">)</span><span class="sy0">,</span>
new_text <span class="sy0">=</span> text<span class="sy0">;</span>
$.<span class="me1">each</span><span class="br0">(</span> text.<span class="me1">match</span><span class="br0">(</span> <span class="co2">/(%[A-Za-z0-9]{2}){1,}/g</span> <span class="br0">)</span><span class="sy0">,</span> <span class="kw1">function</span><span class="br0">(</span> i<span class="sy0">,</span> v <span class="br0">)</span> <span class="br0">{</span>
<span class="kw1">try</span> <span class="br0">{</span>
new_text <span class="sy0">=</span> new_text.<span class="me1">replace</span><span class="br0">(</span> v<span class="sy0">,</span> decodeURIComponent<span class="br0">(</span> v <span class="br0">)</span> <span class="br0">)</span><span class="sy0">;</span>
<span class="br0">}</span> <span class="kw1">catch</span><span class="br0">(</span> e <span class="br0">)</span> <span class="br0">{</span>
console.<span class="me1">log</span><span class="br0">(</span> <span class="st0">'There was error ( '</span> <span class="sy0">+</span> e <span class="sy0">+</span> <span class="st0">' ) during attempt to parse this: '</span> <span class="sy0">+</span> v <span class="br0">)</span><span class="sy0">;</span>
<span class="br0">}</span>
<span class="br0">}</span><span class="br0">)</span><span class="sy0">;</span>
$<span class="br0">(</span> <span class="st0">'#wpTextbox1'</span> <span class="br0">)</span>.<span class="me1">val</span><span class="br0">(</span> new_text <span class="br0">)</span><span class="sy0">;</span>
<span class="br0">}</span><span class="br0">)</span><span class="sy0">;</span>
<span class="br0">}</span><span class="br0">(</span> mediaWiki<span class="sy0">,</span> jQuery <span class="br0">)</span><span class="sy0">;</span></div></div>