diff options
Diffstat (limited to 'monkey/edits.py')
-rw-r--r-- | monkey/edits.py | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/monkey/edits.py b/monkey/edits.py index ad595b6..a920bf5 100644 --- a/monkey/edits.py +++ b/monkey/edits.py @@ -146,12 +146,14 @@ def get_paths(root, path=None, done=None): # edits. Return a dictionary of edits and their frequencies, and also # submissions and queries in [traces]. def get_edits_from_traces(traces): - # Helper function to remove trailing punctuation from lines. This is a - # rather ugly performance-boosting hack. + # Helper function to remove trailing punctuation from lines. def remove_punct(line): - if line and line[-1].type in ('COMMA', 'PERIOD', 'SEMI', 'FROM'): - return line[:-1] - return line + i = len(line) + while i > 0: + if line[i-1].type not in ('COMMA', 'PERIOD', 'SEMI'): + break + i -= 1 + return line[:i] # Return values: counts for observed edits, lines, submissions and queries. edits = collections.Counter() |