127
127
* Set @a *kw to a new keywords hash filled with the appropriate contents
128
128
* given a @a keywords_string (the contents of the svn:keywords
129
129
* property for the file in question), the revision @a rev, the @a url,
130
* the @a date the file was committed on, and the @a author of the last
131
* commit. Any of these can be @c NULL to indicate that the information is
132
* not present, or @c 0 for @a date.
130
* the @a date the file was committed on, the @a author of the last
131
* commit, and the URL of the repository root @a repos_root_url.
133
* Custom keywords defined in svn:keywords properties are expanded
134
* using the provided parameters and in accordance with the following
135
* format substitutions in the @a keywords_string:
137
* %b - The basename of the URL.
138
* %d - Short format of the date.
139
* %D - Long format of the date.
140
* %P - The file's path, relative to the repository root URL.
142
* %R - The URL to the root of the repository.
143
* %u - The URL of the file.
144
* %_ - A space (keyword definitions cannot contain a literal space).
145
* %% - A literal '%'.
146
* %H - Equivalent to %P%_%r%_%d%_%a.
147
* %I - Equivalent to %b%_%r%_%d%_%a.
149
* Custom keywords are defined by appending '=' to the keyword name, followed
150
* by a string containing any combination of the format substitutions.
152
* Any of the inputs @a rev, @a url, @a date, @a author, and @a repos_root_url
153
* can be @c NULL, or @c 0 for @a date, to indicate that the information is
154
* not present. Each piece of information that is not present expands to the
155
* empty string wherever it appears in an expanded keyword value. (This can
156
* result in multiple adjacent spaces in the expansion of a multi-valued
157
* keyword such as "Id".)
134
159
* Hash keys are of type <tt>const char *</tt>.
135
160
* Hash values are of type <tt>svn_string_t *</tt>.
137
162
* All memory is allocated out of @a pool.
167
svn_subst_build_keywords3(apr_hash_t **kw,
168
const char *keywords_string,
171
const char *repos_root_url,
176
/** Similar to svn_subst_build_keywords3() except that it does not accept
177
* the @a repos_root_url parameter and hence supports less substitutions,
178
* and also does not support custom keyword definitions.
139
180
* @since New in 1.3.
181
* @deprecated Provided for backward compatibility with the 1.7 API.
142
185
svn_subst_build_keywords2(apr_hash_t **kw,
143
186
const char *keywords_string,