mediawiki-extensions-Lingo

Github mirror of MediaWiki extension Lingo - our actual code is hosted with Gerrit (please see https://www.mediawiki.org/wiki/Developer_access for contributing)

OTHER License

Downloads
66.6K
Stars
4
Committers
52

Lingo

Lingo is a glossary extension to MediaWiki, that lets you define abbreviations and their definitions on a wiki page. It displays these definitions whenever an abbreviation is hovered over in an article.

See https://www.mediawiki.org/wiki/Extension:Lingo for online documentation.

Installation & Activation

The recommended way to install this extension is by using Composer.

  1. Add the following to the MediaWiki composer.local.json file
{
	"require": {
		"mediawiki/lingo": "^3.0"
	}
}
  1. Run php composer.phar update mediawiki/lingo from the MediaWiki installation directory.

  2. Add the following code to your LocalSettings.php:

wfLoadExtension('Lingo');

Updating

Run php composer.phar update mediawiki/lingo from the MediaWiki installation directory.

Customization

Add the following to LocalSettings.php and uncomment/modify as needed:

$wgHooks['SetupAfterCache'][] = function() {

    // specify a different name for the terminology page (Default: 'Terminology' (or localised version). See MediaWiki:Lingo-terminologypagename.)
    //$GLOBALS['wgexLingoPage'] = 'Terminology';

    // specify that each term should be annotated only once per page (Default: false)
    //$GLOBALS['wgexLingoDisplayOnce'] = false;

    // specify what namespaces should or should not be used (Default: Empty, i.e. use all namespaces)
    //$GLOBALS['wgexLingoUseNamespaces'][NS_SPECIAL] = false;

    // set default cache type (Default: null, i.e. use main cache)
    //$GLOBALS['wgexLingoCacheType'] = CACHE_NONE;

    // use ApprovedRevs extension on the Terminology page (Default: false)
    //$GLOBALS['wgexLingoEnableApprovedRevs'] = true;

};

Usage

By default Lingo will mark up any page that is not in a forbidden namespace. To exclude a page from markup you can include NOGLOSSARY anywhere in the article. In some cases it may be necessary to exclude portions of a page, e.g. because Lingo interferes with some JavaScript. This can be achieved by wrapping the part in an HTML element (e.g. a span or a div) and specify class="noglossary".

Terminology page

Create the page "Terminology" (no namespace), and insert some entries using the following syntax:

;FTP:File Transport Protocol ;AAAAA:American Association Against Acronym Abuse ;ACK:Acknowledge ;AFAIK:As Far As I Know ;AWGTHTGTATA:Are We Going To Have To Go Through All This Again ;HTTP:HyperText Transfer Protocol

Running tests

From the Lingo directory run

php ../../tests/phpunit/phpunit.php  --group extensions-lingo -c phpunit.xml.dist

Reporting bugs

Comments, questions and suggestions should be sent or posted to:

Credits

Lingo is a rewrite of Extension:Terminology, written by BarkerJr with modifications by Benjamin Kahn. It was originally written by Barry Coughlan and is currently maintained by Stephan Gambke.

License

GNU General Public License 2.0 or later.

Package Rankings
Top 8.43% on Packagist.org
Badges
Extracted from project README's
Build Status Code Coverage Code Quality Dependency Status Latest Stable Version Packagist download count
Related Projects