> Hi Konstantin, > that is fine that you have a little time ;-) Unfortunately, only two days. I don't use Cocoon in any project, that's why I can't do much for it now.
> > 1) I have a whish: Could we introduce a new cocoon.xconf parameter for i18n > called empty-translation, e.g. empty-translation="."? Do you mean sitemap.xmap? > At this time it is not possible to have an empty translation. > I need this for generic formular creation and I only commented out > line 357 in XMLResourceBundle.java: itemValue = itemValue.trim(); > and put a space in the dictionary. > But I think a more common solution would be fine also for others. Ok, I'll take a look at it. As I can see, you can now use 'untranslated-text' param to provide custom text for not found messages. Maybe this can be the common solution for your case? > 2) I prepared 2 new attributes: currency-no-unit and int-currency-no-unit > This prevents the "$" or "DM" (now "Euro") from printing. > I append the diff -u Are you sure? As I could get from the diff you just set the number of fraction digits and nothing else. Anyway, this can be useful. Btw, do we need separate 'type' and 'sub-type' attributes? It's absolutely enough to have 'type' = [number, date, date-time, time, currency, percent]. We can introduce new attributes: 'max-fraction' and 'min-fraction'. > 3) Since the last update (?) of XMLResourceBundleFactory.java I get this note > at compile time: > Note: .../i18n/XMLResourceBundleFactory.java uses or overrides a deprecated API. Recompile with "-deprecation" for details. > If you could have a look at this ... As I've told in my previous mail, i18n classes can be out of date now. Regards, Konstantin Piroumian > > Thanks, > Michael > > > "Piroumian, Konstantin" wrote: > > > > Hi, C2ers! > > > > As I have a little free time, I'm going to make some code clean up in i18n > > transformer and LocaleAction. I've already added JavaDoc comments to all > > public members and polished a little class comments. > > > > Next I am going to create an I18nUtils class that will contain all general > > purpose i18n routines, such as locale string parsing, date/number formatting > > and parsing, etc. Currently, it will be placed in org.apache.cocoon.i18n > > package. > > > > Also, I'm going to add a new <i18n:get-locale> element that will use > > LocaleAction.getLocale() to return the current selected Locale (it can be > > different from request.getLocale()). (It'd be good also to move getLocale() > > to the new I18nUtils, but now getLocale() has a lot of dependencies from > > Cocoon, but I want to keep I18nUtils as much general as possible). > > > > Are there any other wishes/suggestions/comments regarding i18n? > > > > Best regards, > > > > Konstantin Piroumian > > Leading Software Developer > > > > Protek Flagship LLC > > Phone: + 7 095 795 0520 (add. 1288) > > Fax: + 7 095 795 0525 > > E-mail: [EMAIL PROTECTED] > > http://www.protek.com > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, email: [EMAIL PROTECTED] > > > ---------------------------------------------------------------------------- ---- > --- I18nTransformer.java.orig Thu Jan 24 12:53:01 2002 > +++ I18nTransformer.java Thu Jan 24 12:53:04 2002 > @@ -1110,6 +1110,19 @@ > int_currency = 1; > for ( int i = 0; i < to_fmt.getMaximumFractionDigits(); i++ ) > int_currency *= 10; > + } else if ( subType.equals( "currency-no-unit" ) ) { > + DecimalFormat tmp = (DecimalFormat) NumberFormat.getCurrencyInstance( loc ); > + to_fmt = (DecimalFormat) NumberFormat.getInstance( loc ); > + to_fmt.setMinimumFractionDigits(tmp.getMinimumFractionDigits()); > + to_fmt.setMaximumFractionDigits(tmp.getMaximumFractionDigits()); > + } else if ( subType.equals( "int-currency-no-unit" ) ) { > + DecimalFormat tmp = (DecimalFormat) NumberFormat.getCurrencyInstance( loc ); > + int_currency = 1; > + for ( int i = 0; i < tmp.getMaximumFractionDigits(); i++ ) > + int_currency *= 10; > + to_fmt = (DecimalFormat) NumberFormat.getInstance( loc ); > + to_fmt.setMinimumFractionDigits(tmp.getMinimumFractionDigits()); > + to_fmt.setMaximumFractionDigits(tmp.getMaximumFractionDigits()); > } else if ( subType.equals( "percent" ) ) { > to_fmt = (DecimalFormat) NumberFormat.getPercentInstance( loc ); > } > > ---------------------------------------------------------------------------- ---- > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, email: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]