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.
The recommended way to install this extension is by using Composer.
- Add the following to the MediaWiki
composer.local.json
file
{
"require": {
"mediawiki/lingo": "^3.0"
}
}
-
Run
php composer.phar update mediawiki/lingo
from the MediaWiki installation directory. -
Add the following code to your LocalSettings.php:
wfLoadExtension('Lingo');
Run php composer.phar update mediawiki/lingo
from the MediaWiki installation
directory.
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;
};
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".
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
From the Lingo
directory run
php ../../tests/phpunit/phpunit.php --group extensions-lingo -c phpunit.xml.dist
Comments, questions and suggestions should be sent or posted to:
- the Lingo discussion page: https://www.mediawiki.org/wiki/Extension_talk:Lingo
- the maintainer: https://www.mediawiki.org/wiki/Special:EmailUser/F.trott
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.
GNU General Public License 2.0 or later.