More specifically, create a dedicated `BlameAnnotator` class, encapsulating the logic for building blame annotations. This makes it easier to maintain state as the annotation is progressing. Here, we output only once the revision number in a block of consecutive lines belonging to the same revision.
The Javascript features are:
- hilight all lines belonging to the same revision, when the mouse hovers on the blame column
- clicking on the blame column toggles the display of the full changeset text