PROPOSAL: translate '::' to '.' in arguments to the man command
Danilo Turina
danilo.turina@alcatel.it
Fri Jan 24 12:32:00 GMT 2003
Rafael Kitover wrote:
> I have noticed that some man pages, for example perl modules below the
> root namespace, are installed as Foo.Bar instead of Foo::Bar because
> apparently windows file names cannot contain "::". Eg.
>
> $ touch 'Foo::Bar'
> touch: creating `Foo::Bar': Invalid argument
>
> This is sufficiently different from UNIX to trip most people up,
> especially those working with Perl. Further, filenames with one colon do
> work, e.g. Touch 'Foo:Bar'.
That's not completely true: ":" is an invalid character for Windows
filenames.
touch "Foo:Bar"
does not returns an error but does not create a file called "Foo:Bar",
instead it creates a file called "Foo" and associate to it a NTFS stream
(I think this is the correct name) to it.
If you try an ls you'll see that your directory contains a file called
"Foo". But try, for example:
echo Hello >> Foo
echo Good morning >> "Foo:Bar"
$ cat Foo
Hello
$ cat "Foo:Bar"
Good morning
$ rm Foo
$ cat "Foo:Bar"
cat: Foo:Bar: No such file or directory
>
> For this reason I propose changing the "man" command in Cygwin to take
> the special case of "::" into account and convert it to a ".", iff the
> file containing "::" does not exist (might be supported in the future.)
>
> If this is considered a good idea I'll be happy to make the patch.
>
> Cheers,
>
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
More information about the Cygwin
mailing list