Dealing with strings that contain ansi codes for colorizing can be a challenge especially if you need the actual display length of the embedded strings.
I want you to try this .vimrc setup.
I have had my own .vimrc for years. I recently came across fisa-vim-config and ended up dropping my extensive .vimrc, adopting the one above and adding a few tweaks to make it friendly to me. I was actually looking for more ALE-fixers when I found this gem.
It is simple, self installing and very powerful due to the vim Plugins that are installed and loaded.