Since coreutils-8.24 (as far as I can tell from the Coreutils git), ls escaped filenames with single quotes instead of backslashes. On zsh (zsh 5.4.2 stable, freshly installed) escaped filenames in filename completion (typing cd then pressing Tab) are still escaped with backslashes. I think the Coreutils standard should be followed as it is more shell-friendly and promotes better, more efficient commandline practices.