Damien Elmes
6b784ae42e
escape backslash in find&replace
...
https://anki.tenderapp.com/discussions/ankidesktop/35903-bug-find-and-replace-breaks-when-replacing-with-latexmathjax-commands
2019-09-24 15:46:26 +10:00
Damien Elmes
d46899943c
fix negative due dates in filtered decks
...
https://anki.tenderapp.com/discussions/ankidesktop/35978-rebuilding-filtered-deck-on-experimental-v2-empties-deck-and-reschedules-to-the-year-1745
this means affected cards will not have the selected ordering applied,
but that seems preferable to the alternatives
2019-09-24 15:38:33 +10:00
Damien Elmes
241b7ea005
use locales instead of two digit lang codes
...
and move away from launchpad
2019-09-23 21:18:03 +10:00
Arthur Milchior
61d7c0b5d9
when sorting by easiness, put new card separately
2019-09-18 16:58:29 +02:00
Damien Elmes
8b78d326f8
Merge pull request #328 from lovac42/clearUndoOnSchedConvert
...
clears undo before changing schedulers
2019-08-31 11:38:07 +10:00
Damien Elmes
a609633bb7
Merge pull request #327 from Blauelf/patch-1
...
Prevent non-integer ivl when importing from Mnemosyne
2019-08-31 11:34:54 +10:00
lovac42
9069d282a2
clears undo before changing schedulers
2019-08-30 20:55:38 -04:00
Damien Elmes
fb5deb9063
statsbg credit/link
2019-08-31 10:47:01 +10:00
Blauelf
672e19df85
Prevent non-integer ivl when importing from Mnemosyne
...
A reddit user had a few issues when importing from Mnemosyne, one of which was non-integer values interpreted as "v2 scheduler bug". I assume that's the line where they originated.
https://www.reddit.com/r/Anki/comments/cxcv27/what_just_happened_cards_with_v2_scheduler_bug/
2019-08-30 14:56:44 +02:00
lovac42
a4a47a0c94
rm unnecessary step
2019-08-20 23:31:04 -04:00
lovac42
0007c98e8d
Fix case sensitive field names so that 'apple' and 'Apple' both show up in drop down list when performing a search and replace.
2019-08-20 22:28:45 -04:00
Damien Elmes
442df9d668
Merge pull request #323 from SebastienGllmt/patch-1
...
Allow disabling timeTicks
2019-08-17 18:50:44 +10:00
Damien Elmes
4dde7b13d0
ensure random distribution of due cards for a given day in v2 sched
2019-08-17 18:45:00 +10:00
Sebastien Guillemot
a9641e50c6
Allow disabling timeTicks
2019-08-16 01:58:10 +10:00
Damien Elmes
95387af2cd
cleanup recording on cancel
2019-07-14 11:19:29 +10:00
Damien Elmes
00f171e6c3
fix flag changes in browser not syncing
2019-07-09 15:16:02 +10:00
Damien Elmes
6661ba8a77
bump version
2019-06-27 10:27:31 +10:00
Damien Elmes
ce4d18aded
put deck fix messages in the collection log
2019-06-27 09:46:56 +10:00
Damien Elmes
9fc4b55575
fix v2 relearning reset bug
...
https://anki.tenderapp.com/discussions/ankidesktop/34560-schedule-switching-bug
2019-06-14 09:15:48 +10:00
Damien Elmes
702788c8d0
bump version
2019-06-11 15:25:45 +10:00
Damien Elmes
ef10d76edb
fix v2 lrn scheduling bug
...
https://anki.tenderapp.com/discussions/ankimobile/9714-deleting-custom-study-deck-skips-learning-step-time
2019-05-31 15:05:12 +10:00
Damien Elmes
7aba268d7a
tweak type answer note type
2019-05-14 17:05:37 +10:00
Damien Elmes
bcb422beda
fix learn steps being assigned on relearn in v2
2019-04-30 09:27:28 +10:00
Damien Elmes
599f57494b
wrap due numbers instead of capping them, and add warning
...
Wrapping (mostly) preserves the original card order, and starting
at 1M makes it easier for users to find the cards with the high
due numbers even after they have wrapped.
related discussion:
https://anki.tenderapp.com/discussions/ankidesktop/33664-due-value-of-new-card-being-1000000
2019-04-29 18:17:33 +10:00
Damien Elmes
eb46a8509a
bump version
2019-04-29 14:51:34 +10:00
Damien Elmes
70c584671d
cleanup mpv on exit
2019-04-29 14:36:51 +10:00
Damien Elmes
9fb5a3257c
daemonize helper threads so that sys.exit() during startup works
...
with daemonize set to False, the app hangs waiting on the helper threads
2019-04-29 14:36:44 +10:00
Damien Elmes
7df402b006
catch full mpv request queue
...
presumably happening if multiple requests are sent before previous
response fetch times out
Caught exception:
File "aqt/webview.py", line 314, in handler
File "aqt/editor.py", line 351, in <lambda>
File "aqt/addcards.py", line 225, in afterSave
File "aqt/addcards.py", line 231, in doClose
File "aqt/addcards.py", line 210, in _reject
File "anki/sound.py", line 417, in clearAudioQueue
File "anki/sound.py", line 117, in clearQueue
File "anki/mpv.py", line 558, in command
File "anki/mpv.py", line 352, in _send_request
File "anki/mpv.py", line 311, in _send_message
<class 'anki.mpv.MPVTimeoutError'>: unable to put request
2019-04-21 18:56:11 +10:00
Damien Elmes
8497da27cf
ensure the list of note types is not empty
...
fixes an issue opening the add screen if a user manages to delete
all their note types with an add-on or a sync
2019-04-21 18:02:12 +10:00
Damien Elmes
5dd7fc8c6e
another attempt to preventing mpv from accessing standard config
...
https://github.com/dae/anki/pull/296
2019-04-09 15:32:44 +10:00
Damien Elmes
1a5322a396
psutil may throw OSError when calling .exe()
...
https://anki.tenderapp.com/discussions/ankidesktop/33406-failed-to-execute-script-runanki
2019-04-08 15:56:06 +10:00
Damien Elmes
039f6bb382
Merge pull request #290 from jianli/change-chunk-by-deck-age
...
Fix chunk size for newer decks
2019-03-13 12:23:35 +10:00
Damien Elmes
99693fb277
Update stats.py
...
disable spurious pylint warning
2019-03-11 15:12:21 +10:00
Damien Elmes
cca3fcb241
bump version
2019-03-11 14:36:19 +10:00
Damien Elmes
3cf770c73c
Revert "moveTemplate slightly quicker"
...
This reverts commit b29fd508c7 .
This caused a regression:
https://github.com/dae/anki/pull/294
2019-03-11 13:49:58 +10:00
Jian Li
08e51f220f
Clean up code
2019-03-10 18:20:08 -07:00
Jian Li
c4f9a35af4
Restrict bin count to 100
2019-03-10 17:30:14 -07:00
Jian Li
64064410a3
Change bin width (chunk) based on deck age
2019-03-10 17:19:16 -07:00
Jian Li
66aef160b3
Refactor chunk calculation
2019-03-10 16:37:06 -07:00
Damien Elmes
858442a4c9
bump version
2019-03-07 18:43:56 +10:00
Damien Elmes
5c03653f3f
keep json in utils for add-on compat
...
https://anki.tenderapp.com/discussions/beta-testing/1399-anki-2110-beta#comment_47036452
2019-03-06 07:18:26 +10:00
Damien Elmes
b5d4e78b94
cleanup old mplayer instances in profile unload as well
...
possible fix for users still having permission errors when
renaming profiles
2019-03-05 09:01:31 +10:00
Damien Elmes
b168ce6eed
add option to strip html in export
2019-03-05 08:57:53 +10:00
Damien Elmes
1c4a40a3cc
strip [[type:...]] in card export
2019-03-05 08:55:57 +10:00
Damien Elmes
ebdd8dae4b
tidy up unused imports
2019-03-04 17:25:19 +10:00
Damien Elmes
6e077ab414
use raw strings for regexs
2019-03-04 17:03:43 +10:00
Damien Elmes
3464b5fd80
fix wrong var name in previous warning fix
2019-03-04 17:02:52 +10:00
Damien Elmes
4037a034aa
fix inconsistent indentation
2019-03-04 16:54:22 +10:00
Damien Elmes
f6b2135129
fix some warnings
2019-03-04 16:01:10 +10:00
Damien Elmes
ef23268573
use distro in place of deprecated dist() method
2019-03-04 15:39:10 +10:00
Damien Elmes
3721cc4604
silence some spurious errors and remove some unused code
2019-03-04 11:22:40 +10:00
Damien Elmes
a389b8b4a0
move versionWithBuild into anki module
2019-02-28 08:37:42 +10:00
David Lönnhager
c6ab8dcc48
Fix permissions error on Windows
2019-02-27 02:51:28 +01:00
Damien Elmes
3b4ed41c5b
bump version
2019-02-24 16:20:49 +10:00
Damien Elmes
95ccbfdd36
send build number when syncing too
2019-02-19 08:04:25 +10:00
Damien Elmes
d8f059b570
style and arg order fix
2019-02-18 12:44:04 +10:00
Arthur-Milchior
20ff61e59e
Show deck of the addCard window
2019-02-16 12:25:22 +01:00
Arthur-Milchior
89719ee5d5
Correct deck when previewing an existing card
2019-02-16 11:28:50 +01:00
Damien Elmes
ca710ab3f1
allow running with pyaudio missing
2019-02-13 09:36:39 +10:00
Damien Elmes
e39c27afeb
revlog changes need to limited to (re)learning cards
...
if you switched schedulers with the git code or the beta, please
restore from a backup prior to the switch
2019-02-11 18:12:44 +10:00
Damien Elmes
5632babee6
rollover may not be set
2019-02-08 16:31:56 +10:00
Damien Elmes
041e4dbdf0
cleanup old mplayer instances after crash
...
fixes
https://anki.tenderapp.com/discussions/ankidesktop/31908-no-consigo-renomear-meu-nome-no-anki
2019-02-06 09:03:39 +10:00
Damien Elmes
372d5ed6e8
update copyright and clarify licenses
2019-02-05 14:01:33 +10:00
Damien Elmes
cf25b3c053
make sure bulk flag changes sync
...
https://anki.tenderapp.com/discussions/ankidesktop/31774-flag-syncing-bug
2019-02-05 13:01:07 +10:00
Damien Elmes
867e4b9f94
support {{CardFlag}}
...
https://anki.tenderapp.com/discussions/ankidesktop/32158-flags
2019-02-05 13:00:47 +10:00
Damien Elmes
d57511713c
don't outline answer buttons graph
...
small numbers lead to the outline overlapping the graph bounds
2019-02-05 12:40:05 +10:00
Damien Elmes
29a680d8bf
fix decimal intervals in revlog as well
2019-02-05 12:30:22 +10:00
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