:local: methods, or omits the colon between the hostname
and the path. Allow :/ in repository path, since CVS does.
Fix typo: "pository" should be set from $CVSROOT, not $repository.
This fixes a bug reported by Wolfgang Scherer in
<http://mail.gnu.org/archive/html/bug-gnu-emacs/2004-02/msg00085.html>,
along with some related bugs I discovered by inspecting how
CVS itself parses $CVSROOT.
(AWK, TMPDIR): Work around portability problem in broken shells that
don't understand `: ${VAR=val}'.
(SORT_K_OPTIONS): New var, for hosts that conform to POSIX 1003.1-2001.
Prefer the new -k option to the traditional +M -N option.
The following changes are derived from suggestions by Bob Chapman
<rechapman@compuserve.com>.
(printlogline): Also allow tab and newline to separate
'(function):' from the rest of a comment.
(reformat the sorted log entries): Require date and author to
match the clumpname.
(Copyright): Update year.
(LANG, LANGUAGE, LC_ALL, LC_COLLATE, LC_CTYPE, LC_MESSAGES,
LC_NUMERIC, LC_TIME): New shell vars, to make sure we live in the C locale.
(mainline code): Handle nonstandard -u option differently, by
transforming it to standard form. Check for "Working file: ", not
"Working file:". Allow file names with spaces.
(SOH, rlogfile): New shell vars.
(rlogout): Remove. Its old functionality is mostly migrated to rlogfile.
Append ';;' to the last arm of every case statement, for portability to
ancient broken BSD shells.
(logins): Fix bug; was not being computed at all, lowering performance.
(pository): New var. This fixes some bugs where repositories are
remote, or have trailing slashes.
(authors): $llogout is never an empty shell var, so don't worry about that
possibility.
(printlogline, mainline code): Fix bug with SOH's being put into the output.
cause user of rcs2log to overwrite arbitrary files, fixing
a bug reported by Morten Welinder.
Don't put "exit 1" at the end of the exit trap; it's
ineffective in POSIX shells.
since this causes some shells to generate the empty string when IFS is $nl.
(printlogline): Use SOH (octal code 1), not CR, since some PC-based shells
mishandle CR.
(Copyright, Help, Id): New variables, for above.
(rlog): Use -q option with cvs log, to avoid useless chatter.
Treat logs of "Initial revision" (RCS) or "file F was initially added
on branch B." (CVS) as if they said "New file.", for consistency with
change log entries.
change-log-time-zone-rule is non-nil, instead of traditional Unix date
format.
(datearg): When computing default from ChangeLog, handle ISO format dates
in addition to old-fashioned dates from Emacs 19.31 and earlier. Don't
worry about hh:mm:ss since the resolution is now by day. Use emtpy
datearg, not empty rlog_options, to decide whether to pass "$datearg"
option to $rlog.
(logTZ): New variable, set to TZ specified by change-log-time-zone-rule.
(month_data): Remove `mo'; no longer needed.
(rlog_options): Use -zLT for localltime output, if `rlog' supports it.
(extractTZ): Use UTC if the zone is t.
Match `revision' line of rlog output more accurately.
Add -c, -v options.
(now obsolescent) -n login fullname mailaddr option.
Don't omit path from repository root when logging CVS files.
Add -R option for recursive rlog.
(AWK): New environment variable (default `awk') for name of awk program.
(output_authors, tab, loginFullnameMailaddrs, recursive): New variables.
Quote authors and fullnames correctly.
it to /[\/]/. This should work on all Posix-compliant awks.
It's slightly wrong with traditional (Unix version 7) awk, since it
also allows \, but that's a minor problem compared to awk syntax errors.
Unfortunately this requires putting a carriage return in the source code.
Don't assume that rlog will tolerate times like `10:10:60';
RCS 5.7 won't allow this.