Hi Nate,
I would like someone to test out the ignore case functionality under different locales.
I'm using Java's "toLowerCase()" function, but I'm not sure if defaulting the
Locale is the correct way to process the source strings. (e.g. Will the patch work
when processing English locale sources file under another Locale? Also, will it work in
an English Locale when the source files are from another locale?)
Character casing is dependent on the locale so when processing text in a
case-insensitive manner one needs to know the locale of the input text.
So I think a full-blown approach is for the plugin to provide some parameter
/**
* The locale used for the (tags in the) source files.
* @parameter default-value="en"
*/
private String locale;
that the plugin converts to java.util.Locale and uses for invocations of
String.to*Case() instead of the platform default value.
This way, the output of the plugin is platform-independent in the sense
that both an English developer and a Turkish developer working on the
same project get "fixme" and "FIXME" tags reported as belonging to the
same case-insentive tag.
See also [0] for some related hints.
BTW, something like
@parameter expression="${tagListOptions}"
is useless for complex parameter types like TagListOptions. The
expression is meant to allow configuration via system properties (from
the CLI) but a complex object cannot be passed in via system props.
Benjamin
[0]
http://maven.apache.org/plugin-developers/common-bugs.html#Handling_Strings_Case-insensitively
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email