mirror of
https://github.com/ankitects/anki.git
synced 2025-09-19 22:42:25 -04:00
Merge branch 'master' of git://ichi2.net/libanki
This commit is contained in:
commit
19c05259b4
5 changed files with 19 additions and 15 deletions
|
@ -53,6 +53,6 @@ try:
|
|||
except ImportError:
|
||||
pass
|
||||
|
||||
version = "0.9.9.7.5"
|
||||
version = "0.9.9.7.6b"
|
||||
|
||||
from anki.deck import DeckStorage
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
# License: GNU GPL, version 3 or later; http://www.gnu.org/copyleft/gpl.html
|
||||
|
||||
import sys, os
|
||||
from subprocess import Popen, PIPE
|
||||
from anki.utils import findTag, stripHTML
|
||||
from anki.hooks import addHook
|
||||
|
||||
|
@ -45,7 +46,9 @@ class KakasiController(object):
|
|||
from errno import ENOENT
|
||||
raise OSError(ENOENT, 'Kakasi not available')
|
||||
# don't convert kana to hiragana
|
||||
(self.kin, self.kout) = os.popen2("kakasi -isjis -osjis -u -JH -p")
|
||||
p = Popen("kakasi -isjis -osjis -u -JH -p", shell=True,
|
||||
bufsize=-1, stdin=PIPE, stdout=PIPE)
|
||||
(self.kin, self.kout) = (p.stdin, p.stdout)
|
||||
self._open = True
|
||||
|
||||
def close(self):
|
||||
|
|
|
@ -260,7 +260,7 @@ from anki.importing.wcu import WCUImporter
|
|||
|
||||
Importers = (
|
||||
(_("Text separated by tabs or semicolons (*)"), TextImporter),
|
||||
(_("Anki 1.0 deck (*.anki)"), Anki10Importer),
|
||||
(_("Mnemosyne 1.x deck (*.mem)"), Mnemosyne10Importer),
|
||||
(_("CueCard deck (*.wcu)"), WCUImporter),
|
||||
(_("Anki Deck (*.anki)"), Anki10Importer),
|
||||
(_("Mnemosyne Deck (*.mem)"), Mnemosyne10Importer),
|
||||
(_("CueCard Deck (*.wcu)"), WCUImporter),
|
||||
)
|
||||
|
|
|
@ -53,12 +53,12 @@ queue = []
|
|||
manager = None
|
||||
|
||||
if sys.platform.startswith("win32"):
|
||||
externalPlayer = ["mplayer.exe", "-ao", "win32", "-really-quiet"]
|
||||
externalPlayer = ["mplayer.exe", "-ao", "win32", "-really-quiet", "-noconsolecontrols"]
|
||||
dir = os.path.dirname(os.path.abspath(sys.argv[0]))
|
||||
os.environ['PATH'] += ";" + dir
|
||||
os.environ['PATH'] += ";" + dir + "\\..\\dist" # for testing
|
||||
else:
|
||||
externalPlayer = ["mplayer", "-really-quiet"]
|
||||
externalPlayer = ["mplayer", "-really-quiet", "-noconsolecontrols"]
|
||||
|
||||
# don't show box on windows
|
||||
if sys.platform == "win32":
|
||||
|
@ -121,8 +121,11 @@ class QueueMonitor(threading.Thread):
|
|||
time.sleep(0.1)
|
||||
if queue:
|
||||
path = queue.pop(0)
|
||||
retryWait(subprocess.Popen(
|
||||
externalPlayer + [path], startupinfo=si))
|
||||
try:
|
||||
retryWait(subprocess.Popen(
|
||||
externalPlayer + [path], startupinfo=si))
|
||||
except OSError:
|
||||
raise Exception("Audio player not found")
|
||||
else:
|
||||
return
|
||||
|
||||
|
|
10
anki/tags.py
10
anki/tags.py
|
@ -51,10 +51,8 @@ def tagIds(s, tags):
|
|||
ids = {}
|
||||
s.statements("insert or ignore into tags (tag) values (:tag)",
|
||||
[{'tag': t} for t in tags])
|
||||
tagsD = dict(s.all("""
|
||||
select lower(tag), id from tags
|
||||
tagsD = dict([(x.lower(), y) for (x, y) in s.all("""
|
||||
select tag, id from tags
|
||||
where tag in (%s)""" % ",".join([
|
||||
"'%s'" % t.replace("'", "''") for t in tags])))
|
||||
for tag in tags:
|
||||
ids[tag.lower()] = tagsD[tag.lower()]
|
||||
return ids
|
||||
"'%s'" % t.replace("'", "''") for t in tags]))])
|
||||
return tagsD
|
||||
|
|
Loading…
Reference in a new issue