Investigation card for wish #20: Create new Han characters with IDS extension for Wikisource
The main ticket is T137786: Deploy IDS extension to zh.wikisource.
The investigation is -- what still needs to be done? Several people have been working on it. How can we help to get it finished?
Investigation
Background:
- Written Chinese involves "inventing" new characters all the time by combining a bunch of standard characters. For example this ideograph is a combination of 10 individual Chinese characters. Together they make sense as a new phrase or sentence. Since such new ideographs are created all the time (like how new phrases are created using standard words), it's not feasible to think about adding them all to Unicode.
- Adding IDS support to wikis means that rather than using manually-created images to represent these ideographs, contributors will be able to add them directly from the edit interface. IDS operates via 12 special 'operator' unicode characters that prefix other characters to create new ideographs.
- The IDS extension works by sending these character combinations (defined within an <ids>…</ids> element) to a web service that returns a PNG of the resulting ideograph.
Current situation:
- Active development is underway (most recent activity a couple of weeks ago) by users including @Shoichi and @awight
- The (GPL-2.0) extension code is at https://github.com/MGdesigner/Mediawiki-IDSextension — it's only about 25 lines of code
- The (Java, AGPL-3.0) web service tool is at https://github.com/sih4sing5hong5/han3_ji7_tsoo1_kian3 (27 open issues, but most are from within about the last 18 months)
- A fork of this is maintained by Wikimedia Taiwan, but it's currently the same as upstream
- Much of han3_ji7_tsoo1_kian3 is in Chinese, which is a barrier to non-Sinophone developers — however, it sounds like the upstream author has agreed that things should be translated to English instead
- A test installation of the web service is running at https://tools.wmflabs.org/idsgen/
- The mediawiki/extensions/Ids repository has been requested by @awight
- A test wiki has been set up at http://ids-testing.wmflabs.org/wiki/
Still required:
- T153989: Get mirror of IDS Extension repository set up in Gerrit/Diffusion
- Set up an IDS Phabricator project — IDS-extension
- Security (and code style etc.) review of the extension
- Add ability to configure the web service endpoint to the extension (hardcoded at the moment)
- Translate han3_ji7_tsoo1_kian3 into English
- Security (etc.) review of han3_ji7_tsoo1_kian3
- T137786: Deploy IDS extension to zh.wikisource
- T148693: Deploy IDS rendering engine to production (possibly)
- Add a caching layer as part of the extension (if T148693 isn't practical)