Damien Elmes
d976bf913e
prevent new users from downloading accidentally
2018-09-05 19:53:41 +10:00
Damien Elmes
2ff1376336
bump version
2018-08-30 14:34:05 +10:00
Damien Elmes
ab57faf58e
catch suspended new cards w/ wrong due number
...
https://anki.tenderapp.com/discussions/ankidesktop/29267-01
2018-08-30 12:43:53 +10:00
Damien Elmes
daf8d2607a
bump version
2018-08-20 14:38:51 +10:00
Damien Elmes
b5a8d3f47c
bump version
2018-08-09 16:29:43 +10:00
Damien Elmes
be067dda56
bump version
2018-08-08 23:48:29 +10:00
Damien Elmes
d7d036c5a1
bump version
2018-08-08 12:47:19 +10:00
Damien Elmes
aa6418dd07
bump version to 2.1.0
2018-08-06 14:17:13 +10:00
Damien Elmes
8bce4527ef
bump version
2018-07-28 18:50:55 +10:00
Damien Elmes
ae46bfa8d1
support dynamic sync url
2018-07-28 18:08:16 +10:00
Damien Elmes
65f6ddf8d9
v2: limit learn delay fuzz to 5 minutes and sub-day
2018-07-28 13:56:56 +10:00
Damien Elmes
a728595c1d
use scheduled ivl in lapse calculation
...
reverting to 2.0 behaviour
https://anki.tenderapp.com/discussions/effective-learning/1300-lapse-duration-not-being-honored-for-lapses-of-multi-stepday-relearn-cards
2018-07-27 15:02:41 +10:00
Damien Elmes
eb44584b29
chunk deletions to reduce load on AnkiWeb
2018-07-26 21:34:53 +10:00
Damien Elmes
d6874de8c8
strip out unused syncing code
2018-07-26 19:41:52 +10:00
Damien Elmes
4af6aa8584
better handle invalid deck list
...
deleting will fail if the problem deck is the default deck - better to
rename instead
fixes infinite recursion errors
2018-07-26 11:34:10 +10:00
Damien Elmes
377bb78b88
bump version
2018-07-23 13:59:02 +10:00
Damien Elmes
fbeade1f23
fixes for mpv focus switching
...
- avoid changing focus if an Anki window is already focused
- only try to restore focus when playing videos
2018-07-23 13:57:09 +10:00
Damien Elmes
1ac83b7998
fix invalid cards when moving from v2->v1 sched
...
type needs to be reset from 3->2 when relearning cards removed from
learning
https://anki.tenderapp.com/discussions/beta-testing/1210-scheduling-error
2018-07-16 16:29:53 +10:00
Damien Elmes
babc7d6762
bump version
2018-07-11 22:40:05 +10:00
Damien Elmes
9e8648bed7
differentiate easy button more when reviewing early
...
apply half the easy bonus post ivl calculation, or else very early
reviews with longer intervals appear to have the same intervals as
answering 'good'
2018-07-11 22:18:46 +10:00
Damien Elmes
1a617e6d60
support customizing hard factor
2018-07-11 21:23:22 +10:00
Damien Elmes
13c54e02d8
don't pull learning cards into v1 filtered deck
...
preventing emptying is harder - operations like suspending
don't expect remFromDyn() to fail
2018-07-11 20:28:14 +10:00
Damien Elmes
6bd1eed9b6
remove study card count cap in v2 sched
...
- cap kept for the deck list, as we need to calculate it for multiple
decks
- v2 sched can calculate review limit faster, as it doesn't have to
check each deck separately
- filtered deck cap is same as in interface
- as this will be deployed on ankiweb, beta clients will need to update
or risk getting sanity check errors when syncing with high due counts
2018-07-11 20:03:36 +10:00
Damien Elmes
e006cb9e6e
Merge pull request #240 from maiself/avoid-reordering-when-importing
...
Avoid reordering entire deck when importing notes
2018-07-11 15:24:13 +10:00
Mai Lavelle
128bfcd481
avoid reordering entire deck when importing notes
...
No need to reorder existing cards, which may have been manually
ordered by the user, when importing notes if we can give cards
a proper due number from the start. Retrieving any sibling's
due number for this is easy as all relevant cards will have
already been queried for when generating the new cards.
2018-07-06 00:49:47 -04:00
Damien Elmes
01832e1312
fix media check with [$]{{c1::a}}{{c2::b}}[/$]
...
https://anki.tenderapp.com/discussions/ankidesktop/28625-cloze-deletion-in-latex-check-medias-regression-in-21
appears to have broken in e3885fd924
2018-06-28 13:11:04 +10:00
Damien Elmes
918c4269c6
bump version
2018-06-25 20:27:45 +10:00
Damien Elmes
c0c33a2b58
make sure we don't put suspended leeches back in the learning queue
...
fixes
https://anki.tenderapp.com/discussions/beta-testing/1119-anki-210-beta-38#comment_45555453
2018-06-25 20:27:26 +10:00
Damien Elmes
01ae70ea04
Merge pull request #239 from emrysn/master
...
Update lang.py with correct Romanian language option
2018-06-18 10:19:46 +10:00
Floren
f0d6ede6a3
Update lang.py
2018-06-16 21:32:47 +03:00
Damien Elmes
0974f33b4f
bump version
2018-06-15 11:59:22 +10:00
Damien Elmes
b17946b282
fix detection of multiline cloze deletions
2018-06-15 11:24:59 +10:00
Damien Elmes
8b6ef5579f
remove comments when stripping
...
gets rid of unwanted metadata from ms word pastes
2018-06-09 16:27:46 +10:00
Damien Elmes
89fd5cf6e5
make sure we don't import cards into a filtered deck
2018-06-08 14:51:55 +10:00
Damien Elmes
01c58cfd85
ignore delay in hard case
...
https://anki.tenderapp.com/discussions/ankidesktop/27627-request-allow-setting-maximum-delay-for-interval-calculation-in-overdue-cards
2018-06-01 12:24:11 +10:00
Damien Elmes
99c50f1a93
bump version
2018-05-31 16:26:31 +10:00
Damien Elmes
c207c9bc8c
speed up v2 deckDueList() in many decks case
2018-05-31 16:21:33 +10:00
Damien Elmes
ec090e02eb
fix incorrect scheduling when importing cards in relearning
...
private link:
https://anki.tenderapp.com/discussions/ankidesktop/28234
2018-05-31 13:27:59 +10:00
Damien Elmes
e6fcfb7379
need to record active window prior to playing in mpv
2018-05-31 13:22:17 +10:00
Damien Elmes
fd6d02bf6a
fix regular reviews being treated as relearning in v2 sched
2018-05-31 12:44:23 +10:00
Damien Elmes
9c7c52b99c
cache deck name->obj map to improve many decks case
2018-05-29 19:30:13 +10:00
Damien Elmes
146d332dc8
add Armenian lang
2018-05-28 11:23:24 +10:00
Damien Elmes
bfa8fe9022
bump version
2018-05-10 16:49:24 +10:00
Damien Elmes
478d244a4f
bump version
2018-05-01 14:41:18 +10:00
Damien Elmes
47370af7c3
work around video focus stealing
...
https://anki.tenderapp.com/discussions/ankidesktop/27401-bug-when-playing-a-video-on-anki-for-mac-anki-lanches-mplayer-and-doesnt-quit-it-or-return-to-anki
2018-04-30 17:12:26 +10:00
Damien Elmes
693bb955ad
check upload doesn't exceed ankiweb limits
...
better to abort prior to upload instead of giving a misleading error
2018-04-30 16:58:00 +10:00
Damien Elmes
d44ec04751
add envvar to disable ssl verification
2018-04-30 15:36:55 +10:00
Dudemanguy911
63b6ffea44
force mpv --keep-open=no
2018-04-08 11:18:51 -05:00
Damien Elmes
cf3cab2101
fix memory leak caused by text_factory
2018-03-05 15:27:22 +10:00
Damien Elmes
ee940cfa85
bump version
2018-03-01 15:55:17 +10:00
Damien Elmes
0fce9fba9d
don't convert quotes to entities on import
...
https://anki.tenderapp.com/discussions/ankidesktop/26926-bug-report-exporting-than-re-importing-messes-up-quotes
2018-03-01 13:38:06 +10:00
Damien Elmes
88fe45b1bb
normalize to NFC on all platforms
...
APFS is normalization-preserving, which results in spurious changes
being detected if we assume we'll receive NFD from file listings
this needs to be ported to 2.0.x as well
2018-02-28 16:22:06 +10:00
Damien Elmes
3cccae7a1f
increase default rev limit to 200
2018-02-27 12:58:24 +10:00
Damien Elmes
3b29bf6cba
change sibling burying to default to off
...
causes too much confusion for new users
2018-02-22 17:00:11 +11:00
Damien Elmes
730d444164
give hard a 1.5x interval when there's only one (re)learning step
...
otherwise we end up with two buttons that do the same thing
2018-02-06 15:41:56 +10:00
Damien Elmes
cc26d32431
misleading spacing
2018-02-06 11:47:28 +10:00
Damien Elmes
a1c02e8177
bump version
2018-02-05 16:10:29 +10:00
Damien Elmes
1dccd7c8d7
rename _restoreFromFiltered
...
and use same logic as restoreQueueSnippet
2018-02-02 19:10:35 +10:00
Damien Elmes
3b0c5b2fe9
remove _cidsByDid()
...
no longer necessary
2018-02-02 16:55:53 +10:00
Damien Elmes
01942cd076
fix is:buried in v2 scheduler
2018-02-02 16:17:26 +10:00
Damien Elmes
264e7c8ce9
simplify rev card answering
2018-02-02 15:19:41 +10:00
Damien Elmes
0b42787ffc
fix no relearn steps case in v2 sched
2018-02-02 14:30:53 +10:00
Damien Elmes
ebe420b440
v2 sched cleanups
2018-02-02 12:44:56 +10:00
Damien Elmes
6d7dd08e1e
include average answer time for today
2018-01-31 17:35:22 +10:00
Damien Elmes
3d71d6873e
bump version
2018-01-31 15:34:04 +10:00
Damien Elmes
cdb9c07dc0
make sure we don't import v1 scheduling into a v2 collection
2018-01-31 15:33:58 +10:00
Damien Elmes
8e0b009173
experiment with counting learning cards instead of learning steps
...
When studying, the learning count now indicates the number of
learning cards due within the learn ahead limit, instead of the total
number of learning steps required to complete that day.
Also fix the ineffective limit clauses in the learning counts.
2018-01-31 14:50:17 +10:00
Damien Elmes
49d1d8f9fd
fix check for nesting under filtered deck
2018-01-31 11:40:16 +10:00
Damien Elmes
bbccc4fd6b
enable syncing w/ v2 scheduler, and bump sync version
...
any client using a sync version of 9 must be able to handle
the V2 scheduler
2018-01-30 17:52:03 +10:00
Damien Elmes
0cce540d83
enforce schema version; allow importing+exporting v2 scheduler
...
To avoid all sorts of problems, we need to ensure cards scheduled with
the V2 scheduler are not studied in older clients. Unfortunately we
can't just bump the file's schema version, as the existing clients will
freely import files created with newer versions. This patch changes
that, so things should be a bit easier in the future.
In the mean time, we need a way to prevent older clients from importing
files created with the V2 scheduler. To do this, we switch to using a
'collection.anki21' file in the archive, and include a dummy collection
.anki2 file.
The code has been tested with both deck and collection packages, but
exporting deck packages w/ scheduling info will remain disabled until
the V2 scheduler has had more testing.
2018-01-29 14:12:04 +10:00
Damien Elmes
21284355be
remove unused bundled certs
2018-01-27 16:08:31 +10:00
Damien Elmes
135aced882
bump version
2018-01-27 15:48:27 +10:00
Damien Elmes
4dce1befa5
re.escape leaves _ alone in python 3
2018-01-27 15:15:07 +10:00
Damien Elmes
2564dd75ee
fix error on final step of lapsed card
...
https://anki.tenderapp.com/discussions/beta-testing/968-experimental-scheduler-in-anki-210beta31#comment_44552449
2018-01-22 12:10:39 +10:00
Damien Elmes
a81932e62c
bump version
2018-01-22 11:25:09 +10:00
Damien Elmes
bb6844716c
linux mpv doesn't understand --input-media-keys
2018-01-21 10:34:29 +10:00
Damien Elmes
6affae1489
bump version
2018-01-20 16:12:09 +10:00
Damien Elmes
d3d61ce93f
add option to show day learn cards before reviews
2018-01-20 16:07:57 +10:00
Damien Elmes
651b107b18
make preview delay customizable
2018-01-20 15:26:11 +10:00
Damien Elmes
1343101add
fix counts in preview mode
...
We can't preserve the original queues when in preview mode, as
otherwise the due counts report the remaining steps of cards in
the learning queue, instead of just 1.
Rather than the rather complicated approach of making the learning and
deck list code aware of the current mode we're in, preview mode moves
all cards to the review queue when the filtered deck is built - just as
cards are moved to the new queue in Anki 2.0.x. The reason for the
review queue is that users were frequently confused when cards appeared
as new - hopefully this is slightly less confusing.
2018-01-20 14:22:57 +10:00
Damien Elmes
6bddcc10e6
return to win32 audio driver on windows
...
fixes various playback issues some users were experiencing
2018-01-20 13:41:12 +10:00
Damien Elmes
6077611646
prevent exceptions when invalid utf-8 in db
2018-01-20 11:23:49 +10:00
Damien Elmes
6113785b2f
work around some decks with mod time stored as string
2018-01-19 11:42:06 +10:00
Damien Elmes
118326df1e
remove format literals so we can support python 3.5
2018-01-16 16:07:30 +10:00
Damien Elmes
4f0e6561e8
bump version
2018-01-14 19:32:31 +10:00
Damien Elmes
b84d3b53af
bump version
2018-01-14 17:53:09 +10:00
Damien Elmes
7915dcd1d9
disable syncing and deck exports for v2 sched
2018-01-14 17:35:59 +10:00
Damien Elmes
63d06946a8
extra newline
2018-01-14 17:01:39 +10:00
Damien Elmes
cf6d85baa4
support sched versions in collection
2018-01-14 16:58:04 +10:00
Damien Elmes
2ebd75ffe7
code in new scheduler to move between versions
2018-01-14 16:57:40 +10:00
Damien Elmes
a585c21082
add old sched code back
2018-01-14 16:55:07 +10:00
Damien Elmes
c56760802c
rename new sched code to schedv2.py
2018-01-14 16:54:48 +10:00
Damien Elmes
1e0b97f25b
support a second filter in filtered decks
2018-01-14 13:08:38 +10:00
Damien Elmes
a062e1bc29
store day rollover relative to local time
2018-01-14 12:16:53 +10:00
Damien Elmes
be0429479a
make sure we log the correct type when card.type=3
2018-01-14 12:16:53 +10:00
Damien Elmes
21023ed3e5
don't fetch reviews in deck order
...
- fetch reviews from all child decks at once, sorted by due order
- shuffle the gathered cards as we did previously
- review limits on child decks are ignored - only the current deck and
its parents control what the limit is
- to make the deck list consistent with actual counts, we can't sum the
child counts, as the sum in the parent limit>child limit case may not
reflect the actual number of cards that would be presented
2018-01-14 12:16:53 +10:00
Damien Elmes
4e52f43365
distinguish between buried siblings and manually buried cards
2018-01-14 12:16:53 +10:00
Damien Elmes
62c1fa4a17
preserve learning/filtered state when suspending/burying
...
add new card type of 3 so we can distinguish cards in relearning from
normal reviews
2018-01-14 12:16:53 +10:00
Damien Elmes
ba87fc7736
experiment with simple resched=off case to 'preview mode'
...
the previous approach meant we weren't able to preserve the card state
exactly when cards were in learning, since we didn't record the step
position prior to cards being moved into the filtered deck.
it also meant the answer buttons needed to change depending on state - 4
for cards in learning/review, but 2 when the card is on the final step
or is a review.
instead, in preview mode cards always have 2 buttons: again will repeat
again after a delay, and good immediately removes the card and restores
it to its previous state.
to accomplish this, we use a separate queue #, as the learn count
always needs to have a 1:1 correspondence to the number of cards
2018-01-14 12:16:53 +10:00
Damien Elmes
575f61c384
tweaks to interval constraining
...
- move fuzzing into _constrainedIvl() so it's applied prior to limits
like maxIvl
- don't fuzz early reviews, so cards get the same interval if a filtered
deck is rebuilt again
2018-01-14 12:16:53 +10:00
Damien Elmes
765ec0fb36
use the review queue for undue reviews
2018-01-14 12:16:53 +10:00
Damien Elmes
4070f4eef8
schedtest changes, squashed from local branch
2018-01-14 12:16:53 +10:00
Carl Hofmeister
baee6916e7
Fix string decode error when importing csv files
2017-12-31 14:01:47 -06:00
Damien Elmes
bf95b3f671
bump version
2017-12-24 22:27:09 +10:00
aakatov
6c61dc180b
fix play sound with HTML special symbols in its filename
2017-12-23 12:36:26 +03:00
Damien Elmes
ef323e2d35
bump version
2017-12-22 21:48:13 +10:00
Damien Elmes
ace01a21bc
different cloze colour in night mode
2017-12-20 16:05:28 +10:00
Damien Elmes
435afed325
fix error when importing
2017-12-12 11:55:27 +10:00
Damien Elmes
576c2b38b2
fix mpv warnings
2017-12-11 17:26:25 +10:00
Damien Elmes
81d4b77ee1
more open() and regex strings
2017-12-11 17:25:51 +10:00
Damien Elmes
3b71f8e44e
move regex flags to start of string
2017-12-11 16:42:19 +10:00
Damien Elmes
7ac601f0af
fix 'unclosed file' warnings with python -Wall
2017-12-11 16:38:15 +10:00
Damien Elmes
bc65baeff7
cgi.escape is deprecated
2017-12-11 16:20:00 +10:00
Damien Elmes
774c19e83e
add the ability to disable cert verification
2017-12-07 17:15:20 +10:00
Damien Elmes
39c0a57b13
work around pops in recording start
...
https://anki.tenderapp.com/discussions/ankidesktop/26005-when-recording-sound-on-mbp
on my machine, the pops start around sample 2048 of a 44.1khz recording,
and only for the first recording after the audio hardware has gone to
sleep
2017-12-05 11:07:52 +10:00
Damien Elmes
ea5f8eed36
bump version
2017-12-04 12:58:29 +10:00
Damien Elmes
c451141f97
play question audio when preview set to 'show both sides'
2017-12-04 12:45:22 +10:00
Damien Elmes
c67fc3e769
fix time translation patch
2017-12-04 12:33:23 +10:00
Damien Elmes
fcccf12ba6
night mode
2017-12-04 12:20:56 +10:00
Damien Elmes
84dd488d21
add catalan
2017-12-03 16:06:56 +10:00
Piotr Kubowicz
879ca0b72b
Allow to better translate "in x minutes"
...
"There is 1 minute" and "in 1 minute" need to be translated
differently in Slavic languages.
Additionally remove unused afterTimeTable.
2017-11-30 20:03:51 +01:00
Damien Elmes
3bf7f19843
bump version
2017-11-27 11:17:42 +10:00
Damien Elmes
77bb67a555
accept current and future mnemosyne imports
2017-11-27 10:49:38 +10:00
Damien Elmes
5ee1ee0450
restore media dir mod check
...
https://anki.tenderapp.com/discussions/beta-testing/853-anki-210-beta-21/page/1#comment_44071381
2017-11-20 14:22:53 +10:00
Damien Elmes
44e88afed0
bump version
2017-11-17 17:35:36 +10:00
Damien Elmes
8e7ef1d1be
detect image extension, catch errors, add timeout
2017-11-17 17:30:01 +10:00
Damien Elmes
0b3685193d
fix crash when deleting nested default deck
...
https://anki.tenderapp.com/discussions/ankidesktop/25777-bug-report-syn
2017-11-14 13:13:52 +10:00
Damien Elmes
64b55f0e55
bump version
2017-11-11 12:15:38 +10:00
Damien Elmes
645f6714d2
favour most recent modified when importing template changes
2017-11-11 12:11:45 +10:00
Damien Elmes
b6972a22e8
fix stutter when multiple audio files on card on windows
...
setting playlist pos to 0 was causing half-played sound to restart
2017-11-10 19:52:20 +10:00
Damien Elmes
905692b2a7
bump version
2017-10-27 18:07:29 +10:00
Damien Elmes
3b7c0ff733
bump version
2017-10-26 19:57:47 +10:00
Damien Elmes
d96517710a
bump version
2017-10-25 20:47:00 +10:00
Damien Elmes
554ff3d8d2
drop experimental prewrap mode
...
- pasting in prewrap mode had been broken for a while and nobody noticed
- needs changes to export code and cloze handling code to deal with the
newlines
- newline rewriting in filterNode() is likely fragile
- may revisit post 2.1
2017-10-25 19:18:00 +10:00
Damien Elmes
6b479fc839
don't leave a wav file lying around when recording
2017-10-25 18:35:39 +10:00
Damien Elmes
e3885fd924
fix detection of media refs in cloze
...
https://anki.tenderapp.com/discussions/beta-testing/796-another-check-media-issue
2017-10-18 21:56:57 +10:00
Damien Elmes
8d0eb42c01
bump version
2017-10-13 13:12:36 +10:00
Damien Elmes
ec9c2476a3
don't capture media keys
2017-10-13 13:11:22 +10:00
Damien Elmes
519187e941
probable fix for win32 startup errors; add timeout to mpv start
2017-10-13 12:14:40 +10:00
Damien Elmes
c08818119c
bump version
2017-10-11 14:50:28 +10:00
Damien Elmes
17cc7d6eec
bump version
2017-10-05 17:26:48 +10:00
Damien Elmes
d3233f2446
don't show album artwork
2017-10-05 14:35:58 +10:00
Damien Elmes
f9f5a3d9f6
add coding: line to mpv.py for xgettext
2017-10-02 16:41:14 +10:00
Damien Elmes
b75b4ae470
bump version
2017-10-02 16:38:20 +10:00
Damien Elmes
ca95552408
integrate _packagedCmd() into mpv for binary distrib
2017-10-02 16:37:52 +10:00
Damien Elmes
384a01e53b
turn off mpv debug
2017-09-30 19:33:09 +10:00
Damien Elmes
e8b4d276b4
use named pipes for mpv on windows
...
currently using non-blocking mode which involves a sleep in the read
loop - overlapped i/o might be a better option in the future
2017-09-30 19:32:48 +10:00
Damien Elmes
7dc8f82906
mpv support
2017-09-30 19:29:48 +10:00
Damien Elmes
bb661a4b7d
mpv.py fixes
...
- enable input keys for video seeking
- output debug info to stdout so it's not caught by anki's error handler
- before sending a command, check the process is still alive, and
restart if necessary - otherwise a user who closes a video window will
end up with errors
2017-09-30 19:29:48 +10:00
Damien Elmes
e7d9d1264d
add mpv.py
2017-09-30 19:29:48 +10:00