shared css

This commit is contained in:
Damien Elmes 2012-05-06 20:04:28 +09:00
parent dd45746a41
commit 1a80ffa8a2
6 changed files with 32 additions and 15 deletions

View file

@ -115,7 +115,7 @@ lapses=?, left=?, odue=?, odid=?, did=? where id = ?""",
return self.css() + self._getQA()['a']
def css(self):
return "<style>%s</style>" % self.template()['css']
return "<style>%s</style>" % self.model()['css']
def _getQA(self, reload=False):
if not self._qa or reload:

View file

@ -42,10 +42,10 @@ MODEL_STD = 0
MODEL_CLOZE = 1
# deck schema & syncing vars
SCHEMA_VERSION = 5
SCHEMA_VERSION = 6
SYNC_ZIP_SIZE = int(2.5*1024*1024)
SYNC_URL = os.environ.get("SYNC_URL") or "https://beta.ankiweb.net/sync/"
SYNC_VER = 2
SYNC_VER = 3
# Labels
##########################################################################

View file

@ -29,6 +29,15 @@ defaultModel = {
'usn': 0,
'vers': [],
'type': MODEL_STD,
'css': """\
.card {
font-family: arial;
font-size: 20px;
text-align: center;
color: black;
background-color: white;
}
"""
}
defaultField = {
@ -50,15 +59,6 @@ defaultTemplate = {
'qfmt': "",
'afmt': "",
'did': None,
'css': """\
.card {
font-family: arial;
font-size: 20px;
text-align: center;
color: black;
background-color: white;
}
"""
}
class ModelManager(object):

View file

@ -40,7 +40,7 @@ def addClozeModel(col):
mm.addField(m, fm)
t = mm.newTemplate(_("Cloze"))
fmt = "{{cloze:%s}}" % txt
t['css'] += """
m['css'] += """
.cloze {
font-weight: bold;
color: blue;

View file

@ -95,6 +95,17 @@ def _upgrade(col, ver):
if ver < 5:
col.db.execute("update cards set odue = 0 where queue = 2")
col.db.execute("update col set ver = 5")
if ver < 6:
col.modSchema()
import anki.models
for m in col.models.all():
m['css'] = anki.models.defaultModel['css']
for t in m['tmpls']:
m['css'] += "\n" + t['css'].replace(
".card ", ".card%d "%(t['ord']+1))
del t['css']
col.models.save(m)
col.db.execute("update col set ver = 6")
def _upgradeClozeModel(col, m):
m['type'] = MODEL_CLOZE

View file

@ -492,8 +492,14 @@ order by ordinal""", mid)):
bg = "white"
else:
bg = t['bg']
t['css'] = t['css'].replace("white", bg).replace(
"center", ("center", "left", "right")[t['align']])
css = ""
if t['bg'] != "white":
css = "background-color: %s;" % t['bg']
if t['align']:
css += "text-align: %s" % ("left", "right")[t['align']-1]
if css:
css = '\n.card%d { %s }' % (t['ord']+1, css)
m['css'] += css
# remove obsolete
del t['bg']
del t['align']