mirror of
https://github.com/ankitects/anki.git
synced 2025-09-20 15:02:21 -04:00
shorten some queue options
This commit is contained in:
parent
5914761ff8
commit
2d6e9cc186
3 changed files with 18 additions and 14 deletions
10
anki/deck.py
10
anki/deck.py
|
@ -24,9 +24,9 @@ defaultQconf = {
|
||||||
'newPerDay': 20,
|
'newPerDay': 20,
|
||||||
'newToday': [0, 0], # currentDay, count
|
'newToday': [0, 0], # currentDay, count
|
||||||
'newTodayOrder': NEW_TODAY_ORD,
|
'newTodayOrder': NEW_TODAY_ORD,
|
||||||
'newCardOrder': 1,
|
'newOrder': 1,
|
||||||
'newCardSpacing': NEW_CARDS_DISTRIBUTE,
|
'newSpread': NEW_CARDS_DISTRIBUTE,
|
||||||
'revCardOrder': REV_CARDS_RANDOM,
|
'revOrder': REV_CARDS_RANDOM,
|
||||||
'collapseTime': 600,
|
'collapseTime': 600,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -217,7 +217,7 @@ qconf=?, conf=?, data=?""",
|
||||||
# notice any new tags
|
# notice any new tags
|
||||||
self.registerTags(fact.tags)
|
self.registerTags(fact.tags)
|
||||||
# if random mode, determine insertion point
|
# if random mode, determine insertion point
|
||||||
if self.qconf['newCardOrder'] == NEW_CARDS_RANDOM:
|
if self.qconf['newOrder'] == NEW_CARDS_RANDOM:
|
||||||
due = random.randrange(0, 1000000)
|
due = random.randrange(0, 1000000)
|
||||||
else:
|
else:
|
||||||
due = fact.id
|
due = fact.id
|
||||||
|
@ -270,7 +270,7 @@ select id from facts where id not in (select distinct fid from cards)""")
|
||||||
"Generate cards for templates if cards not empty. Return cards."
|
"Generate cards for templates if cards not empty. Return cards."
|
||||||
cards = []
|
cards = []
|
||||||
# if random mode, determine insertion point
|
# if random mode, determine insertion point
|
||||||
if self.qconf['newCardOrder'] == NEW_CARDS_RANDOM:
|
if self.qconf['newOrder'] == NEW_CARDS_RANDOM:
|
||||||
# if this fact has existing new cards, use their due time
|
# if this fact has existing new cards, use their due time
|
||||||
due = self.db.scalar(
|
due = self.db.scalar(
|
||||||
"select due from cards where fid = ? and queue = 0", fact.id)
|
"select due from cards where fid = ? and queue = 0", fact.id)
|
||||||
|
|
|
@ -175,7 +175,7 @@ queue = 0 %s order by due limit %d""" % (self._groupLimit('new'),
|
||||||
return id
|
return id
|
||||||
|
|
||||||
def _updateNewCardRatio(self):
|
def _updateNewCardRatio(self):
|
||||||
if self.deck.qconf['newCardSpacing'] == NEW_CARDS_DISTRIBUTE:
|
if self.deck.qconf['newSpread'] == NEW_CARDS_DISTRIBUTE:
|
||||||
if self.newCount:
|
if self.newCount:
|
||||||
self.newCardModulus = (
|
self.newCardModulus = (
|
||||||
(self.newCount + self.revCount) / self.newCount)
|
(self.newCount + self.revCount) / self.newCount)
|
||||||
|
@ -189,9 +189,9 @@ queue = 0 %s order by due limit %d""" % (self._groupLimit('new'),
|
||||||
"True if it's time to display a new card when distributing."
|
"True if it's time to display a new card when distributing."
|
||||||
if not self.newCount:
|
if not self.newCount:
|
||||||
return False
|
return False
|
||||||
if self.deck.qconf['newCardSpacing'] == NEW_CARDS_LAST:
|
if self.deck.qconf['newSpread'] == NEW_CARDS_LAST:
|
||||||
return False
|
return False
|
||||||
elif self.deck.qconf['newCardSpacing'] == NEW_CARDS_FIRST:
|
elif self.deck.qconf['newSpread'] == NEW_CARDS_FIRST:
|
||||||
return True
|
return True
|
||||||
elif self.newCardModulus:
|
elif self.newCardModulus:
|
||||||
return self.deck.reps and self.deck.reps % self.newCardModulus == 0
|
return self.deck.reps and self.deck.reps % self.newCardModulus == 0
|
||||||
|
@ -326,7 +326,7 @@ select id from cards where
|
||||||
queue = 2 %s and due <= :lim order by %s limit %d""" % (
|
queue = 2 %s and due <= :lim order by %s limit %d""" % (
|
||||||
self._groupLimit("rev"), self._revOrder(), self.queueLimit),
|
self._groupLimit("rev"), self._revOrder(), self.queueLimit),
|
||||||
lim=self.today)
|
lim=self.today)
|
||||||
if self.deck.qconf['revCardOrder'] == REV_CARDS_RANDOM:
|
if self.deck.qconf['revOrder'] == REV_CARDS_RANDOM:
|
||||||
random.shuffle(self.revQueue)
|
random.shuffle(self.revQueue)
|
||||||
else:
|
else:
|
||||||
self.revQueue.reverse()
|
self.revQueue.reverse()
|
||||||
|
@ -344,7 +344,7 @@ queue = 2 %s and due <= :lim order by %s limit %d""" % (
|
||||||
def _revOrder(self):
|
def _revOrder(self):
|
||||||
return ("ivl desc",
|
return ("ivl desc",
|
||||||
"ivl",
|
"ivl",
|
||||||
"due")[self.deck.qconf['revCardOrder']]
|
"due")[self.deck.qconf['revOrder']]
|
||||||
|
|
||||||
# Answering a review card
|
# Answering a review card
|
||||||
##########################################################################
|
##########################################################################
|
||||||
|
@ -651,7 +651,7 @@ queue = 2 %s and due <= :lim order by %s limit %d""" % (
|
||||||
def updateDynamicIndices(self):
|
def updateDynamicIndices(self):
|
||||||
# determine required columns
|
# determine required columns
|
||||||
required = []
|
required = []
|
||||||
if self.deck.qconf['revCardOrder'] in (
|
if self.deck.qconf['revOrder'] in (
|
||||||
REV_CARDS_OLD_FIRST, REV_CARDS_NEW_FIRST):
|
REV_CARDS_OLD_FIRST, REV_CARDS_NEW_FIRST):
|
||||||
required.append("interval")
|
required.append("interval")
|
||||||
cols = ["queue", "due", "gid"] + required
|
cols = ["queue", "due", "gid"] + required
|
||||||
|
@ -682,7 +682,7 @@ queue = 2 %s and due <= :lim order by %s limit %d""" % (
|
||||||
# sql2 += " where cardId in "+sids
|
# sql2 += " where cardId in "+sids
|
||||||
# self.db.execute(sql, now=time.time())
|
# self.db.execute(sql, now=time.time())
|
||||||
# self.db.execute(sql2)
|
# self.db.execute(sql2)
|
||||||
# if self.qconf['newCardOrder'] == NEW_CARDS_RANDOM:
|
# if self.qconf['newOrder'] == NEW_CARDS_RANDOM:
|
||||||
# # we need to re-randomize now
|
# # we need to re-randomize now
|
||||||
# self.randomizeNewCards(ids)
|
# self.randomizeNewCards(ids)
|
||||||
|
|
||||||
|
|
|
@ -375,6 +375,10 @@ insert or replace into deck select id, cast(created as int), :t,
|
||||||
for k in keys:
|
for k in keys:
|
||||||
db.execute("delete from deckVars where key=:k", k=k)
|
db.execute("delete from deckVars where key=:k", k=k)
|
||||||
# copy other settings, ignoring deck order as there's a new default
|
# copy other settings, ignoring deck order as there's a new default
|
||||||
|
qconf['newSpread'] = db.scalar(
|
||||||
|
"select newCardSpacing from decks")
|
||||||
|
qconf['newOrder'] = db.scalar(
|
||||||
|
"select newCardOrder from decks")
|
||||||
keys = ("newCardOrder", "newCardSpacing")
|
keys = ("newCardOrder", "newCardSpacing")
|
||||||
for k in keys:
|
for k in keys:
|
||||||
qconf[k] = db.scalar("select %s from decks" % k)
|
qconf[k] = db.scalar("select %s from decks" % k)
|
||||||
|
@ -387,9 +391,9 @@ insert or replace into deck select id, cast(created as int), :t,
|
||||||
for k in keys:
|
for k in keys:
|
||||||
conf[k] = db.scalar("select %s from decks" % k)
|
conf[k] = db.scalar("select %s from decks" % k)
|
||||||
# random and due options merged
|
# random and due options merged
|
||||||
qconf['revCardOrder'] = min(2, qconf['revCardOrder'])
|
qconf['revOrder'] = 2
|
||||||
# no reverse option anymore
|
# no reverse option anymore
|
||||||
qconf['newCardOrder'] = min(1, qconf['newCardOrder'])
|
qconf['newOrder'] = min(1, qconf['newOrder'])
|
||||||
# add any deck vars and save
|
# add any deck vars and save
|
||||||
dkeys = ("hexCache", "cssCache")
|
dkeys = ("hexCache", "cssCache")
|
||||||
for (k, v) in db.execute("select * from deckVars").fetchall():
|
for (k, v) in db.execute("select * from deckVars").fetchall():
|
||||||
|
|
Loading…
Reference in a new issue