|
From: | Jim Hyslop |
Subject: | Re: Avoiding \040 in filenames within keywords |
Date: | Fri, 22 Jul 2005 20:22:13 -0400 |
User-agent: | Mozilla Thunderbird 1.0.2 (Windows/20050317) |
Ed J wrote:
I didn't get any answers to my original question, so I'm following it up myself... I've since read that \040 is used for spaces to keep the keyword string "well formed" for the benefit of keyword search tools. It appears that dollar signs will also be replaced. However, I don't need "well formed" keyword strings at the client side.
Unfortunately, you have no choice with dollar signs - CVS scans for the first dollar sign to indicate the end-of-keyword. For example, if the full path is "/$dir/filename", then the first time you expand the $Source$ keyword you'll get:
$Source: /$dir/filename$then the next time, when CVS scans it for replacement, it will think that the keyword ends at the dollar sign preceding "dir", not the one following "filename".
No, there are no hooks on the client side. At least, not with the command-line client - check TortoiseCVS's manual to see if it supports any hooks.Can I hook a script into CVS somewhere to filter a file coming out of CVS on its way to the client? Where would I put the hook?.
Now that I think about it, doesn't TortoiseCVS use CVSNT as its back end?Now, the beauty of an open-source project like this is that you can always patch the source code to suit your needs. For the version available at cvshome.org, the function is escape_keyword_value, in the file rcs.c
-- Jim
[Prev in Thread] | Current Thread | [Next in Thread] |