Skip to content

Commit 1774258

Browse files
committed
Merge master HEAD into openj9-staging
Signed-off-by: J9 Build <j9build@ca.ibm.com>
2 parents 71ba817 + 3f2b822 commit 1774258

File tree

42 files changed

+1215
-450
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+1215
-450
lines changed

make/Docs.gmk

+2
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,8 @@ JAVADOC_TAGS := \
7979
-tag see \
8080
-taglet build.tools.taglet.ExtLink \
8181
-taglet build.tools.taglet.Incubating \
82+
-taglet build.tools.taglet.PreviewNote \
83+
--preview-note-tag previewNote \
8284
-tagletpath $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
8385
$(CUSTOM_JAVADOC_TAGS) \
8486
#

make/data/cldr/LICENSE

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
UNICODE LICENSE V3
1+
UNICODE LICENSE V3
22

33
COPYRIGHT AND PERMISSION NOTICE
44

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
/*
2+
* Copyright (c) 2025, Oracle and/or its affiliates. All rights reserved.
3+
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4+
*
5+
* This code is free software; you can redistribute it and/or modify it
6+
* under the terms of the GNU General Public License version 2 only, as
7+
* published by the Free Software Foundation. Oracle designates this
8+
* particular file as subject to the "Classpath" exception as provided
9+
* by Oracle in the LICENSE file that accompanied this code.
10+
*
11+
* This code is distributed in the hope that it will be useful, but WITHOUT
12+
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13+
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14+
* version 2 for more details (a copy is included in the LICENSE file that
15+
* accompanied this code).
16+
*
17+
* You should have received a copy of the GNU General Public License version
18+
* 2 along with this work; if not, write to the Free Software Foundation,
19+
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20+
*
21+
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22+
* or visit www.oracle.com if you need additional information or have any
23+
* questions.
24+
*/
25+
26+
package build.tools.taglet;
27+
28+
import java.util.EnumSet;
29+
import java.util.List;
30+
import java.util.Set;
31+
32+
33+
import javax.lang.model.element.Element;
34+
import javax.tools.Diagnostic;
35+
36+
37+
import com.sun.source.doctree.DocTree;
38+
import com.sun.source.doctree.UnknownInlineTagTree;
39+
import jdk.javadoc.doclet.Doclet;
40+
import jdk.javadoc.doclet.DocletEnvironment;
41+
import jdk.javadoc.doclet.Reporter;
42+
import jdk.javadoc.doclet.StandardDoclet;
43+
import jdk.javadoc.doclet.Taglet;
44+
45+
import static com.sun.source.doctree.DocTree.Kind.UNKNOWN_INLINE_TAG;
46+
47+
/**
48+
* An inline tag to insert a note formatted as preview note.
49+
* The tag can be used as follows:
50+
*
51+
* <pre>
52+
* {&commat;previewNote jep-number [Preview note heading]}
53+
* Preview note content
54+
* {&commat;previewNote}
55+
* </pre>
56+
*
57+
*/
58+
public class PreviewNote implements Taglet {
59+
60+
static final String TAG_NAME = "previewNote";
61+
Reporter reporter = null;
62+
63+
@Override
64+
public void init(DocletEnvironment env, Doclet doclet) {
65+
if (doclet instanceof StandardDoclet stdoclet) {
66+
reporter = stdoclet.getReporter();
67+
}
68+
}
69+
70+
/**
71+
* Returns the set of locations in which the tag may be used.
72+
*/
73+
@Override
74+
public Set<Location> getAllowedLocations() {
75+
return EnumSet.allOf(Taglet.Location.class);
76+
}
77+
78+
@Override
79+
public boolean isInlineTag() {
80+
return true;
81+
}
82+
83+
@Override
84+
public String getName() {
85+
return TAG_NAME;
86+
}
87+
88+
@Override
89+
public String toString(List<? extends DocTree> tags, Element elem) {
90+
91+
for (DocTree tag : tags) {
92+
if (tag.getKind() == UNKNOWN_INLINE_TAG) {
93+
UnknownInlineTagTree inlineTag = (UnknownInlineTagTree) tag;
94+
String[] content = inlineTag.getContent().toString().trim().split("\\s+", 2);
95+
if (!content[0].isBlank()) {
96+
StringBuilder sb = new StringBuilder("""
97+
<div class="preview-block" style="margin-top:10px; display:block; max-width:max-content;">
98+
""");
99+
if (content.length == 2) {
100+
sb.append("""
101+
<div class="preview-label">
102+
""")
103+
.append(content[1])
104+
.append("""
105+
</div>
106+
""");
107+
}
108+
sb.append("""
109+
<div class="preview-comment">
110+
""");
111+
return sb.toString();
112+
} else {
113+
return """
114+
</div>
115+
</div>
116+
""";
117+
}
118+
}
119+
}
120+
121+
if (reporter == null) {
122+
throw new IllegalArgumentException("@" + TAG_NAME + " taglet content must be begin or end");
123+
}
124+
reporter.print(Diagnostic.Kind.ERROR, "@" + TAG_NAME + " taglet content must be begin or end");
125+
return "";
126+
}
127+
}
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
ما هي الشفرة الموحدة "يونِكود" ؟
1+
ما هي الشفرة الموحدة "يونِكود" ؟
22

33
أساسًا، تتعامل الحواسيب فقط مع الأرقام، وتقوم بتخزين الأحرف والمحارف الأخرى بعد أن تُعطي رقما معينا لكل واحد منها. وقبل اختراع "يونِكود"، كان هناك مئات الأنظمة للتشفير وتخصيص هذه الأرقام للمحارف، ولم يوجد نظام تشفير واحد يحتوي على جميع المحارف الضرورية. وعلى سبيل المثال، فإن الاتحاد الأوروبي لوحده، احتوى العديد من الشفرات المختلفة ليغطي جميع اللغات المستخدمة في الاتحاد. وحتى لو اعتبرنا لغة واحدة، كاللغة الإنجليزية، فإن جدول شفرة واحد لم يكف لاستيعاب جميع الأحرف وعلامات الترقيم والرموز الفنية والعلمية الشائعة الاستعمال.
44

@@ -8,4 +8,4 @@
88

99
تخصص الشفرة الموحدة "يونِكود" رقما وحيدا لكل محرف في جميع اللغات العالمية، وذلك بغض النظر عن نوع الحاسوب أو البرامج المستخدمة. وقد تـم تبني مواصفة "يونِكود" مــن قبـل قادة الصانعين لأنظمة الحواسيب فـي العالم، مثل شركات آي.بي.إم. (IBM)، أبـل (APPLE)، هِيـْولِـت بـاكـرد (Hewlett-Packard) ، مايكروسوفت (Microsoft)، أوراكِـل (Oracle) ، صن (Sun) وغيرها. كما أن المواصفات والمقاييس الحديثة (مثل لغة البرمجة "جافا" "JAVA" ولغة "إكس إم إل" "XML" التي تستخدم لبرمجة الانترنيت) تتطلب استخدام "يونِكود". علاوة على ذلك ، فإن "يونِكود" هي الطـريـقـة الرسـمية لتطبيق المقيـاس الـعـالـمي إيزو ١٠٦٤٦ (ISO 10646) .
1010

11-
إن بزوغ مواصفة "يونِكود" وتوفُّر الأنظمة التي تستخدمه وتدعمه، يعتبر من أهم الاختراعات الحديثة في عولمة البرمجيات لجميع اللغات في العالم. وإن استخدام "يونِكود" في عالم الانترنيت سيؤدي إلى توفير كبير مقارنة مع استخدام المجموعات التقليدية للمحارف المشفرة. كما أن استخدام "يونِكود" سيُمكِّن المبرمج من كتابة البرنامج مرة واحدة، واستخدامه على أي نوع من الأجهزة أو الأنظمة، ولأي لغة أو دولة في العالم أينما كانت، دون الحاجة لإعادة البرمجة أو إجراء أي تعديل. وأخيرا، فإن استخدام "يونِكود" سيمكن البيانات من الانتقال عبر الأنظمة والأجهزة المختلفة دون أي خطورة لتحريفها، مهما تعددت الشركات الصانعة للأنظمة واللغات، والدول التي تمر من خلالها هذه البيانات.
11+
إن بزوغ مواصفة "يونِكود" وتوفُّر الأنظمة التي تستخدمه وتدعمه، يعتبر من أهم الاختراعات الحديثة في عولمة البرمجيات لجميع اللغات في العالم. وإن استخدام "يونِكود" في عالم الانترنيت سيؤدي إلى توفير كبير مقارنة مع استخدام المجموعات التقليدية للمحارف المشفرة. كما أن استخدام "يونِكود" سيُمكِّن المبرمج من كتابة البرنامج مرة واحدة، واستخدامه على أي نوع من الأجهزة أو الأنظمة، ولأي لغة أو دولة في العالم أينما كانت، دون الحاجة لإعادة البرمجة أو إجراء أي تعديل. وأخيرا، فإن استخدام "يونِكود" سيمكن البيانات من الانتقال عبر الأنظمة والأجهزة المختلفة دون أي خطورة لتحريفها، مهما تعددت الشركات الصانعة للأنظمة واللغات، والدول التي تمر من خلالها هذه البيانات.

src/demo/share/java2d/J2DBench/resources/textdata/english.ut8.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
What is Unicode?
1+
What is Unicode?
22
Unicode provides a unique number for every character,
33
no matter what the platform,
44
no matter what the program,
@@ -16,4 +16,4 @@ Incorporating Unicode into client-server or multi-tiered applications and websit
1616
About the Unicode Consortium
1717
The Unicode Consortium is a non-profit organization founded to develop, extend and promote use of the Unicode Standard, which specifies the representation of text in modern software products and standards. The membership of the consortium represents a broad spectrum of corporations and organizations in the computer and information processing industry. The consortium is supported financially solely through membership dues. Membership in the Unicode Consortium is open to organizations and individuals anywhere in the world who support the Unicode Standard and wish to assist in its extension and implementation.
1818

19-
For more information, see the Glossary, Unicode Enabled Products, Technical Introduction and Useful Resources.
19+
For more information, see the Glossary, Unicode Enabled Products, Technical Introduction and Useful Resources.

src/demo/share/java2d/J2DBench/resources/textdata/greek.ut8.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Τι είναι το Unicode?
1+
Τι είναι το Unicode?
22

33
Η κωδικοσελίδα Unicode προτείνει έναν και μοναδικό αριθμό για κάθε χαρακτήρα,
44
ανεξάρτητα από το λειτουργικό σύστημα,
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-

2-
יוניקוד מקצה מספר ייחודי לכל תו,
3-
לא משנה על איזו פלטפורמה,
4-
לא משנה באיזו תוכנית,
1+
2+
יוניקוד מקצה מספר ייחודי לכל תו,
3+
לא משנה על איזו פלטפורמה,
4+
לא משנה באיזו תוכנית,
55
ולא משנה באיזו שפה.
66

7-
באופן בסיסי, מחשבים עוסקים רק במספרים. הם מאחסנים אותיות ותווים אחרים על-ידי הקצאת מספר לכל אחד מהם. בטרם הומצא היוניקוד, היו מאות מערכות קידוד שונות להקצאת המספרים הללו. אף לא אחת מהן יכלה להכיל כמות תווים מספקת. לדוגמא: רק לאיחוד האירופאי נדרשים כמה סוגי קידודים שונים על מנת לכסות את כל השפות המדוברות בו. יתירה מזאת אף לשפה בודדת, כמו אנגלית למשל, לא היה די במערכת קידוד אחת בעבור כל האותיות, סימני הפיסוק והסמלים הטכניים שבשימוש שוטף.
7+
באופן בסיסי, מחשבים עוסקים רק במספרים. הם מאחסנים אותיות ותווים אחרים על-ידי הקצאת מספר לכל אחד מהם. בטרם הומצא היוניקוד, היו מאות מערכות קידוד שונות להקצאת המספרים הללו. אף לא אחת מהן יכלה להכיל כמות תווים מספקת. לדוגמא: רק לאיחוד האירופאי נדרשים כמה סוגי קידודים שונים על מנת לכסות את כל השפות המדוברות בו. יתירה מזאת אף לשפה בודדת, כמו אנגלית למשל, לא היה די במערכת קידוד אחת בעבור כל האותיות, סימני הפיסוק והסמלים הטכניים שבשימוש שוטף.
88

99
מערכות קידוד אלו אף סותרות זו את זו. כלומר, שני קידודים יכולים להשתמש באותו מספר לשני תוים נבדלים, או להשתמש במספרים שונים לאותו תו. על כל מחשב (ובמיוחד שרתים) לתמוך במספר רב של מערכות קידוד שונות; אולם כל אימת שנתונים עוברים בין מערכות קידוד או פלטפורמות שונות קיים הסיכון שייפגמו.
1010

@@ -13,7 +13,7 @@
1313

1414
שילוב יוניקוד ביישומי שרת-לקוח או ביישומים רבי-שכבות ובאתרי אינטרנט מאפשר חיסכון ניכר בעלויות לעומת השימוש בסדרות התווים המסורתיות. הודות ליוניקוד, מוצר תוכנה אחד או אתר יחיד ברשת יכול להרחיב את יעדיו למגוון פלטפורמות, ארצות ושפות ללא צורך בשינויים מרחיקים. יוניקוד מאפשר מעבר נתונים דרך מערכות רבות ושונות מבלי שייפגמו.
1515

16-
פרטים אודות הקונסורציום של יוניקוד (Unicode Consortium)
16+
פרטים אודות הקונסורציום של יוניקוד (Unicode Consortium)
1717
הקונסורציום של יוניקוד הוא ארגון ללא מטרת רווח שנוסד כדי לפתח, להרחיב ולקדם את השימוש בתקן יוניקוד, אשר מגדיר את ייצוג הטקסט במוצרי תוכנה ותקנים מודרניים. חברים בקונסורציום מגוון רחב של תאגידים וארגונים בתעשיית המחשבים ועיבוד המידע. הקונסורציום ממומן על-ידי דמי-חבר בלבד. החברות בקונסורציום יוניקוד פתוחה לארגונים ולאנשים פרטיים, בכל רחבי העולם, אשר תומכים בתקן יוניקוד ומעוניינים לסייע בהתפתחותו והטמעתו.
1818

19-
למידע נוסף, ראה מילון מונחים, רשימה חלקית של מוצרים מותאמים ליוניקוד, מבוא טכני ו- חומרי עזר [קישורים באנגלית].
19+
למידע נוסף, ראה מילון מונחים, רשימה חלקית של מוצרים מותאמים ליוניקוד, מבוא טכני ו- חומרי עזר [קישורים באנגלית].

src/demo/share/java2d/J2DBench/resources/textdata/hindi.ut8.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
यूनिकोड क्या है?
1+
यूनिकोड क्या है?
22
यूनिकोड प्रत्येक अक्षर के लिए एक विशेष नम्बर प्रदान करता है,
33
चाहे कोई भी प्लैटफॉर्म हो,
44
चाहे कोई भी प्रोग्राम हो,
@@ -16,4 +16,4 @@
1616
यूनिकोड कन्सॉर्शियम के बारे में
1717
यूनिकोड कन्सॉर्शियम, लाभ न कमाने वाला एक संगठन है जिसकी स्थापना यूनिकोड स्टैंडर्ड, जो आधुनिक सॉफ्टवेयर उत्पादों और मानकों में पाठ की प्रस्तुति को निर्दिष्ट करता है, के विकास, विस्तार और इसके प्रयोग को बढ़ावा देने के लिए की गई थी। इस कन्सॉर्शियम के सदस्यों में, कम्प्यूटर और सूचना उद्योग में विभिन्न निगम और संगठन शामिल हैं। इस कन्सॉर्शियम का वित्तपोषण पूर्णतः सदस्यों के शुल्क से किया जाता है। यूनिकोड कन्सॉर्शियम में सदस्यता, विश्व में कहीं भी स्थित उन संगठनों और व्यक्तियों के लिए खुली है जो यूनिकोड का समर्थन करते हैं और जो इसके विस्तार और कार्यान्वयन में सहायता करना चाहते हैं।
1818

19-
अधिक जानकारी के लिए, शब्दावली, सैम्पल यूनिकोड-सक्षम उत्पाद, तकनीकी परिचय और उपयोगी स्रोत देखिए।
19+
अधिक जानकारी के लिए, शब्दावली, सैम्पल यूनिकोड-सक्षम उत्पाद, तकनीकी परिचय और उपयोगी स्रोत देखिए।

src/demo/share/java2d/J2DBench/resources/textdata/japanese.ut8.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
ユニコードとは何か?
1+
ユニコードとは何か?
22
ユニコードは、すべての文字に固有の番号を付与します
33
プラットフォームには依存しません
44
プログラムにも依存しません
@@ -16,4 +16,4 @@
1616
ユニコードコンソーシアムについて
1717
ユニコードコンソーシアムは、最新のソフトウエア製品と標準においてテキストを表現することを意味する“ユニコード標準”の構築、発展、普及、利用促進を目的として設立された非営利組織です。同コンソーシアムの会員は、コンピューターと情報処理に係わる広汎な企業や組織から構成されています。同コンソーシアムは、財政的には、純粋に会費のみによって運営されています。ユニコード標準を支持し、その拡張と実装を支援する世界中の組織や個人は、だれもがユニコードコンソーシアムの会員なることができます。
1818

19-
より詳しいことをお知りになりたい方は、Glossary, Unicode-Enabled Products, Technical Introduction および Useful Resourcesをご参照ください。
19+
より詳しいことをお知りになりたい方は、Glossary, Unicode-Enabled Products, Technical Introduction および Useful Resourcesをご参照ください。

src/demo/share/java2d/J2DBench/resources/textdata/korean.ut8.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
유니코드에 대해 ?
1+
유니코드에 대해 ?
22
어떤 플랫폼,
33
어떤 프로그램,
44
어떤 언어에도 상관없이
@@ -16,4 +16,4 @@
1616
유니코드 콘소시엄에 대해
1717
유니코드 콘소시엄은 비영리 조직으로서 현대 소프트웨어 제품과 표준에서 텍스트의 표현을 지정하는 유니코드 표준의 사용을 개발하고 확장하며 장려하기 위해 세워졌습니다. 콘소시엄 멤버쉽은 컴퓨터와 정보 처리 산업에 종사하고 있는 광범위한 회사 및 조직의 범위를 나타냅니다. 콘소시엄의 재정은 전적으로 회비에 의해 충당됩니다. 유니코드 컨소시엄에서의 멤버쉽은 전 세계 어느 곳에서나 유니코드 표준을 지원하고 그 확장과 구현을 지원하고자하는 조직과 개인에게 개방되어 있습니다.
1818

19-
더 자세한 내용은 용어집, 예제 유니코드 사용 가능 제품, 기술 정보 및 기타 유용한 정보를 참조하십시오.
19+
더 자세한 내용은 용어집, 예제 유니코드 사용 가능 제품, 기술 정보 및 기타 유용한 정보를 참조하십시오.

0 commit comments

Comments
 (0)