Extension:BacktickCode

From MediaWiki.org
Jump to navigation Jump to search
MediaWiki extensions manual
Crystal Clear action run.svg
BacktickCode
Release status: stable
Implementation Tag
Description Wrap `text between backticks` in <code> tags.
Author(s) Joel Thornton (joelpttalk)
Latest version 1.0 (2012-12-30)
MediaWiki 1.5+
PHP 5.2+
Database changes No
License GNU General Public License 2.0 or later
Download See the code section
Hooks used
ParserBeforeStrip
Translate the BacktickCode extension if it is available at translatewiki.net
Check usage and version matrix.

The BacktickCode extension wraps <code> tags around wikitext which is placed `between backtick characters`.

This provides a handy wiki-editing shortcut for wikis that expect a lot of inlined <code> snippets in its pages, and functions similarly to the standard MediaWiki ''' -> <b> bold formatting shortcut.

Backtick characters within <pre> blocks will not be altered by this extension. Backticks outside of <pre> blocks can also be output to the page by escaping them as \`.

Installing[edit]

  • Add the following code at the bottom of your LocalSettings.php:
    require_once "$IP/extensions/BacktickCode/BacktickCode.php";
    
  • Yes Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

Code[edit]

BacktickCode.php (PHP 5.3+)
<?php
/**
 * @author Joel Thornton <mediawiki@joelpt.net>
 * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
 */

if(!defined('MEDIAWIKI')) {
    die("This is an extension to the MediaWiki package and cannot be run standalone.");
}

// Register as an extention
$wgExtensionCredits['parserhook'][] = array(
        'name' => 'BacktickCode',
        'version' => '1.0',
        'url' => 'https://www.mediawiki.org/wiki/Extension:BacktickCode',
        'author' => 'Joel Thornton',
        'description' => 'Allows to show text as <code> between backticks (`)',
);

// Register hooks
$wgHooks['InternalParseBeforeLinks'][] = function( &$parser, &$text, &$stripState ) {
        // We replace '`...`' by '<code>...</code>' and '\`' by '`'.
        $text = preg_replace('/([^\\\\]|^)`([^`]*)`/', '$1<code>$2</code>', $text);
        $text = preg_replace('/\\\\\`/', '`', $text);

        return true;
};

Credits[edit]

This extension is derived from Extension:DollarSign.