-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path__init__.py
48 lines (40 loc) · 1.26 KB
/
__init__.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import os
from .Dictionary import Dictionary
from .Sentences import Sentences
from .ConvertList import ConvertList
from .Word import Word
from .SentencePair import SentencePair
from aqt import mw
from aqt.utils import showInfo
from aqt.qt import *
from anki.importing import TextImporter
config = mw.addonManager.getConfig(__name__)
dirname = os.path.dirname(__file__)
importFile = os.path.join(dirname, './output.txt')
dictionary = Dictionary.setup()
sentences = Sentences.setup()
def generateFromList():
fileName = QFileDialog.getOpenFileName(mw, "Select Text File", "/", "Text files (*.txt)")[0]
# set
if fileName:
ConvertList.build(fileName, dictionary, sentences)
else:
return
# select target deck
deckName = config["deckName"]
did = mw.col.decks.id(deckName)
mw.col.decks.select(did)
m = mw.col.models.byName(config["noteType"])
deck = mw.col.decks.get(did)
deck['mid'] = m['id']
mw.col.decks.save(deck)
m['did'] = did
# import cards into selected deck
ti = TextImporter(mw.col, importFile)
ti.initMapping()
ti.run()
mw.reset()
showInfo("Imported Successfully!")
action = QPushButton("Generate from list", mw)
action.setMinimumSize(200, 20)
action.clicked.connect(generateFromList)