Commit graph

275 commits

Author SHA1 Message Date
dae
2aa7714f87 new media syncing protocol
- media syncing no longer locks the account, so it can be done
  in the background in the future, and multiple clients can safely
  sync media at the same time
- all operations are now idempotent, so they can be repeatedly safely
  in the event of a connection error
- whether it's a normal incremental sync, an initial sync,
  or the media database has been deleted, no files will be uploaded
  or downloaded if they already exist on the other side
- file removals are now chunked like additions & updates, preventing
  timeouts due to large requests
- if the server can't process a chunk in time, it will return a count
  of what it did process, so the client can retry the rest

Notes for AnkiDroid:

- when porting this, recommend you pick a different name for the
.media.db2 file, so users don't accidentally copy the AD version to
the desktop or vice versa
- please make sure filenames are added to the zip in NFC form
2014-06-26 09:00:38 +09:00
Soren I. Bjornstad
ba084cb46a don't insert <br> into text of cards on import
When "allow HTML" was turned off, Anki was replacing newlines with <br>s
in the text of the new notes before it escaped HTML characters, so the
line breaks were becoming &lt;br&gt;.
2014-06-21 11:02:34 -05:00
Soren I. Bjornstad
71ff86e3f3 change "suspended" label to "suspended+buried" 2014-06-20 19:23:53 -05:00
Soren I. Bjornstad
28bb109ded only display "added duplicate" message once
Even if there are several (duplicate) notes in the collection that
match, only send the message once to avoid making it look like multiple
dupes have been added.
2014-06-19 17:19:56 -05:00
Soren I. Bjornstad
5e74976361 prevent nesting things under filtered decks
This change keeps drag-and-drop behavior the same except for displaying
an error if an otherwise acceptable move would nest anything underneath
a filtered deck.
2014-06-18 16:26:49 -05:00
Soren I. Bjornstad
8620b81817 add unchanged count to import log 2014-06-17 09:38:26 -05:00
dae
1b646c1c8d mnemosyne changed version string in .db 2014-06-08 14:37:15 +09:00
dae
bc90904acd return success if media sync completes 2014-06-05 13:33:47 +09:00
dae
24e83abe22 fix empty search in filtered deck
was broken by bbc8f75d70
2014-06-03 17:54:15 +09:00
dae
8cdfce4dd8 fix latex generation caused by bug in patch 2014-06-03 17:35:19 +09:00
dae
85488afb8f add TimedLog for debugging 2014-06-03 17:26:06 +09:00
dae
cc4b9938c7 add note about latexCmds 2014-06-03 16:33:43 +09:00
Damien Elmes
4e41c61e73 Merge pull request #79 from joelmeyerhamme/patch-1
Expose latex command tool chain
2014-06-03 16:19:59 +09:00
dae
c89199aee9 Merge branch 'master' of https://github.com/hssm/anki 2014-05-28 17:42:27 +09:00
Houssam Salem
7b62094ea0 Add odid fix to db check (#1035) 2014-05-26 15:11:47 +10:00
dae
cda86307c0 round cards/minute (thanks to Markus) 2014-05-25 14:55:29 +09:00
rubyu
a83769b258 Fixes an issue fields are not being escaped in doExport(). 2014-05-21 14:52:43 +09:00
Joel Meyer-Hamme
980c68b2b0 Expose latex command tool chain
Dvi isn't compatible with quite a few Latex packages. I have been trying to include chemical formulas with the chemfig package. Exposing the tool chain to plugins would be very useful. For the record, I'm currently using:

´´´python
latexCmds = [
    ["pdflatex", "-interaction=nonstopmode", "tmp.tex"],
    ["pdflatex", "-interaction=nonstopmode", "tmp.tex"],
    ["pdfcrop", "tmp.pdf"],
    ["convert", "-density", "300", "tmp-crop.pdf", "tmp.png"]
]
´´´
2014-05-20 19:08:54 +02:00
Damien Elmes
bbc8f75d70 make sure OR clause doesn't allow suspended cards in filtered deck
fixes http://help.ankisrs.net/discussions/ankidesktop/6673-filter-decks-can-unsuspend-cards
2014-05-03 12:07:18 +09:00
Damien Elmes
00dd291819 bump version 2014-04-23 08:16:45 +09:00
Damien Elmes
fa57fd3ad9 don't fail if \n in cloze 2014-04-21 14:50:18 +09:00
Damien Elmes
89c9af7445 use default sample rate instead of forcing 44100
The 64 bit built of portaudio on OSX seems to generate a wav
file that says it's 44100 but is actually the default rate, leading
to samples playing too fast or slow.
2014-04-18 04:17:05 +09:00
Damien Elmes
5d1aeb4dde bump version 2014-04-16 01:36:43 +09:00
Damien Elmes
694682d964 fix multiple cloze tags contained on one line
inner regex was capturing multiple clozes. fixes
https://anki.tenderapp.com/discussions/ankidesktop/6599-empty-cards-3533-cards-to-delete
2014-04-16 01:15:59 +09:00
Julien Baley
fac360d744 Allows smoother transition from old modifier syntax {{a🅱️fld}} to new one {{a(b):fld}} 2014-04-14 17:21:28 +01:00
Damien Elmes
962c814d5b bump version again, as new cert was missing an intermediate 2014-04-12 15:54:25 +09:00
Damien Elmes
c529a77686 bundle new and old cert
fails to validate on some systems even when httplib2's default
certs are bundled, so we need this not just for SNI
2014-04-11 01:13:55 +09:00
Damien Elmes
01636dff00 bump ver 2014-04-10 15:00:32 +09:00
Damien Elmes
fcc4df821f disable explicit ca_certs
may have added this to support beta.ankiweb.net as python doesn't
support SNI, but it prevents changing cert
2014-04-10 14:02:35 +09:00
Damien Elmes
d56cf3c6b0 add fix for AD issue 2014-04-01 13:13:59 +09:00
Damien Elmes
5eed6679fd Merge pull request #69 from julienbaley/chained_mod_params
Adding support for parameters in modifiers
2014-03-14 13:53:06 +09:00
Damien Elmes
b1cb07077a include buried in suspended count 2014-03-14 11:56:15 +09:00
Julien Baley
90fd1c00c8 Adding support for parameters in modifiers: {{mod1(param1,param2):mod2(param3):field}} 2014-03-12 14:21:23 +00:00
Damien Elmes
7dcf0d8ead fix tag strip on export
we must make sure to include spaces around tags or they can't be
found
2014-03-09 10:44:52 +09:00
Damien Elmes
de8adfecff disallow \r and \n in media filenames 2014-03-06 09:00:47 +09:00
Damien Elmes
980c9d7305 Merge branch 'master' of https://github.com/hssm/anki 2014-02-21 13:38:02 +09:00
Houssam Salem
8b443e80ef Remove leech tag on undo if it was added during that review (#973). 2014-02-20 16:51:08 +11:00
Damien Elmes
4c65c594dd don't force cloze to start
This allows {{kana:cloze:Text}} to work. May allow users to
shoot themselves it the foot - will see how it goes in the wild
and reconsider if necessary
2014-02-19 21:21:11 +09:00
Julien Baley
777a3b8ec3 Fixes behaviour for {{type:cloze:Field}} 2014-02-19 10:09:48 +00:00
Damien Elmes
6da0e688b3 Merge pull request #64 from julienbaley/chained_mods
Chained mods
2014-02-19 17:59:57 +09:00
Julien Baley
fb1a255358 Chained modifiers are processed from innermost to outermost (i.e. rtl). Except cloze/type. 2014-02-19 07:32:04 +00:00
Julien Baley
7e3597fb8e Adding support for chained modifiers. One can now write e.g. {{cloze:text:Field}} or {{text:cloze:Field}}, it's order independent. 2014-02-18 17:24:28 +00:00
Damien Elmes
8c22e747bb Merge pull request #63 from hssm/986
Remove marked/leech tags when exporting without sched data (#986)
2014-02-15 23:43:28 +09:00
Damien Elmes
23c557af6e Merge pull request #61 from hssm/browser-deck-collapse
Add expand/collapse support for decks in browser tree.
2014-02-15 23:43:00 +09:00
Houssam Salem
61ab1f5dfd Remove marked/leech tags when exporting without sched data (#986) 2014-02-15 23:04:59 +11:00
Houssam Salem
770c6e9c4a Add expand/collapse support for decks in browser tree.
The state is preserved in a new deck configuration key named 'browserCollapsed'.
2014-02-15 13:32:14 +11:00
Damien Elmes
3c36ddfb82 don't allow files named . or .. 2014-02-10 20:47:49 +09:00
Damien Elmes
3b20de173f preserve order in multi cloze type answer; bump version 2014-01-30 00:34:42 +09:00
Jussi Maatta
656698da83 Add A-factor to E-factor conversion to SuperMemo import.
The SuperMemo XML importer assumed that the A-factors used by
SuperMemo map 1-1 with E-factors (which correspond to Ease in
Anki). This resulted in too large E-factors for imported items.

This change adds an A-factor to E-factor conversion to the
importer.
2014-01-26 10:09:47 +02:00
Jussi Maatta
cdcd5eb651 Fix double newlines in items imported from SuperMemo.
When importing SuperMemo XML files, indicate to the BeautifulSoup
XML parser that the <br> tag is self-closing. This prevents it
from adding a matching </br> for every <br> tag. These extraneous
tags resulted in extra newlines in items imported from SuperMemo.

While we're at it, fix the same bug for a couple of other
self-closing HTML tags.
2014-01-26 10:06:53 +02:00