On Wed, Feb 03, 2016 at 10:05:59AM -0500, Michael Stone wrote: > On Wed, Feb 03, 2016 at 03:34:21PM +0100, you wrote: > >There are cases when it does make sense: unprintable characters. > > > >15:25 < ansgar> Now, 'new'$'\t''line' could also be $'new\tline' or > > new\tline. But any of these is better than new?line > > > >with which I do agree. Thus, the handling of unprintables could use some > >improvement (although '$'\t'' is too long). > > I'm actually not convinced this is true. Does it actually matter in general > what the specific character is that accidentally got inserted into a > filename? Like, when does it matter whether it's randomgarbage\t or > randomgarbage\n or randomgarbage\a or whatever? Do people often do anything > other than rm randomgarbage<tab> ?
You have a point. I guess, the big question here is: what's the main purpose of ls's output? Is it showing the directory's contents in human-friendly way? Or is it something that needs to be a reversible transformation? I for one prefer the former, Ansgar seems to want the latter. Also, should we consider junk in file names to be an error or a valid use case? This reminds me: it's high time to write a kernel patch to ban creation of files which fail iswprint(), like some filesystems already do for broken Unicode. -- A tit a day keeps the vet away.

