diff --git a/autokara/autosyl/assUtils.py b/autokara/autosyl/assUtils.py index 0362147b20ee298fdd7289d1e0047fe2d65cf5f4..32521d7fc4dca56939ac929e6cec8f74b06823c7 100644 --- a/autokara/autosyl/assUtils.py +++ b/autokara/autosyl/assUtils.py @@ -32,25 +32,26 @@ def getSyls(ass_file): LINES_KARA = re.compile(r"(?:Comment|Dialogue):.*(\d+:\d{2}:\d{2}.\d{2}),(\d+:\d{2}:\d{2}.\d{2}),([^,]*),([^,]*),(\d+),(\d+),(\d+),(?:(?!fx|template|code)\w)*,(.*)\n") RGX_TAGS = re.compile(r"\{\\k(\d+)\}([^\{\n\r]*)") for line in LINES_KARA.findall(CONTENT): - syl_line = [] - lastTime = dateToTime(line[0]) - syl_line_index = 0 - for couple in RGX_TAGS.findall(line[7]): - if couple[1] != '' and not strip_regex.sub('', couple[1]) == '': - syl_line.append([lastTime, couple[1], int(couple[0])]) - syl_line_index += 1 - if couple[1].isspace() and len(couple[1]) > 0 and syl_line_index > 0: - syl_line[syl_line_index - 1][1] += " " - lastTime += int(couple[0]) - syl_line.append([lastTime, '', 0]) - SYLS.append(syl_line) - line_meta = {} - line_meta['stylename'] = line[2] - line_meta['actor'] = line[3] - line_meta['margin_l'] = int(line[4]) - line_meta['margin_r'] = int(line[5]) - line_meta['margin_v'] = int(line[6]) - META.append(line_meta) + if line[7].strip() != "": + syl_line = [] + lastTime = dateToTime(line[0]) + syl_line_index = 0 + for couple in RGX_TAGS.findall(line[7]): + if couple[1] != '' and not strip_regex.sub('', couple[1]) == '': + syl_line.append([lastTime, couple[1], int(couple[0])]) + syl_line_index += 1 + if couple[1].isspace() and len(couple[1]) > 0 and syl_line_index > 0: + syl_line[syl_line_index - 1][1] += " " + lastTime += int(couple[0]) + syl_line.append([lastTime, '', 0]) + SYLS.append(syl_line) + line_meta = {} + line_meta['stylename'] = line[2] + line_meta['actor'] = line[3] + line_meta['margin_l'] = int(line[4]) + line_meta['margin_r'] = int(line[5]) + line_meta['margin_v'] = int(line[6]) + META.append(line_meta) return SYLS, META