Anki add-on: Optionally Strip Arabic/Hebrew/Syriac diacritics in cards

v1.2 This plug-in adds support for conditional removal of diacritics in Arabic, Hebrew and Syriac scripts in the card template. It means that with a single field containing diacritics, you can choose to display or not the diacritics when you review a card. A practical use for it is to remove diacritics in the question, but display them in the answer: Q:وصل القطار الى المحطّة الصّغيرة [After a long and tiring trip]. A:بَعْدَ سَفْرَةٍ طَوِيلَةٍ وَمُتْعِبَةٍ وَصَلَ الْقِطَارُ إِلَى الْمَحَطَّةِ الصَّغِيرَةِ. To achieve this, simply add the modifier {{plain_arabic_except(shadda)::Field}} to your card template. Three modifiers are available at first: plain_{arabic,hebrew,syriac}_except(), which strips a field of all its diacritical marks except the one that you will have passed as parameters to the modifier: the one I personally use is {{plain_arabic_except(shadda,hamza):cloze:Text}}. You can easily extend it. Note that since I've added support to Anki for chained modifiers and for modifier parameters, it is possible to apply the modifier to a cloze field. Support for chained modifiers exist in Anki and lets you develop your own modifier add-ons. As for AnkiDroid, it apparently now supports chained modifiers as well (so your cards won't crash, as it used to be the case), but given the lack of support for add-ons, your diacritics will still appear there. For any question, bug report or extra features, email me at julien.baley[@]gmail[.]com

GitHub repository: julienbaley/anki-abjad
Repository description: Plug-ins making the use of Arabic in Anki more convenient
Languages: Python