예제 #1
0
    def __init__(self, constants=ScansionConstants(), syllabifier=Syllabifier(),
                 optional_transform: bool = False, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.constants = constants
        self.remove_punct_map = StringUtils.remove_punctuation_dict()
        self.punctuation_substitutions = StringUtils.punctuation_for_spaces_dict()
        self.metrical_validator = MetricalValidator(constants)
        self.formatter = ScansionFormatter(constants)
        self.syllabifier = syllabifier
        self.optional_transform = optional_transform
        self.inverted_amphibrach_re = re.compile(
            r"{}\s*{}\s*{}".format(self.constants.STRESSED,
                                   self.constants.UNSTRESSED,
                                   self.constants.STRESSED))
        self.syllable_matcher = re.compile(r"[{}]".format(self.constants.VOWELS +
                                                          self.constants.ACCENTED_VOWELS +
                                                          self.constants.LIQUIDS +
                                                          self.constants.MUTES))
        self.SPONDAIC_PENTAMETER = self.constants.SPONDEE + self.constants.SPONDEE + \
                                   self.constants.STRESSED + self.constants.DACTYL + \
                                   self.constants.DACTYL + self.constants.OPTIONAL_ENDING

        self.DACTYLIC_PENTAMETER = self.constants.DACTYL + self.constants.DACTYL + \
                                   self.constants.STRESSED + self.constants.DACTYL + \
                                   self.constants.DACTYL + self.constants.OPTIONAL_ENDING
예제 #2
0
 def __init__(self, constants=ScansionConstants(), syllabifier=Syllabifier(), **kwargs):
     self.constants = constants
     self.remove_punct_map = StringUtils.remove_punctuation_dict()
     self.punctuation_substitutions = StringUtils.punctuation_for_spaces_dict()
     self.metrical_validator = MetricalValidator(constants)
     self.formatter = ScansionFormatter(constants)
     self.syllabifier = syllabifier
     self.inverted_amphibrach_re = re.compile(
         r"{}\s*{}\s*{}".format(self.constants.STRESSED,
                                self.constants.UNSTRESSED,
                                self.constants.STRESSED))
     self.syllable_matcher = re.compile(r"[{}]".format(self.constants.VOWELS +
                                                       self.constants.ACCENTED_VOWELS +
                                                       self.constants.LIQUIDS +
                                                       self.constants.MUTES))
예제 #3
0
 def __init__(self,
              constants=ScansionConstants(),
              syllabifier=Syllabifier()):
     self.constants = constants
     self.remove_punct_map = StringUtils.remove_punctuation_dict()
     self.punctuation_substitutions = StringUtils.punctuation_for_spaces_dict(
     )
     self.metrical_validator = MetricalValidator(constants)
     self.formatter = ScansionFormatter(constants)
     self.syllabifier = syllabifier
     self.inverted_amphibrach_re = re.compile(r"{}\s*{}\s*{}".format(
         self.constants.STRESSED, self.constants.UNSTRESSED,
         self.constants.STRESSED))
     self.syllable_matcher = re.compile(
         r"[{}]".format(self.constants.VOWELS +
                        self.constants.ACCENTED_VOWELS +
                        self.constants.LIQUIDS + self.constants.MUTES))