X-Git-Url: https://git.njae.me.uk/?a=blobdiff_plain;f=text_prettify.py;fp=text_prettify.py;h=0000000000000000000000000000000000000000;hb=311b300d197536622980f7a837294d8245e326b4;hp=d3a6ffa6e008f8ab72c8764a5b33d03bb00b81a0;hpb=d7224fba67d9f99c01bd78ef669c96189686e4c2;p=cipher-tools.git diff --git a/text_prettify.py b/text_prettify.py deleted file mode 100644 index d3a6ffa..0000000 --- a/text_prettify.py +++ /dev/null @@ -1,60 +0,0 @@ -from segment import segment -from utilities import cat, sanitise -import string - - -def tpack(text, width=100): - """Pack a list of words into lines, so long as each line (including - intervening spaces) is no longer than _width_""" - lines = [text[0]] - for word in text[1:]: - if len(lines[-1]) + 1 + len(word) <= width: - lines[-1] += (' ' + word) - else: - lines += [word] - return lines - - -def depunctuate_character(c): - """Record the punctuation of a character""" - if c in string.ascii_uppercase: - return 'UPPER' - elif c in string.ascii_lowercase: - return 'LOWER' - else: - return c - - -def depunctuate(text): - """Record the punctuation of a string, so it can be applied to a converted - version of the string. - - For example, - punct = depunctuate(ciphertext) - plaintext = decipher(sanitise(ciphertext)) - readable_plaintext = repunctuate(plaintext, punct) - """ - return [depunctuate_character(c) for c in text] - - -def repunctuate_character(letters, punctuation): - """Apply the recorded punctuation to a character. The letters must be - an iterator of base characters.""" - if punctuation == 'UPPER': - return next(letters).upper() - elif punctuation == 'LOWER': - return next(letters).lower() - else: - return punctuation - - -def repunctuate(text, punctuation): - """Apply the recored punctuation to a sanitised string. - - For example, - punct = depunctuate(ciphertext) - plaintext = decipher(sanitise(ciphertext)) - readable_plaintext = repunctuate(plaintext, punct) - """ - letters = iter(sanitise(text)) - return cat(repunctuate_character(letters, p) for p in punctuation)