This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Valid file-name characters

egor duda wrote:


Monday, 22 July, 2002 Robert Collins wrote:

RC> I was just about to suggest that whatever character is used is used as
RC> an escape char rather than a literal replacement.

'aux%c' ->> 'aux:'
'aux%%' ->> 'aux%'

which means that

touch $s
notepad $s

won't work.

RC> Unless cygwin detects that notepad is a non cygwin program, and therefor
RC> needs the on-disk name.

Even if cygwin knows that notepad is native program it can't tell for
sure if a%% is name of disk file. It may be a name of my dog to be
told from my computer speakers, for instance. An he surely won't like
if i misspell his name ;-)

RC> With 'aux%' ->> 'aux:'

RC> s='aux:'
RC> touch $s
RC> notepad $s

RC> won't work either - unless cygwin detects that notepad...

That's exactly my point. Having some fancy rules for filename encoding
breaks interoperability with native tools. Escaping non-valid
characters like ':' is not big problem, since native tools can't use
such names anyway. But messing with valid characters like '%' is far
more dangerous and error-prone.

Egor. ICQ 5165414 FidoNet 2:5020/496.19

Before we go too far overboard, translate from "escaped" to "real" only in the face of "%ab" where a and b are valid <hex-digit>.
That way, a user could even include the percent sign.
By the way, if noone recognized it, I'm using an internet standard as a model - I'm not sure of the RFC number.

I'm pretty much in favor of a very minimalist approach, and of only using it at the interface where we have a known problem.

David A. Cobb, Software Engineer, Public Access Advocate
"By God's Grace I am a Christian man, by my actions a great sinner." -- The Way of a Pilgrim; R. M. French, tr.
Life is too short to tolerate crappy software.

Unsubscribe info:
Bug reporting:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]