Commit graph

762 commits

Author SHA1 Message Date
Damien Elmes
e073ef08b9 shift revlog eases when turning v2 sched on/off
fixes old 'good'/'easy' answers showing up as 'hard'/'good' in
the graphs
2019-02-05 12:30:01 +10:00
Damien Elmes
c38af98f53 show all four possible eases in v2 sched learning ease graph 2019-02-05 12:27:17 +10:00
Damien Elmes
d51cdec73e fix v2 sched+hourly retention graph issue 2019-02-05 12:26:36 +10:00
Damien Elmes
1675d2f01e fix due column as well in db check 2019-02-04 14:33:53 +10:00
Damien Elmes
86fb47d49d ensure today and dayCutoff are integers
https://github.com/dae/anki/pull/272
2019-02-04 14:29:52 +10:00
Damien Elmes
41f1ef02de add decimal ivl fix to fixIntegrity() 2019-01-29 08:17:24 +10:00
Damien Elmes
104b77b53f add .cursor() 2019-01-29 08:17:10 +10:00
Damien Elmes
d0fb87d432 make sure lapse % doesn't create decimal intervals
issue reported on
https://github.com/dae/anki/pull/272
2019-01-29 08:01:23 +10:00
Arthur-Milchior
b29fd508c7 moveTemplate slightly quicker
When a template is moved, only move the ord of cards whose position
did change.
2019-01-20 15:46:58 +01:00
Damien Elmes
a44915a743 bump version 2019-01-02 15:24:00 +10:00
Damien Elmes
71e0c88032 make sure we normalize deck names on input
https://anki.tenderapp.com/discussions/ankidesktop/31635-anki-crashes-when-new-card-is-added
2018-12-24 10:03:59 +10:00
Damien Elmes
1c39f4c194 deck fix print statements may be running in ascii environment
this should probably use the collection log in the future
2018-12-24 09:54:59 +10:00
Damien Elmes
8e4f5d5032 fix recording overflow handling 2018-12-22 13:41:35 +10:00
Damien Elmes
c740723e0b bump version 2018-12-18 19:42:00 +10:00
Damien Elmes
a6c34fd79f ignore broken reset hooks in database check
ideally the original code should be correctly cleaning up the hooks,
but if it does not, then we don't want to repeatedly present the user
with confusing errors when they try to check their database is ok.
2018-12-15 13:14:33 +10:00
Damien Elmes
727570418c restart mpv if it stops responding
https://anki.tenderapp.com/discussions/ankidesktop/31433-error
2018-12-13 21:30:17 +10:00
Damien Elmes
15721d840f bump version 2018-12-13 21:03:56 +10:00
Damien Elmes
30f19c07be find comparisons needs to be normalized
this data should probably be normalized when it's originally
added to the collection

https://anki.tenderapp.com/discussions/ankidesktop/31409-cant-search-by-deck-when-searching-decks-containing-arabic-text
2018-12-13 20:36:04 +10:00
Damien Elmes
54d5a321b6 bump version 2018-12-10 15:17:21 +10:00
Damien Elmes
8f77cafb04 scan for due learning cards more frequently 2018-12-10 12:11:45 +10:00
Damien Elmes
a951026413 disable wal on win32
another attempt at fixing 'database locked' errors on windows,
based on the suspicion that pysqlite is holding an open statement
handle that is preventing the switch from wal mode on close

also remove unused sync arg
2018-12-10 09:53:02 +10:00
Alexey Lebedeff
292764a40a Make quotes consistent with surroundings 2018-12-01 10:52:19 +01:00
Alexey Lebedeff
3d69aa9ce4 Fix searching for python 3.7
3.7 introduced a change to `re.escape()`, which no longer escapes
`%`. By using `re.escape("%")` instead of a literal, we can detect
a proper form at runtime.
2018-11-30 10:44:39 +01:00
Damien Elmes
f2bb7eb5ae bump version 2018-11-27 19:40:27 +10:00
Damien Elmes
7cb58c3432 update learning cutoff time periodically
prevents users from having to leave and return to the deck to show
cards that have become due during the study session

https://anki.tenderapp.com/discussions/ankimobile/8530-ankimobile-with-experimental-schedule-not-showing-due-cards-in-realtime
2018-11-27 19:37:46 +10:00
Damien Elmes
5bce218312 limit find&replace fields to selected notes 2018-11-27 16:42:00 +10:00
Damien Elmes
ea9d2e2d64 find&replace should not be case sensitive on field 2018-11-27 16:34:48 +10:00
Damien Elmes
7b96e90db7 cap filename length when attaching media to cards
https://anki.tenderapp.com/discussions/ankidesktop/30953-can-not-paste-or-upload-images-into-deck
2018-11-27 14:45:38 +10:00
Arthur Milchior
112b287548 Using cardIds in AnkiExporter 2018-11-26 10:47:26 +01:00
Arthur-Milchior
8e0077335a Change order of new cards
This commit corrects the following bug:

* Create a note N in an empty deck D of type basic (reverse), with
only some back, no front. Only card 2 will be generated.
* Edit the note, add a front. Card 1 will be generated.
* In the main window, try to learn deck D. In anki, currently, you'll
  see Card 2 first. According to the manual (and to my common sens),
  it should be Card 1 first.

This commit correct this bug, and ensure that new cards are seen
according to their order, and not to their creation date.
2018-11-20 21:50:36 +01:00
Damien Elmes
beaca57129 be more verbose in importing dialog
Many users seem to get confused when duplicates are not imported,
so we list out what's being skipped now to help the users to be able
to search for the content.
2018-11-14 16:58:47 +10:00
Damien Elmes
66bbb76e98 bump version 2018-11-13 11:30:27 +10:00
Damien Elmes
9c85376b3e improve handling of invalid deck trees
- move checking code out of the schedulers and into the deck manager
- ensure we can fix the problem in one loop - the previous recursive
approach could lead to stack overflows if the top level of a large
deck tree was missing. this was also the cause of the sqlite
'interrupted' error that some users were seeing
2018-11-09 15:04:35 +10:00
Damien Elmes
3c994ce257 Revert "increase db timeout"
This reverts commit 71053fcea9.

did not seem to help
2018-10-28 14:17:43 +10:00
Damien Elmes
a4edc57dc5 run latex commands without bundled libs
https://anki.tenderapp.com/discussions/ankidesktop/30531-latex-wont-generate-svgs-automatically-but-will-generate-pngs
2018-10-28 11:41:43 +10:00
Damien Elmes
1490dc7390 bump version 2018-10-25 14:52:49 +10:00
Damien Elmes
f8e1ebd4fb prevent infinite loop with invalid template 2018-10-20 19:37:01 +10:00
Damien Elmes
5907629406 fix bug in tag deletion
https://anki.tenderapp.com/discussions/ankidesktop/30146-removing-single-letter-tags-also-removes-any-other-tags-with-the-letter
2018-10-07 18:21:51 +10:00
Damien Elmes
3200eb043e bump version 2018-10-01 15:43:47 +10:00
Damien Elmes
5ae73d96d7 bump version 2018-09-28 18:49:38 +10:00
giqtaqisi
85ca2b412d
add support for Lojban 2018-09-26 16:15:07 +00:00
Damien Elmes
f246cf1062 strictly enforce maxIvl
https://anki.tenderapp.com/discussions/ankidesktop/29904-bug-in-v2-scheduler-that-allows-exceeding-the-maximum-review-interval
2018-09-25 09:55:46 +10:00
Damien Elmes
15919d6a37 beta version 2018-09-24 19:17:35 +10:00
Damien Elmes
57d7b1f54b fix translation path for packaged builds on Linux 2018-09-24 18:23:57 +10:00
Damien Elmes
71053fcea9 increase db timeout
possible workaround for 'database is locked' when switching
from WAL mode

https://anki.tenderapp.com/discussions/ankidesktop/29751-90dec2fdce28bb9f0bb7571f41edaff258e953d3
2018-09-24 17:25:23 +10:00
Damien Elmes
8775314e36 use custom mpv config folder
not the first time the default location has caused problems for users
https://anki.tenderapp.com/discussions/ankidesktop/29531-bug-ankis-version-of-mpv-loads-mpvconf-from-configmpv-on-macos
2018-09-24 16:26:08 +10:00
Damien Elmes
afe81347cd recover from decks with blank sections (eg '::deck') 2018-09-22 16:04:26 +10:00
Damien Elmes
a28973c2aa when rebuilding field cache make sure we don't discard filenames
stripHTMLMedia() already used in notes.py
2018-09-20 15:28:28 +10:00
Damien Elmes
8f05db5981 support timeout customization 2018-09-19 23:47:54 +10:00
Damien Elmes
26ffd619a6 add missing headers in get calls 2018-09-19 23:45:52 +10:00
Damien Elmes
742fe274dd fix exporting of v2 colpkg in non-English language
https://anki.tenderapp.com/discussions/ankidesktop/29661-error-exporting-decks
2018-09-14 19:35:52 +10:00
Damien Elmes
b75d9040de fix stripping of html in conditional replacement 2018-09-13 14:38:18 +10:00
Damien Elmes
b25a1fdc53 bump version 2018-09-05 20:23:39 +10:00
Damien Elmes
ee5675ef5b days since creation needs to be calculated relative to rollover
https://anki.tenderapp.com/discussions/ankidesktop/29502-next-day-starts-experimental-v2-scheduler-bug
2018-09-05 20:21:30 +10:00
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