It is not uncommon for someone to use a script that lists previous nicks. However, most will put that information in the JOIN message instead of attached to the nick itself. Consider that some people change nicks frequently, so attaching it to the nick will make the nick very long. It's definitely better to have it on a join message.

The one thing I'm not sure of based on your description is whether or not you are referring to all previous nicks or only nicks currently connected from that host (as a way to see clones). Clone scanners can easily be found as there have been many written over the years. If you're talking about a clone scanner, then there usually won't be that many nicks on at a given time, so it might not be as bad if you're putting them all attached to the nick. Personally, I still wouldn't go that route because it will look really cluttered imo.

If you really want to get creative with either a previous nick or a clone scanner script, you can insert a symbol or combination of symbols (such as a [+]) before the nick on all messages and hotlink that so you can click on it to open a list of nicks. This lets you have instant access without searching for the JOIN message and it also doesn't take up much space. I haven't ever seen that done before, but it would probably work really well.

Regarding your question about $nick... you are correct that it cannot be changed. Nor should it. If you are editing (aka formatting or theming) your display, then you need to halt the default text and echo things the way you want them. Because you are using /echo, you can just echo $nick and the previous nicks in whatever format you want. You don't have to associate the previous nicks with $nick.

Keep in mind that these types of scripts aren't going to necessarily handle issues where someone's IP changes and they won't work with masked addresses. You can handle the IP changes if you decide to assume that any time you see NICK, then it's the same person and not another person using the same nickname. But that's not necessarily accurate. As for masked addresses, there really isn't a lot you can do other than to only use the nickname, which puts you in the same situation, where someone else might use the same nick.