In a recent upgrade I got the version of ls that defaults to outputting
quotes for files names, per this announcement from coreutils.
https://www.gnu.org/software/coreutils/quotes.html
My feedback is that this should be off by default by aliasing it to ls
-N (literal quoting style). The purpose of ls when on standard out is
for the human eye to read the file names. The quotes clutter the screen
and make it harder for the eye to visually scan. It also creates
inconsistent visual display for the eye and brain to process. For some
files the all of the characters I see on the screen represent the file
name; for others some of the characters (the quotes) do not.
The benefits cited in the above link are outweight by the visual
confusion the produce.
* The output is not unambiguous. As noted above, how the brain needs
to process the characters it sees varies from file to file,
depending on if ls put quotes there or not.
* The copy/paste benefit is hardly a benefit. The vast majority of
files are filled in with TAB completion. In cases where I can't use
TAB completion, it's simple enough to type a a quote before and
after hitting the paste option.
Debian should turn this feature into an opt-in, not the default.
Defaults should represent the principle of least astonishment and
provide the most value for the intended purpose of the program. The
primary purpose of ls on standard out is to produce human-readable
content. This is why Linux distributions often alias ls to ls
--color=auto even though color is not the default for ls. Adding color
makes ls better suited for its primary purpose.
Unfortunately, the maintainers of coreutils have made copy/paste mildly
easier in a few rare cases at the expense of serving its primary
purpose. Debian can fix this by aliasing ls to always have -N just the
same as it it adds --color=auto to the defaults.
Thanks,
--
David Mooter.