Improve lookupBlockType()

For discussion first!
This PR fixes #1132 by testing for punctuation more precisely.

Unfortunately, there are not many tests according to the function lookupBlockType.

I'm pretty sure with the addition of the `(punctuation)`-tests.
But I'm not that sure with the additional `break`. However, it makes sense to add the `break` there - otherwise it can lead to a return value of e.g.
```
{
    isBlock: true,
    notJson: true,
    isDestAssign: true,
}
```

Both of the additions would fix 1132 for itself - both of them make sense.