From ea9ad139329738d8e6cceefdcb344d5211143a7a Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Sat, 16 May 2009 04:07:54 +0900 Subject: [PATCH] add support for alternative media dir and disabling media copy on export --- anki/deck.py | 8 ++++++-- anki/exporting.py | 2 ++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/anki/deck.py b/anki/deck.py index 8c53c46d8..0bfe13713 100644 --- a/anki/deck.py +++ b/anki/deck.py @@ -128,6 +128,7 @@ class Deck(object): def _initVars(self): self.tmpMediaDir = None + self.forceMediaDir = None self.lastTags = u"" self.lastLoaded = time.time() self.undoEnabled = False @@ -2028,11 +2029,14 @@ where key = :key""", key=key, value=value): "Return the media directory if exists. None if couldn't create." if self.path: # file-backed - dir = re.sub("(?i)\.(anki)$", ".media", self.path) + if self.forceMediaDir: + dir = self.forceMediaDir + else: + dir = re.sub("(?i)\.(anki)$", ".media", self.path) if create == None: # don't create, but return dir return dir - if not os.path.exists(dir) and create: + if dir and not os.path.exists(dir) and create: try: os.mkdir(dir) # change to the current dir diff --git a/anki/exporting.py b/anki/exporting.py index 6720c2b5d..691541253 100644 --- a/anki/exporting.py +++ b/anki/exporting.py @@ -58,6 +58,7 @@ class AnkiExporter(Exporter): def __init__(self, deck): Exporter.__init__(self, deck) self.includeSchedulingInfo = False + self.includeMedia = True def exportInto(self, path): n = 3 @@ -68,6 +69,7 @@ class AnkiExporter(Exporter): self.newDeck = DeckStorage.Deck(path) client = SyncClient(self.deck) server = SyncServer(self.newDeck) + server._mediaSupported = self.includeMedia client.setServer(server) client.localTime = self.deck.modified client.remoteTime = 0