diff --git a/ptulsconv/__init__.py b/ptulsconv/__init__.py
index fc5dc5d..1818d79 100644
--- a/ptulsconv/__init__.py
+++ b/ptulsconv/__init__.py
@@ -1,5 +1,5 @@
from ptulsconv.docparser.ptuls_grammar import protools_text_export_grammar
-__version__ = '0.8.3'
+__version__ = '0.8.4'
__author__ = 'Jamie Hardt'
__license__ = 'MIT'
diff --git a/ptulsconv/__main__.py b/ptulsconv/__main__.py
index 996981b..6d0e582 100644
--- a/ptulsconv/__main__.py
+++ b/ptulsconv/__main__.py
@@ -17,8 +17,9 @@ from ptulsconv.reporting import print_status_style, print_banner_style, print_se
def dump_field_map(output=sys.stdout):
from ptulsconv.docparser.tag_mapping import TagMapping
- from ptulsconv.docparser.adr_entity import ADRLine
-
+ from ptulsconv.docparser.adr_entity import ADRLine, GenericEvent
+
+ TagMapping.print_rules(GenericEvent, output=output)
TagMapping.print_rules(ADRLine, output=output)
diff --git a/ptulsconv/pdf/line_count.py b/ptulsconv/pdf/line_count.py
index d3f28a3..8c5bb60 100644
--- a/ptulsconv/pdf/line_count.py
+++ b/ptulsconv/pdf/line_count.py
@@ -148,7 +148,7 @@ def populate_columns(lines: List[ADRLine], columns, include_omitted, _page_size)
styles = list()
columns_widths = list()
- sorted_character_numbers = sorted(set([x.character_id for x in lines]),
+ sorted_character_numbers: List[str] = sorted(set([x.character_id for x in lines]),
key=lambda x: str(x))
# construct column styles
@@ -164,18 +164,21 @@ def populate_columns(lines: List[ADRLine], columns, include_omitted, _page_size)
for n in sorted_character_numbers:
char_records = [x for x in lines if x.character_id == n]
- row_data = list()
- row_data2 = list()
- for col in columns:
- row1_index = len(data)
- row2_index = row1_index + 1
- row_data.append(col['value_getter'](list(char_records)))
- row_data2.append(col['value_getter2'](list(char_records)))
- styles.extend([('TEXTCOLOR', (0, row2_index), (-1, row2_index), colors.red),
- ('LINEBELOW', (0, row2_index), (-1, row2_index), 0.5, colors.black)])
+ if len(char_records) > 0:
+ row_data = list()
+ row_data2 = list()
- data.append(row_data)
- data.append(row_data2)
+ for col in columns:
+ row1_index = len(data)
+ row2_index = row1_index + 1
+ row_data.append(col['value_getter'](list(char_records)))
+ row_data2.append(col['value_getter2'](list(char_records)))
+
+ styles.extend([('TEXTCOLOR', (0, row2_index), (-1, row2_index), colors.red),
+ ('LINEBELOW', (0, row2_index), (-1, row2_index), 0.5, colors.black)])
+
+ data.append(row_data)
+ data.append(row_data2)
summary_row1 = list()
summary_row2 = list()
diff --git a/ptulsconv/pdf/summary_log.py b/ptulsconv/pdf/summary_log.py
index 5d3fc2f..11d1cd6 100644
--- a/ptulsconv/pdf/summary_log.py
+++ b/ptulsconv/pdf/summary_log.py
@@ -34,6 +34,9 @@ def build_aux_data_field(line: ADRLine):
elif line.adlib:
bg_color = 'purple'
tag_field += "%s " % (bg_color, fg_color, "ADLIB")
+ elif line.optional:
+ bg_color = 'green'
+ tag_field += "%s" % (bg_color, fg_color, "OPTIONAL")
entries.append(tag_field)
diff --git a/ptulsconv/pdf/talent_sides.py b/ptulsconv/pdf/talent_sides.py
index aed7933..cd969d7 100644
--- a/ptulsconv/pdf/talent_sides.py
+++ b/ptulsconv/pdf/talent_sides.py
@@ -24,7 +24,7 @@ def output_report(lines: List[ADRLine], tc_display_format: TimecodeFormat, font_
char_lines = [line for line in lines if not line.omitted and line.character_id == n]
character_name = char_lines[0].character_name
- sorted(char_lines, key=lambda line: line.start)
+ char_lines = sorted(char_lines, key=lambda line: line.start)
title = "%s (%s) %s ADR Script" % (char_lines[0].title, character_name, n)
filename = "%s_%s_%s_ADR Script.pdf" % (char_lines[0].title, n, character_name)