Regarding the -Tag:
We mostly use soft-hyphens in our projects. It’s like a hyphen, that only appears when the word is split up at the end of the line:
https://en.wikipedia.org/wiki/Soft_hyphen
It can be used as or in HTML.
But we use the (invisible) soft-hyphen character (0xAD or 173) so it also works in plain-text (or within the -tag) without being escaped. Here is one between a and b: ab
If you copy the “ab” and move the cursor using arrow-keys in a text editor, you will notice, that the cursor “hangs” and you need to press left-arrow twice.
We use post-processing for our HTML to apply those soft-hyphens for most long words, because most of our content is german and most of our editors don’t use the soft-hyphens.