info-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Line ending conventions


From: Graeme . Vetterlein
Subject: Line ending conventions
Date: Thu, 25 Jan 2001 11:46:12 -0000

The preceding thread has gone through a lot of 
change. I thought some stakes in the ground might
be useful.

        1: The only "problem" I have is with CVS's on 'internal' files
                CVS/Root CVS/Entries etc. I don't get a chance to run
dos2unix et al
                on these.

        2: Currently (as I understand it) the 'user' files inside the CVS
repository
                are store in a CANONICAL form ... that is I need not know
how they are
                stored just that it's done consistently.

                I can check these files in and out on various OS/platforms:

                        If I check out on platform-X I get platform X
conventions.
                        If I check out on platform-Y I get platform Y
conventions.

                This is an "implied rule":

                        Users on platform X ALWAYS want platform X
conventions.


                Now this is simply one of several possible rules. It works
90% of
                the time nowadays, it probably worked 99% of the time in the
past.

                Another rule is 

                        When I check a file in/out do NOT convert at all
(e.g. binary)

                What I was suggesting was we allow some other rules. If you
don't
                choose to use these they don't affect you, so no existing
src is broke.

                        Ignore the platform I'm on use convention "X"
                        Ignore the platform I'm on use convention "Y"

                There no issue with being misled by \r etc existing within
files. If
                your file is NOT in convention X, don't say "use convention
X". If your
                file is a binary, don't say it's a text file etc.

                I might for example one day want to store ASCII records with
<STX> <ETX>
                markers for lines :-) what I'd like to say then is "ignore
my platform"
                those \r\n are MY data don't mess with them, however I would
rather like
                to still be able to keep deltas of changes to records (the
things between
                <STX> and <ETX>)


                As and aside (I know I'm going to regret this :-) if we just
fgets() etc
                to handle the input conventions, how do we cope with double
byte characters
                ad I18N in general (is that really a \r in your pocket or
you just half of
                multi-byte character?)
---

First Rule of History:
        History doesn't repeat itself -- historians merely repeat each
other.


Graeme



reply via email to

[Prev in Thread] Current Thread [Next in Thread]