You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by sa...@apache.org on 2002/09/10 22:04:46 UTC
cvs commit: xml-xalan/java/src/org/apache/xalan/xsltc/dom NodeCounter.java
santiagopg 2002/09/10 13:04:46
Modified: java/src/org/apache/xalan/xsltc/dom NodeCounter.java
Log:
Support for Greek alphabet in xsl:number.
Revision Changes Path
1.7 +14 -6 xml-xalan/java/src/org/apache/xalan/xsltc/dom/NodeCounter.java
Index: NodeCounter.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/dom/NodeCounter.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- NodeCounter.java 5 Nov 2001 11:26:01 -0000 1.6
+++ NodeCounter.java 10 Sep 2002 20:04:46 -0000 1.7
@@ -289,8 +289,8 @@
* lang="en".
*/
private void formatValue(int value, String format, StringBuffer buffer) {
-
char c = format.charAt(0);
+
if (Character.isDigit(c)) {
char zero = (char)(c - Character.getNumericValue(c));
@@ -326,10 +326,18 @@
buffer.append(romanValue(value).toUpperCase());
}
else {
- int min = (int) c;
- int max = (int) c;
- while (Character.isLetterOrDigit((char) (max+1))) {
- max++;
+ int min = (int) c;
+ int max = (int) c;
+
+ // Special case for Greek alphabet
+ if (c >= 0x3b1 && c <= 0x3c9) {
+ max = 0x3c9; // omega
+ }
+ else {
+ // General case: search for end of group
+ while (Character.isLetterOrDigit((char) (max + 1))) {
+ max++;
+ }
}
buffer.append(alphaValue(value, min, max));
}
---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org