|
From: | Kevin Smith |
Subject: | [Monotone-devel] Spaces in filenames, UTF-8, and newlines (was: monotone & CVS import) |
Date: | Wed, 12 Nov 2003 07:58:02 -0800 |
User-agent: | Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5b) Gecko/20031024 Thunderbird/0.2 |
graydon hoare wrote:
space character is an unfortunate special case becuse some data in monotone is whitespace delimited (manifest entries and historical
I'm glad you're addressing this, because monotone absolutely must allow spaces in file paths, or I won't be able to use it. Some RCS projects are willing to disallow spaces, unfortunately.
rename certs). so .. hmm. I think manifests would survive introducing space as an allowed character since they have exactly 40 characters of hex as their first component, and then 2 spaces, then "rest of line" as the path name. can't add '\n', but I don't think many files have that.
I would probably consider the first component to be everything up to the first space, and the filename everything after that (rather than relying on exactly 40 characters). I think \n is the right terminator to use. I really like non-binary data files.
I'd like to get any such breakage out of the way before we get to '1.0', after which point I'm going to be much stingier about disrupting committed-to formats. since I only invented the rename certs 1 release ago, I still feel OK fiddling with them a bit.
Makes sense. I think we should allow UTF-8 filenames, as you mentioned in that earlier thread.
Have you already "solved" the cross-platform newline issue? As a maintainer of a cross-platform app, this is also an important feature for me. I don't really know the right answer, but somehow between the tools and some conventions, cross-platform work has to be possible (without too much pain).
Kevin
[Prev in Thread] | Current Thread | [Next in Thread] |