I think all of those suggestions are feasible. However, what should the plugin do in situations when a delimiter is deliberately left unclosed, such as character literals? I wouldn’t want it to permanently suggest the corresponding closing delimiter.
There’s a couple of ways I can see it:
The following is less preferred but still works: maybe the status line or a pop up shows the order of unclosed pairs.
I think all of those suggestions are feasible. However, what should the plugin do in situations when a delimiter is deliberately left unclosed, such as character literals? I wouldn’t want it to permanently suggest the corresponding closing delimiter.