Trong khi sử dụng <code>inline code</code>
hoặc, ví dụ: <syntaxhighlight lang="groovy" inline>inline code</syntaxhighlight>
, việc đánh máy này là một nỗi đau thực sự, đặc biệt nếu bạn xử lý nhiều đoạn mã.
Nếu wiki nằm dưới sự kiểm soát của bạn, bạn có thể extend its markup. Ví dụ dưới đây cho thấy cách rút ngắn các phương thức trên thành <c>inline code</c>
và <sg>inline code</sg>
tương ứng bằng phương pháp tag extensions.
Tạo thư mục Customtags
cho tiện ích mở rộng mới trong thư mục tiện ích mở rộng MediaWiki của bạn (MW_HOME/extensions/
). Trong thư mục này tạo một file customtags.php
với nội dung sau:
<?php
$wgHooks['ParserFirstCallInit'][] = 'customtagsInit';
function customtagsInit(Parser $parser) {
// parameters: custom tag, custom renderer function
$parser->setHook('c', 'customRenderShortCode');
$parser->setHook('sg', 'customRenderSourceGroovy');
return true;
}
function customRenderSourceGroovy($input, array $args, Parser $parser, PPFrame $frame) {
$input = '<syntaxhighlight lang="groovy" inline>' . $input . '</syntaxhighlight>';
$wikiparsed = $parser->recursiveTagParse($input, $frame);
return $wikiparsed;
}
function customRenderShortCode($input, array $args, Parser $parser, PPFrame $frame) {
$wikiparsed = $parser->recursiveTagParse($input, $frame);
return '<code>' . $wikiparsed . '</code>';
}
?>
Cuối cùng đăng ký phần mở rộng này trong LocalSettings.php
và bạn tốt để đi:
require_once "$IP/extensions/Customtags/customtags.php";
trong một cách tương tự bạn có thể tạo thẻ ngắn cho lớn hơn khối mã.
Nguồn
2017-09-01 12:02:57
Để biết thông tin: đối với * không nội tuyến *, giải pháp đơn giản nhất là đặt ký tự khoảng trắng ở đầu dòng. – Wikis