Jump to content

Wikipedia:Twinkle/Localisation

From Wikipedia, the free encyclopedia

As of 2021, the twinkle-starter project exists for porting twinkle to other wikis. The README has the instructions on setting up. You can ask for help at WT:TW or on the Discord server Wikimedia Gadgets, or by contacting the maintainer SD0001 directly via email.


Historically, Twinkle used to be localised by copying the enwiki gadget files and modifying them. This method is now discouraged as it results in twinkle becoming outdated with no easy way of getting it up-to-date – eventually resulting in broken installations on many wikis. Syncing the updates from enwiki is usually non-trivial.

Click to expand (Old method)

Introduction

[edit]

Some parts of Twinkle are easily portable to other MediaWiki-based wikis: the revert/rollback module, for example. But most modules have been designed only with English Wikipedia in mind. For instance, the CSD module relies on templates that most likely do not exist on other wikis.

Users who wish to use Twinkle on other WMF wikis can use TwinkleGlobal, which allows reverting edits, reporting IPs and accounts to SRG, and requesting speedy deletion of pages.

Users who wish to make Twinkle's functionality available on other MediaWiki projects should consider the following suggestions:

  • The "fluff" (revert/rollback), "diff" (quick access to diff pages), and "unlink" (automated orphaning) modules can be used elsewhere with little or no modification. In the future, it is possible that these scripts will be packaged and made available for a quick setup and update process. For individual users, this can be done by following the instructions here.
  • If you wish to harness more of Twinkle's functionality, you may like to find a willing, JavaScript-savvy user on your wiki who can tweak Twinkle scripts to suit your site. The Twinkle developers are happy to help these efforts, to a reasonable degree: just ask at WT:TW, or join the Wikimedia Gadgets join on Discord server (but be prepared to wait for an answer).
  • The morebits.js library is likely to be of use to script developers, both here on English Wikipedia and other MediaWiki-based wikis. The latest version can be found at the Twinkle GitHub repository. The comment at the top of the file should be read to find out more.

Step-by-step instructions

[edit]

This page is intended as a basic guide for porting Twinkle to other language Wikipedias. If you wish to port it to any other wiki, you can ask for help at WT:TW, or the IRC channel #wikipedia-userscripts (be prepared to wait for an answer).

Twinkle is a tool used to perform multiple tasks at Wikipedia. Most of these involve the use of specific templates and pages on the English Wikipedia; besides the Javascript codes.

  1. Find a javascript-savvy user
  2. Set up a Github account and fork the Twinkle github repository (This will come in handy if you wish to keep your local version updated.)
  3. On your local wikipedia, set up the following pages from content on the respective English Wikipedia pages (preferably get an admin to import these pages, see Help:Import):
    1. Mediawiki:Gadget-morebits.js
    2. Mediawiki:Gadget-morebits.css
    3. Mediawiki:Gadget-Twinkle.js
    4. Mediawiki:Gadget-twinkleprod.js
    5. Mediawiki:Gadget-twinkleimage.js
    6. Mediawiki:Gadget-twinklebatchundelete.js
    7. Mediawiki:Gadget-twinklewarn.js
    8. Mediawiki:Gadget-twinkleblock.js
    9. Mediawiki:Gadget-twinklespeedy.js
    10. Mediawiki:Gadget-friendlyshared.js
    11. Mediawiki:Gadget-twinklediff.js
    12. Mediawiki:Gadget-twinkleunlink.js
    13. Mediawiki:Gadget-friendlytag.js
    14. Mediawiki:Gadget-twinkledeprod.js
    15. Mediawiki:Gadget-friendlywelcome.js
    16. Mediawiki:Gadget-twinklexfd.js
    17. Mediawiki:Gadget-twinklebatchdelete.js
    18. Mediawiki:Gadget-twinklebatchprotect.js
    19. Mediawiki:Gadget-twinkleconfig.js
    20. Mediawiki:Gadget-twinklefluff.js
    21. Mediawiki:Gadget-twinkleprotect.js
    22. Mediawiki:Gadget-twinklearv.js
    23. Mediawiki:Gadget-friendlytalkback.js
    24. Wikipedia:Twinkle/Preferences
  4. In MediaWiki:Gadgets-definition, add the line Twinkle[ResourceLoader|dependencies=mediawiki.user,mediawiki.util,jquery.ui.dialog,jquery.tipsy,moment|rights=autoconfirmed]|morebits.js|morebits.css|Twinkle.js|twinkleprod.js|twinkleimage.js|twinklebatchundelete.js|twinklewarn.js|twinkleblock.js|twinklespeedy.js|friendlyshared.js|twinklediff.js|twinkleunlink.js|friendlytag.js|twinkledeprod.js|friendlywelcome.js|twinklexfd.js|twinklebatchdelete.js|twinklebatchprotect.js|twinkleconfig.js|twinklefluff.js|twinkleprotect.js|twinklearv.js|friendlytalkback.js

Doing everything up to this step should add a Twinkle option in the Gadgets tab of your preferences panel. Enabling Twinkle should create a TW tab as can be seen on the English Wikipedia. To edit the gadget description visible in the preferences panel, edit the page MediaWiki:Gadget-Twinkle on your wiki.

The procedure after this varies depending on your choice. If you have a highly javascript-savvy user, you can modify Twinkle's code per your needs and add the required pages and templates per your choice.

If you wish to completely set up Twinkle to work exactly as on the English Wikipedia (and localise it later), follow the following steps:

  1. Find someone with Import rights on your local wiki
  2. Import all templates in Category:Templates used by Twinkle
  3. Depending on which TW tabs you want to use, set up the pages Wikipedia:Requests for page protection, Wikipedia:Articles for deletion, Wikipedia:Templates for discussion, Wikipedia:Categories for discussion etc. with content from their English Wikipedia counterparts.