Greetings, Milady.
Show quoted text> How are things?
Well, I thank you.
And I hope things are likewise with you.
Show quoted text> Cyclops returns cyclopss instead of cyclopses,
Corrected in the new version that I just uploaded to CPAN.
Show quoted text> and Fury returns Furys instead of Furies.
This is falling foul of the heuristic that capitalized words
are names, so in 'classical' mode, it just adds a -s.
The workaround is either not to use classical mode for names:
classical(names=>0);
say PL_N('Fury');
or to inflect the word case-insensitively:
say ucfirst( PL_N( lc( 'Fury' )))
or to use Lingua::EN::Inflexion instead:
say noun('Fury')->plural;
Show quoted text> And I found that values inside html tags won't return the indefinite
article I want.
Show quoted text>
> A(<a href="indefinite_term.html">indefinite term</a>) does not return "an
<a href="indefinite_term.html">indefinite term</a>", so I have to get the
indefinite article for the indefinite term, then split it off when I do not
want the indefinite article inside the link.
Show quoted text> Am I missing something, or is that the way it is?
No, you're not missing anything. That is indeed just the way it is.
A() and AN() have no understanding of HTML...or any other markup notation.
They simply strip any leading "a" or "an" then attempt to select the right
article from whatever comes next (in your case, the opening '<')
Unfortunately, not even Lingua::EN::Inflexion will help you here. :-(
Your current solution is the only one.
Thanks for the reports and for your continued interest in the module.
I should probably point out, though, that it is likely that I will be
discontinuing support for Lingua::EN::Inflect, in favour of
Lingua::EN::Inflexion, within the next year or two.
All the very best,
Damian