Subject: ls wraps files containing spaces in single quotes in terminal
From: Daniel Grambihler <[email-masked]>
To: [email-masked]
Date: Sat, 26 Jan 2019 13:54:00 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

The ls utility wraps files with spaces in them in single quotes when used from the terminal. I discovered this after updating a subversion repository which pulled files that had been checked in by others using TortoiseSVN but was unable to find a bug in TortoiseSVN that would cause this. After checking the repo via web interface, I could see there were no quotes in the actual repo. My next suspect was a change in subversion causing this upon checkout (perhaps it was checking out Windows files with quotes around them for some weird reason, for example). I came up empty there, too. I then wondered if it was some weird Ubuntu alias change, but \ls showed the same thing. I finally opened a directory containing one of the screwed up filenames with vi and could see that the single quote wasn’t actually there.

This led me to search for bugs in ls, upon which I found that this was an intentionally induced bug and that I was going to have to change my alias to add the -N option on every VM and system I use in order to fix this flaw.

I spent two hours on this. That is wholly unacceptable. I’m sure you’re well aware of the negative feedback on this flaw. The fix for this is to make this unexpected change an opt-in rather than a default (as has been the norm for decades).

Perhaps a fork of the core-utils that can be included in all of the distributions is in order. It would be a shame to have to abandon the current line in preference for a fork due to an unwillingness to do the right thing on the part of the core-utils devs.