Anki add-on: Custom Answer Buttons

Note: FSRS is currently unsupported. FSRS operates as a dynamic scheduling algorithm. Indiscriminately using external overrides can disrupt its internal calculations and cause severe scheduling issues. This tool is designed exclusively for the traditional SM-2 algorithm. If you have FSRS enabled, it is highly recommended to rely solely on the native four answer buttons. Custom Answer Buttons for Anki This add-on allows you to create custom answer buttons in the Anki reviewer. It goes beyond simply postponing cards; it features a powerful syntax that lets you build buttons that seamlessly integrate with Anki's native spacing algorithm and Ease factor mechanics. Key Features Unlimited Custom Buttons : Add as many extra buttons as you need to the bottom bar. Native Algorithm Integration : Custom buttons can act as interval multipliers and apply Ease Factor bonuses/penalties to your cards. Responsive UI : Automatically locks window width to prevent buttons from squishing, or optionally hide specific buttons when the window shrinks. Custom Shortcuts : Bind any custom button to a keyboard shortcut. How to Configure "Days" When adding or editing a button in the Configuration menu, the Days field determines how the card gets rescheduled. It supports two modes: Fixed Days and Dynamic Multipliers . 1. Fixed Days To simply push a card a specific number of days into the future, type a number. 14 : Reschedules the card to 14 days later. 2. Dynamic Multipliers To create a button that scales based on the card's current interval, start the input with * , x , X , or × . *1.5 : Multiplies the current interval by 1.5. Ease Factor Adjustments In both modes, you can optionally append parentheses to modify the card's underlying Ease Factor (in percentage). 14(15) or 14(+15%) : Reschedules to 14 days, AND increases the card's Ease Factor by 15%. *1.2(-15) : Multiplies the interval by 1.2, AND decreases the card's Ease Factor by 15%. (Note: Parentheses support both English () and Chinese （） characters. The % and + signs are optional). Global Settings Explained At the bottom of the configuration dialog, you will find several global options to tweak the add-on's behavior: Show "Rescheduled" tooltip after clicking custom buttons Shows a brief, non-intrusive popup (e.g., "Rescheduled to 2.5mo") at the bottom of the screen to confirm the custom button was triggered successfully. Allow triggering custom buttons directly in Question state Allows you to press the custom button's keyboard shortcut while looking at the front of the card (before revealing the answer). Answer new/learning cards as Good before rescheduling (marks as learned) New and Learning cards technically do not have a standard "interval" to multiply yet. When this is enabled, clicking a custom button on a new card will first secretly press "Good" natively to graduate it into a review card, and then apply your custom reschedule. This ensures the card is correctly logged in Anki's database as "learned". Merge "Good" answer and reschedule into one Undo step (Only applies if the setting above is enabled) . Normally, answering a new card and rescheduling it generates two separate actions in Anki's undo history. Enabling this merges them into a single step, meaning you only have to press Ctrl+Z once to undo. Warning: Merging undo steps can sometimes interfere with Anki's UI refresh and might hide your "Rescheduled" tooltip.

GitHub repository: caitony-czc/my-images