Just adding to answer from @edward-torvalds,
In your .aliases file, the use of a Tab might not be visible enough for some. Your alias definition can be written as such for better reading:
alias sudo=$'nocorrect sudo\t'
However, I did have issues with a trailing space, but not a trailing tab.
alias sudo='sudo '
alias sudo='nocorrect sudo '
above aliases resulted in errors, as follows:
~$ which mkdir
mkdir: aliased to nocorrect mkdir -p -pv
~$ which sudo
sudo: aliased to nocorrect sudo
~$ alias sudo
sudo='nocorrect sudo '
~$ sudo mkdir /tmp/foo
sudo: nocorrect: command not found
Therefore, this would work alias sudo='sudo '
but I prefer alias sudo=$'nocorrect sudo\t'
in a 1K+ line zshrc, the latter is just too simple ;)
...if anyone can possibly say why, please comment!
alias | grep sudo=
?