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
Jussi Maatta
6c6be1144b
Remove unused function from SuperMemo XML importer.
2014-01-26 10:01:06 +02:00
Damien Elmes
5f9afe5296
bump version
2014-01-22 17:13:33 +09:00
Damien Elmes
97a2b81997
fix 'add reverse' template for non-english languages
2014-01-22 02:57:44 +09:00
Damien Elmes
14a2321408
increase custom study size limit as well
2014-01-14 15:45:12 +09:00
Damien Elmes
96eeacbf69
increase filtered deck size limit to 99999
2014-01-14 15:12:45 +09:00
Damien Elmes
44b83d9bd8
switch over to per-day sibling burying
2014-01-14 14:18:42 +09:00
Damien Elmes
f0525a76fb
if we renamed any files to nfc, need to rerun check
2013-12-13 20:24:39 +09:00
Damien Elmes
ab81227dac
bump version
2013-12-10 17:25:40 +09:00
Damien Elmes
54e2d42fa6
off by one in zip count comparison
2013-12-09 17:37:43 +09:00
Damien Elmes
4e900b4608
pass client media count to server
2013-12-09 17:36:17 +09:00
Damien Elmes
ba589ac8cc
need to compare mediaList with nfd on macs
...
otherwise the server says we have file x and local code
doesn't notice it already exists
2013-12-04 11:43:57 +09:00
Damien Elmes
636d70ab16
make sure we reopen log after export
2013-12-02 23:57:56 +09:00
Damien Elmes
742a520954
make sure to close debug log when closing collection
2013-12-01 01:44:47 +09:00
Damien Elmes
1c35a590e3
fix regression in unused media check
2013-11-29 02:07:31 +09:00
Damien Elmes
0372f30220
adjust media regexp to not trigger on mce_src
...
otherwise pasting the following will cause an error:
<img src="..." mce_src="/foo.png">
2013-11-27 19:24:41 +09:00
Damien Elmes
19b1446758
automatically remove from filtered deck before reschedule
...
commit 79ed57a445
prevented reschedule
on cards in a filtered deck, but it is more user friendly to
automatically move back to the home deck instead. we also don't need
to removeLrn() for review cards, because we're updating type+queue+odue
ourselves
2013-11-26 03:23:03 +09:00
Damien Elmes
99d82c1f2d
fix hasIllegal check, and associated unit test
2013-11-26 03:19:11 +09:00
Damien Elmes
ae8074ec01
make sure we reset odue when rescheduling as new
...
if we fail to do this for a relearning card, it sticks around
until it causes problems later
2013-11-17 16:03:58 +09:00
Damien Elmes
4bf63b6ad0
bump version
2013-11-14 14:41:31 +09:00
Damien Elmes
f6b9dadf13
catch invalid file encodings in media check & sync
2013-11-13 17:19:25 +09:00
Damien Elmes
75f87201a2
rotate log file when it hits 10MB
2013-11-13 17:00:20 +09:00
Damien Elmes
9334bc37fa
log media sanity
2013-11-13 16:54:25 +09:00
Damien Elmes
853faa90cd
don't bother logging sortCards()
2013-11-13 16:51:40 +09:00
Damien Elmes
c3300f733a
make sure we don't 'fix' req for cloze type
2013-11-13 16:49:49 +09:00
Damien Elmes
ef9157a8ee
don't open log for export or upgrade, only regular+sync
2013-11-13 16:48:22 +09:00
Damien Elmes
1df385db12
cards must be removed from filtered decks before they're buried
...
if not, removeLrn() resets due=odue and odue=0, leading to an invalid
delay calculation when they're later reviewed in the filtered deck
to fix this we'll need to make the same changes required to support
learning cards retaining their state when being emptied from a
filtered deck
2013-11-13 09:06:48 +09:00
Damien Elmes
d7e452de1f
fix note types with missing reqs
2013-11-13 08:33:54 +09:00
Damien Elmes
db77c8c80b
make sure simplejson always returns unicode
2013-11-10 04:57:15 +09:00
Damien Elmes
be81d282ac
catch temp folder issue when importing
2013-11-07 21:57:23 +09:00
Damien Elmes
5dfe95aa67
move debug logging into libanki
...
we want to be able to log the initial automatic sync, which
happens before the debug logging was set up in ankiqt
also skip the flush, as it should eventually get written
2013-11-04 23:04:27 +09:00
Damien Elmes
433f2b06f9
make sure suspended/buried cards are reset on export too
2013-11-03 16:12:43 +09:00
Damien Elmes
6d69c5e292
bump version
2013-11-01 18:19:30 +09:00
Damien Elmes
1f3a57104c
fix new cards not being shown in new order
2013-11-01 17:32:02 +09:00
Damien Elmes
32147b2d76
buggy i18n def
2013-11-01 03:09:20 +09:00
Damien Elmes
e5d7a69631
fix an issue where non-new cards were not reset on export
...
only happened for cards in a filtered deck
2013-10-30 23:28:52 +09:00
Damien Elmes
d8149910eb
don't terminate review abruptly when sibs removed from queue
2013-10-30 23:07:21 +09:00
Damien Elmes
3348b091d0
tweak logging
...
- log only sched getCard(), not all getCard calls
- don't log sched.today unless it's changed
2013-10-30 22:42:32 +09:00
Damien Elmes
5f0ef85044
fix reversed check in media
2013-10-30 21:10:25 +09:00
Damien Elmes
04ff4cc3fc
make 's' translatable in stats
...
thanks to "lumininous spice" for the heads up
2013-10-26 10:53:15 +09:00
Damien Elmes
330e991d7d
bump version
2013-10-23 18:58:00 +09:00
Damien Elmes
013f879d4e
support cid:<card id> search
2013-10-23 18:57:22 +09:00
Damien Elmes
82a54c780f
catch invalid temp folder and other tweaks
...
- tweak sync code so that a failure in loading the collection
won't leave the app with an unopen collection
- don't show corrupt collection message when the error is not
a db error
- catch the temp folder issue when loading the collection. i suspect
this was the issue that was causing some people to end up with
an open anki instance with no collection loaded
2013-10-22 15:30:53 +09:00
Damien Elmes
a9c9452271
bury card option
2013-10-22 14:28:45 +09:00
Damien Elmes
cf51f33c66
add separate is:buried and use with filtered deck
2013-10-22 14:20:31 +09:00
Damien Elmes
bab63de768
silly me, we were overriding retries in the aqt monkeypatch
2013-10-20 10:25:25 +09:00
Damien Elmes
9b27b06b68
fix retries count for unit tests
2013-10-19 12:53:18 +09:00
Damien Elmes
0a750005b9
do not bump usn/mod when automatically unburying
...
in the upcoming daily unburying, this could lead to a state
where the remote end unburies just at the start of sync
and clobbers more recent changes made on the local end
2013-10-19 12:22:17 +09:00
Damien Elmes
313fc7c9ef
more generous timeout
2013-10-18 14:22:03 +09:00
Damien Elmes
01832a9139
disable http retries
...
logs indicate client was retrying based on timeout and so on,
causing more problems
2013-10-18 14:21:47 +09:00
Damien Elmes
0fbc94c186
more logging tweaks
...
- disable in browser, note.cards()
- in getCard() we want the calling frame, not us
- log current day
- show card/note id in card info stat
2013-10-18 14:20:20 +09:00
Damien Elmes
9b2109b85a
Merge branch 'master' of github.com:dae/anki
2013-10-18 11:54:25 +09:00
Damien Elmes
b99533a5ad
add logging to some scheduling and syncing code
2013-10-18 11:52:21 +09:00
Damien Elmes
9baa3e197a
add option to disable burying of reviews
2013-10-18 10:38:29 +09:00
Damien Elmes
da1672d42f
don't rename/unlink files for non-local check
2013-10-17 17:59:26 +09:00
Damien Elmes
6368a0ab18
Merge pull request #44 from sobjornstad/master
...
Don't display "If you studied every day" in stats if you studied every day
2013-10-16 03:26:24 -07:00
Damien Elmes
686c0077ea
bump version
2013-10-16 12:11:39 +09:00
Damien Elmes
6be7503543
normalize to nfc when sending media in sync
2013-10-16 08:37:34 +09:00
Damien Elmes
e9ab9128c8
we can remove graves when uploading and save space
2013-10-11 12:21:59 +09:00
Soren I. Bjornstad
6c07a58c2a
display "if you studied every day" only when appropriate
...
(If you in fact did study every day during the period shown, it looks
silly.)
2013-10-10 10:42:58 -05:00
Damien Elmes
8d7edcb2bb
include a session key when syncing
2013-10-10 22:59:34 +09:00
Damien Elmes
b42c0c725b
Revert "tolerate a str arg to writeData()"
...
This reverts commit 2d4e88afbd
.
On second thought, this change is likely to mask the error in most cases, and
we want add-on authors to update their add-ons anyway as they would not be
handling non-latin text in 2.0.12.
2013-10-10 11:08:39 +09:00
Damien Elmes
2d4e88afbd
tolerate a str arg to writeData()
2013-10-09 13:13:48 +09:00
Damien Elmes
bc96a00fd2
we need to clear out std models on export or we end up renaming
...
and the rename affects the exporting deck as well
2013-10-06 09:45:38 +09:00
Damien Elmes
7aee582a58
loop should exit early, and allNames() doesn't need modification
2013-10-06 09:26:43 +09:00
Damien Elmes
6c304ebe2f
to normalize unicode we need to have unicode
2013-10-06 04:53:11 +09:00
Damien Elmes
3ed2861115
include platform in cv
2013-10-06 04:37:39 +09:00
Damien Elmes
e3a102ef92
bump version
2013-10-05 23:53:27 +09:00
Damien Elmes
f1837e7e0a
when ensuring model unique, check id not obj
...
this should fix an issue where we were attaching a suffix to non-duplicate
names on sync
2013-10-05 23:53:09 +09:00
Damien Elmes
f23392b6a3
Merge pull request #35 from hssm/compile-regex
...
Pre-compile HTML-stripping regexes.
2013-10-04 13:39:44 -07:00
Damien Elmes
9524dbed96
give note types unique name when adding/importing ( #325 )
2013-10-04 09:00:08 +09:00
Damien Elmes
f29a04ae29
bump sync ver to 7 and change meta return value
...
- /sync/meta now returns a dictionary
- it includes the following extra fields
- msg: if non-empty, show this message at the end of the sync
- cont: if false, show above message and abort sync
- uname: the user's email address, so it can be stored by the local client to
show users who have forgotten which email address they used. in the future
this will be saved only when logging in, so do a conditional access on it
2013-10-04 06:09:28 +09:00
Damien Elmes
b55761190f
option to tag notes in find dupes function
2013-10-04 00:07:11 +09:00
Damien Elmes
33403fd890
include client type in cv
2013-10-02 04:09:16 +09:00
Damien Elmes
621ba0e1ac
include client version in /sync/meta
2013-10-02 03:53:10 +09:00
Damien Elmes
7725a93d24
don't say tomorrow for burying until we introduce the new change
2013-10-02 03:50:59 +09:00
Damien Elmes
3d33436a86
move version number into libanki
2013-10-02 03:50:19 +09:00
Damien Elmes
318b4e371f
bump sync ver to 6 (see note)
...
when porting this to other platforms, please ensure you have ported all
changes in sched.py after 2.0.12 first
2013-09-27 17:14:23 +09:00
Damien Elmes
8277233827
remove invalid line
2013-09-27 17:13:26 +09:00
Damien Elmes
79ed57a445
reschedule should not operate on filtered/suspended/buried
...
this should fix some issues with rescheduled cards ending up in an invalid
state
2013-09-27 13:30:39 +09:00
Damien Elmes
d36655a8c7
use unicode when recording
2013-09-23 15:13:46 +09:00
Damien Elmes
d348179ad4
add internal option to disable burying on answer
2013-09-20 19:39:19 +09:00
Damien Elmes
0d1d8c5bf9
define standard encoding for unicode ( #893 )
...
- always store media references in fields in NFC form
- always encode filenames on disk in NFC form on machines other than macs
- use relevant encoding when placing files in the media folder during syncs
and apkg imports as well
- rename 'unused media' back to 'check media'
- check media can now automatically change media references and filename
encodings to the correct format
2013-09-20 19:28:44 +09:00
Damien Elmes
4d42282b7b
strip html in duplicate check ( #906 )
2013-09-20 17:25:24 +09:00
Damien Elmes
cc7ddca7d7
Merge branch 'new_branch_name'
2013-09-17 18:35:16 +09:00
Damien Elmes
fe0ed4dac9
fix replacement of other clozes
...
https://anki.tenderapp.com/discussions/ankidesktop/2904-cloze-deletion-behaves-oddly-instead-of-giving-error-when-single-colon-is-used?mail_type=queue
2013-09-16 13:28:19 +09:00
Damien Elmes
bd8707f54c
support import of renamed .apkg files
2013-09-11 15:56:59 +09:00
Damien Elmes
aa2b31a82b
honor home deck's new card bury setting
2013-09-11 15:43:26 +09:00
Damien Elmes
c1827e0561
unbury from overview shouldn't unbury all decks
2013-09-11 15:33:27 +09:00
Damien Elmes
511bde0396
change misleading note import msg
2013-09-11 15:30:31 +09:00
Damien Elmes
0bef1d8530
unbury on open/close and make sure we set usn when unburying
2013-09-04 04:38:00 +09:00
Damien Elmes
492ed33f4d
add relative overdueness option
2013-09-04 04:17:43 +09:00
Damien Elmes
a2463eb67d
unbury on open for now
2013-09-04 02:31:10 +09:00
Damien Elmes
0c2a1fe19e
report more info when note type changes prevent an import
2013-09-04 02:19:15 +09:00
Damien Elmes
e73bfa9d02
ignore qfmt/afmt when checking if note types are the same
2013-09-04 02:18:53 +09:00
Damien Elmes
4fe76257f1
about about and available languages
2013-08-22 15:54:33 +09:00
Damien Elmes
afde11671e
rework sibling handling and change bury semantics
...
First, burying changes:
- unburying now happens on day rollover, or when manually unburying from
overview screen
- burying is not performed when returning to deck list, or when closing
collection, so burying now must mark cards as modified to ensure sync
consistent
- because they're no longer temporary to a session, make sure we exclude them
in filtered decks in -is:suspended
Sibling spacing changes:
- core behaviour now based on automatically burying related cards when we
answer a card
- applies to reviews, optionally to new cards, and never to cards in the
learning queue (partly because we can't suspend/bury cards in that queue at
the moment)
- this means spacing works consistently in filtered decks now, works on
reviews even when user is late to review, and provides better separation of
new cards
- if burying new cards disabled, we just discard them from the current queue.
an option to set due=ord*space+due would be nicer, but would require
changing a lot of code and is more appropriate for a future major version
change. discarding from queue suffers from the same issue as the new card
cycling in that queue rebuilds may cause cards to be shown close together,
so the default burying behaviour is preferable
- refer to them as 'related cards' rather than 'siblings'
These changes don't require any changes to the database format, so they
should hopefully coexist with older clients without issue.
2013-08-10 15:56:26 +09:00
Damien Elmes
8a4fbcc430
unbury in deckbrowser, not deckduelist() ( #946 )
2013-08-08 15:19:57 +09:00
Damien Elmes
914f56dbc0
allow updates to existing notes in .apkg import
2013-08-08 13:01:47 +09:00
Damien Elmes
988fc102d8
remove redundant regex in latex code
2013-07-19 19:42:20 +09:00
Damien Elmes
adf4f4687c
allow includegraphics in latex
2013-07-18 19:04:38 +09:00
Damien Elmes
26a3c30365
escape + in deck names
2013-07-18 18:44:40 +09:00
Damien Elmes
c0454fe3e7
reduce max media count to 100 per chunk
2013-07-12 08:44:27 +09:00
Damien Elmes
2ba8c41fec
replace nbsp with standard space when stripping html
...
fixes https://anki.tenderapp.com/discussions/ankidesktop/1952-duplicate-not-detected-on-paste
2013-07-11 21:23:13 +09:00
Damien Elmes
0fa9b75af5
fix importing with schema change logic
...
the previous fix for #612 was broken, and led to notes with altered schemas
being imported with the incorrect schema
2013-07-11 18:47:49 +09:00
Damien Elmes
5ea074ed2a
make sure we always show 3 buttons for cards in initial learning ( #928 )
...
even if there's only a single learning step, the easy bonus means we need to
show both buttons
2013-07-11 17:59:44 +09:00
Damien Elmes
a538e29480
refactor illegal char handling and file adding for media
...
- add writeData() so we can add files to media folder without having to
save them in an intermediate folder first
- we were stripping or checking for illegal filename characters in
multiple places; factor those checks out into separate routines
- add * to invalid char list, and disallow both forward and backslash
- remove size checks in syncAdd(); is handled server-side
2013-07-11 15:33:24 +09:00
Damien Elmes
a3190d52f1
make sure we include 'px' in stats (thanks to steveaw)
2013-07-09 08:14:13 +09:00
Damien Elmes
2d4b79b490
keep scanning csv until we find non-zero field count ( #920 )
2013-07-03 04:23:33 +09:00
Damien Elmes
56143c346a
fix graph regression caused by div changes ( #913 )
2013-07-03 04:06:44 +09:00
Houssam Salem
0ce829b6b3
Pre-compile HTML-stripping regexes.
2013-06-23 18:37:39 +10:00
Damien Elmes
f2d538d546
catch errors trying to determine fs type
2013-06-14 13:15:05 +09:00