class Word(str):

    def __format__(self, formatSpec):
        result = self
        if len(self) > 0:
            if formatSpec == 'cap':
                result = self[0].upper() + self[1:]
            else:
                result = super(str, self).__format__(formatSpec)
        return result

if __name__ == '__main__':
    text = """
  {adjective0:cap}ly {adjective1} Sir {name} went forth from {town}.
           He was not at all {adjective2} to {verb0},
                  O {adjective0} Sir {name}.
 He was not at all {adjective2} to be {verb1}ed in {adjective3} ways,
{adjective0:cap}, {adjective0}, {adjective0}, {adjective0} Sir {name}!
"""[1:]
    print(text.format(
        name='Nigel',
        adjective0=Word('bumbling'),
        adjective1=Word('clumsy'),
        adjective2=Word('foolish'),
        adjective3=Word('silly'),
        town=Word('Ellensburg'),
        verb0=Word('croak'),
        verb1=Word('smash'),
        ),
          end='')
