From a639048a6b21105a7dc716de490c9995e879afdd Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Mon, 26 Apr 2021 23:34:33 +1000 Subject: [PATCH] i18n deckoptions; move some options into separate 'advanced' section --- ftl/core/deck-config.ftl | 126 +++++++++++++++++++++++++- ts/deckoptions/AdvancedOptions.svelte | 76 ++++++++++++++++ ts/deckoptions/BuryingOptions.svelte | 27 ++++++ ts/deckoptions/CheckBox.svelte | 12 ++- ts/deckoptions/ConfigEditor.svelte | 6 +- ts/deckoptions/ConfigEntry.svelte | 3 +- ts/deckoptions/DailyLimits.svelte | 38 +++----- ts/deckoptions/EnumSelector.svelte | 2 +- ts/deckoptions/GeneralOptions.svelte | 47 +++++----- ts/deckoptions/LapseOptions.svelte | 27 +----- ts/deckoptions/NewOptions.svelte | 67 +++++--------- ts/deckoptions/RevertButton.svelte | 20 +++- ts/deckoptions/ReviewOptions.svelte | 59 ------------ 13 files changed, 333 insertions(+), 177 deletions(-) create mode 100644 ts/deckoptions/AdvancedOptions.svelte create mode 100644 ts/deckoptions/BuryingOptions.svelte delete mode 100644 ts/deckoptions/ReviewOptions.svelte diff --git a/ftl/core/deck-config.ftl b/ftl/core/deck-config.ftl index 40aff1614..11570d9fc 100644 --- a/ftl/core/deck-config.ftl +++ b/ftl/core/deck-config.ftl @@ -1,3 +1,5 @@ +### Text shown on the "Deck Options" screen + # Used in the deck configuration screen to show how many decks are used # by a particular configuration group, eg "Group1 (used by 3 decks)" deck-config-used-by-decks = @@ -6,9 +8,131 @@ deck-config-used-by-decks = *[other] { $decks } decks } deck-config-default-name = Default +deck-config-title = Deck Options + +## Daily limits section + +deck-config-daily-limits = Daily Limits +deck-config-new-limit-tooltip = + The maximum number of new cards to introduce in a day, if new cards are available. + Because new material will increase your short-term review workload, this should typically + be at least 10x smaller than your review limit. +deck-config-review-limit-tooltip = + The maximum number of review cards to show in a day, + if cards are ready for review. + +## New Cards section + +deck-config-learning-steps = Learning steps +# Please don't translate '5m' or '2d' +-deck-config-delay-hint = Delays can be in minutes (eg "5m"), or days (eg "2d"). +deck-config-learning-steps-tooltip = + One or more delays, separated by spaces. The first delay will be used + when you press the Again button on a new card, and is 1 minute by default. + The Good button will advance to the next step, which is 10 minutes by default. + Once all steps have been passed, the card will become a review card, and + will appear on a different day. { -deck-config-delay-hint } +deck-config-graduating-interval-tooltip = + The number of days to wait before showing a card again, after the Good button + is pressed on the final learning step. +deck-config-easy-interval-tooltip = + The number of days to wait before showing a card again, after the Easy button + is used to immediately remove a card from learning. + +## Lapses section + +deck-config-relearning-steps = Relearning steps +deck-config-relearning-steps-tooltip = + Zero or more delays, separated by spaces. By default, pressing the Again + button on a review card will show it again 10 minutes later. If no delays + are provided, the card will have its interval changed, without entering + relearning. { -deck-config-delay-hint } +deck-config-leech-threshold-tooltip = + The number of times Again needs to be pressed on a review card before it is + marked as a leech. Leeches are cards that consume a lot of your time, and + when a card is marked as a leech, it's a good idea to rewrite it, delete it, or + think of a mnemonic to help you remember it. +# See actions-suspend-card and scheduling-tag-only for the wording +deck-config-leech-action-tooltip = + Tag Only: Add a "leech" tag to the note, and display a pop-up.
+ Suspend Card: In addition to tagging the note, hide the card until it is + manually unsuspended. + +## Burying section + +deck-config-burying-title = Burying +deck-config-bury-tooltip = + Whether other cards of the same note (eg reverse cards, adjacent + cloze deletions) will be delayed until the next day. + +## Timer section + +deck-config-timer-title = Timer +deck-config-maximum-answer-secs = Maximum answer seconds +deck-config-maximum-answer-secs-tooltip = + The maximum number of seconds to record for a single review. If an answer + exceeds this time (because you stepped away from the screen for example), + the time taken will be recorded as the limit you have set. +deck-config-show-answer-timer-tooltip = + In the review screen, show a timer that counts the number of seconds you're + taking to review each card. + +## Audio section + +deck-config-audio-title = Audio +deck-config-disable-autoplay = Don't play audio automatically +deck-config-always-include-question-audio-tooltip = + Whether the question audio should be included when the Replay action is + used while looking at the answer side of a card. + +## Advanced section + +deck-config-advanced-title = Advanced +deck-config-maximum-interval-tooltip = + The maximum number of days a review card will wait. When reviews have + reached the limit, Hard, Good and Easy will all give the same delay. + The shorter you set this, the greater your workload will be. +deck-config-starting-ease-tooltip = + The ease multiplier new cards start with. By default, the Good button on a + newly-learnt card will delay the next review by 2.5x the previous delay. +deck-config-easy-bonus-tooltip = + An extra multiplier that is applied to a review card's interval when you rate + it Easy. +deck-config-interval-modifier-tooltip = + This multiplier is applied to all reviews, and minor adjustments can be used + to make Anki more conservative or aggressive in its scheduling. Please see + the manual before changing this option. +deck-config-hard-interval-tooltip = The multiplier applied to a review interval when answering Hard. +deck-config-new-interval-tooltip = The multiplier applied to a review interval when answering Again. +deck-config-minimum-interval-tooltip = The minimum interval given to a review card after answering Again. + +## Adding/renaming + +deck-config-add-group = Add Group +deck-config-name-prompt = Name: +deck-config-rename-group = Rename Group + +## Removing + +deck-config-remove-group = Remove Group +deck-config-confirm-normal = Remove { $name }? +-deck-config-will-require-full-sync = This will require a one-way sync. +# You don't need to translate this +deck-config-confirm-full = + { deck-config-confirm-normal } + { -deck-config-will-require-full-sync } + +## Other Buttons + +deck-config-save-button = Save +deck-config-save-to-all-children = Save to All Children +deck-config-revert-button-tooltip = Restore this setting to its default value. + +## These strings are shown via the Description button at the bottom of the +## overview screen. + deck-config-description-markdown = Enable markdown+clean HTML deck-config-description-markdown-hint = Will appear as text on Anki 2.1.40 and below. -deck-config-title = Deck Options ## Warnings shown to the user diff --git a/ts/deckoptions/AdvancedOptions.svelte b/ts/deckoptions/AdvancedOptions.svelte new file mode 100644 index 000000000..49da2094e --- /dev/null +++ b/ts/deckoptions/AdvancedOptions.svelte @@ -0,0 +1,76 @@ + + + +

{tr.deckConfigAdvancedTitle()}

+ + + + ($config.initialEase = evt.detail.value)} /> + + ($config.easyMultiplier = evt.detail.value)} /> + + ($config.intervalMultiplier = evt.detail.value)} /> + + ($config.hardMultiplier = evt.detail.value)} /> + + ($config.lapseMultiplier = evt.detail.value)} /> + + diff --git a/ts/deckoptions/BuryingOptions.svelte b/ts/deckoptions/BuryingOptions.svelte new file mode 100644 index 000000000..05543c8b4 --- /dev/null +++ b/ts/deckoptions/BuryingOptions.svelte @@ -0,0 +1,27 @@ + + + +

{tr.deckConfigBuryingTitle()}

+ + + + diff --git a/ts/deckoptions/CheckBox.svelte b/ts/deckoptions/CheckBox.svelte index 22b584719..c05ca6b08 100644 --- a/ts/deckoptions/CheckBox.svelte +++ b/ts/deckoptions/CheckBox.svelte @@ -4,11 +4,19 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html --> - -
+ +
+ + {#if tooltip} + + {/if} +
diff --git a/ts/deckoptions/ConfigEditor.svelte b/ts/deckoptions/ConfigEditor.svelte index 9b2b72019..a8fe17a5e 100644 --- a/ts/deckoptions/ConfigEditor.svelte +++ b/ts/deckoptions/ConfigEditor.svelte @@ -5,7 +5,8 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html -
+
{#if label}
diff --git a/ts/deckoptions/DailyLimits.svelte b/ts/deckoptions/DailyLimits.svelte index 0a470eb9f..e8aaf53b7 100644 --- a/ts/deckoptions/DailyLimits.svelte +++ b/ts/deckoptions/DailyLimits.svelte @@ -17,12 +17,6 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html ? tr.deckConfigDailyLimitWillBeCapped({ cards: $parentLimits.newCards }) : ""; - // with the v2 scheduler, this no longer applies - // $: reviewsGreaterThanParent = - // $config.reviewsPerDay > $parentLimits.reviews - // ? `Daily limit will be capped to parent limit of ${$parentLimits.reviews}.` - // : ""; - $: reviewsTooLow = Math.min(9999, $config.newPerDay * 10) > $config.reviewsPerDay ? tr.deckConfigReviewsTooLow({ @@ -32,22 +26,20 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html : ""; -
-

Daily Limits

+

{tr.deckConfigDailyLimits()}

- + - -
+ diff --git a/ts/deckoptions/EnumSelector.svelte b/ts/deckoptions/EnumSelector.svelte index 2594e9cbe..75fd0224b 100644 --- a/ts/deckoptions/EnumSelector.svelte +++ b/ts/deckoptions/EnumSelector.svelte @@ -6,10 +6,10 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html import ConfigEntry from "./ConfigEntry.svelte"; export let label: string; - export let tooltip: string; export let choices: string[]; export let value: number = 0; export let defaultValue: number; + export let tooltip = ""; diff --git a/ts/deckoptions/GeneralOptions.svelte b/ts/deckoptions/GeneralOptions.svelte index 6716f59cd..b1a0c1638 100644 --- a/ts/deckoptions/GeneralOptions.svelte +++ b/ts/deckoptions/GeneralOptions.svelte @@ -13,29 +13,32 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html let defaults = state.defaults; -
-

General

+

{tr.deckConfigTimerTitle()}

- + - + - +

{tr.deckConfigAudioTitle()}

- -
+ + + diff --git a/ts/deckoptions/LapseOptions.svelte b/ts/deckoptions/LapseOptions.svelte index 19d17ccf1..3f84de508 100644 --- a/ts/deckoptions/LapseOptions.svelte +++ b/ts/deckoptions/LapseOptions.svelte @@ -5,7 +5,6 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
-

Lapses

+

{tr.schedulingLapses()}

($config.relearnSteps = evt.detail.value)} /> - ($config.lapseMultiplier = evt.detail.value)} /> - - - diff --git a/ts/deckoptions/NewOptions.svelte b/ts/deckoptions/NewOptions.svelte index c2e9fc25d..5bec89daf 100644 --- a/ts/deckoptions/NewOptions.svelte +++ b/ts/deckoptions/NewOptions.svelte @@ -5,8 +5,6 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html -
-

New Cards

+

{tr.schedulingNewCards()}

- ($config.learnSteps = evt.detail.value)} /> + ($config.learnSteps = evt.detail.value)} /> - + - + - - - ($config.initialEase = evt.detail.value)} /> - - -
+ diff --git a/ts/deckoptions/RevertButton.svelte b/ts/deckoptions/RevertButton.svelte index 4081b3651..dd2c0b720 100644 --- a/ts/deckoptions/RevertButton.svelte +++ b/ts/deckoptions/RevertButton.svelte @@ -3,9 +3,23 @@ Copyright: Ankitects Pty Ltd and contributors License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html --> - -
-

Reviews

- - ($config.easyMultiplier = evt.detail.value)} /> - - ($config.intervalMultiplier = evt.detail.value)} /> - - - - ($config.hardMultiplier = evt.detail.value)} /> - - -