Skip to content

Commit d9bcb2e

Browse files
LukasWallrichclaudericharddushime
authored
Fix Turkish glossary bugs: sorting, language links, related terms, empty entries (#666)
- Add sort_key to generation script so Turkish special chars (ö, ç, ğ, ı, ş, ü) sort correctly relative to their base letters instead of after 'z'; regenerate all glossary files with sort_key - Fix language switcher to show "Also available in" for terms whose title is identical across languages (BIZARRE, FORRT, Git, HARKing, etc.) by falling back to the title itself when no [English] brackets are present - Fix related terms in non-English glossaries to link to English entries when no translation-language page exists - Skip entries with empty definitions in all languages; delete 11 existing empty-definition files (8 Turkish, 2 English, 1 Arabic) - Update Turkish landing page text from source GDoc (örn. abbreviation, sentence punctuation, mentörlük spelling, en-dash in citation, son-baskı versiyonu link text) Closes #663 Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Richard Dushime <45734838+richarddushime@users.noreply.github.com>
1 parent 852ddfb commit d9bcb2e

1,055 files changed

Lines changed: 2863 additions & 1067 deletions

File tree

Some content is hidden

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

content/glossary/_create_glossaries.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,17 @@ def safe_get(row, column, default=""):
9494
except Exception:
9595
return default
9696

97+
def sort_key_for_language(title, language_code):
98+
"""Generate a sort key that handles language-specific character ordering."""
99+
key = title.lower()
100+
if language_code == 'TR':
101+
# Turkish alphabet order: ... c ç d ... g ğ h i ı j ... o ö p ... s ş t u ü v ...
102+
# Map special chars so they sort just after their base char
103+
key = key.replace('ç', 'cz').replace('ğ', 'gz').replace('ı', 'iz')
104+
key = key.replace('ö', 'oz').replace('ş', 'sz').replace('ü', 'uz')
105+
return key
106+
107+
97108
def clean_filename(title, max_length=200):
98109
"""Clean title for use as filename"""
99110
# Extract main title (before English title in square brackets)
@@ -157,10 +168,15 @@ def clean_filename(title, max_length=200):
157168
processed_references = process_references(raw_references, apa_lookup, missing_refs)
158169

159170
# Build entry
171+
definition = safe_get(row, f"{language_code}_definition" if language_code == "EN" else f"{language_code}_def")
172+
if not definition:
173+
continue
174+
160175
entry = {
161176
"type": "glossary",
162177
"title": title,
163-
"definition": safe_get(row, f"{language_code}_definition" if language_code == "EN" else f"{language_code}_def"),
178+
"sort_key": sort_key_for_language(title, language_code),
179+
"definition": definition,
164180
"related_terms": list(dict.fromkeys(safe_get(row, "Related_terms").split("; "))) if safe_get(row, "Related_terms") else [],
165181
"references": processed_references,
166182
"drafted_by": [safe_get(row, "Originally drafted by") or safe_get(row, "Drafted by")] if (safe_get(row, "Originally drafted by") or safe_get(row, "Drafted by")) else [],

content/glossary/_glossaries.json

Lines changed: 1276 additions & 533 deletions
Large diffs are not rendered by default.

content/glossary/arabic/_ا_لانحياز_الت_وكيدي_.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"type": "glossary",
33
"title": "**ا**لانحياز التَّوكيديّ [Confirmation bias]",
4+
"sort_key": "**ا**لانحياز التَّوكيديّ [confirmation bias]",
45
"definition": "The tendency to seek out, interpret, favor and recall information in a way that supports one’s prior values, beliefs, expectations, or hypothesis. **الميل للبحث عن المعلومات، وتفسيرها، وتمييزها، واسترجاعها بطريقة تدعم قيم الشَّخص ومعتقداته، وتوقعاته، أو فرضياته. **المصطلحات ذات الصِّلة:** الانحياز التَّأكيدي، الانحياز الاجتماعيّ (المتوافق)، التَّحيُّز الشَّخصي",
56
"related_terms": [
67
"Confirmatory bias",

content/glossary/arabic/aka_replicability_or_replication_crisis_أزمة_إعادة_الإنتاج_أو_أزمة_الت_كرار.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"type": "glossary",
33
"title": "aka Replicability or replication crisis أزمة إعادة الإنتاج أو أزمة التِّكرار [Reproducibility crisis (aka Replicability or replication crisis)]",
4+
"sort_key": "aka replicability or replication crisis أزمة إعادة الإنتاج أو أزمة التِّكرار [reproducibility crisis (aka replicability or replication crisis)]",
45
"definition": "هي اكتشاف، وما تتعلق بها من تحوُّل في التَّفكير، والثَّقافة الأكاديميَّة، إنَّ نسبة كبيرة من الدِّراسات العلميَّة المنشورة في مختلف التَّخصُّصات غير قابلة للتِّكرار (Open Science Collaboration, 2015). ويعزى ذلك للافتقار إلى النَّزاهة، ونقص جودة وسلامة ممارسات البحث والنَّشر- مثل تحيُّز النَّشر- وممارسات البحث المشكوك فيها، والافتقار إلى الشَّفافيَّة؛ ممَّا يؤدِّي إلى تضخم معدَّل النّتائج الإيجابيَّة الخاطئة. ووصف آخرون هذه العمليَّة بأنَّها \"ثورة المصداقيَّة\" نحو تحسين هذه الممارسات. **المصطلحات ذات الصِّلة**: أزمة المصداقيَّة، تحيُّز النَّشر (مشكلة درج الملفَّات) ، ممارسات البحث المشكوك فيها،أو ممارسات إعداد التَّقارير المشكوك فيها، قابليَّة التِّكرار، قابليَّة إعادة الإنتاج.",
56
"related_terms": [
67
"Credibility crisis",

content/glossary/arabic/analyses_المتانة_في_التحليلات.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"type": "glossary",
33
"title": "analyses المتانة في التحليلات [Robustness (analyses)]",
4+
"sort_key": "analyses المتانة في التحليلات [robustness (analyses)]",
45
"definition": "استمرار دعم فرضيّة ما في ظل تغيُّر المسار المنهجي، أو التَّحليلي. وبعبارة أخرى، تطبيق طرق ومسارات تحليل مختلفة لفحص ما إذا كان نفس الاستنتاج مدعومًا في ظل ظروف تحليليَّة مختلفة. **المصطلحات ذات الصِّلة**: المعامل المتعدِّدة، تحليل الأكوان المتعدِّدة، تحليلات الحساسيَّة، تحليل منحنى المواصفات **التَّعريف البديل:** \"تشير المتانة إلى استقرار الاستنتاجات التَّجريبيَّة للتَّغيرات في الافتراضات الأساسيَّة، أو الإجراءات التَّجريبيَّة وهذا يرتبط إلى حدٍّ ما بمفهوم التَّعميم (المعروف أيضًا باسم قابليّة النَّقل)، والذي يشير إلى استمرار التَّأثير في الإعدادات المختلفة عن إطار العمل التَّجريبي وخارجه \\[...\\] ما إذا كان تصميم الدِّراسة مشابهًا بدرجة كافية للتَّصميم الأصلي أم لا؛ ليتم اعتباره تكرارًا، أو \"اختبار المتانة\"، أو بعض الاختلافات العديدة التي تم تحديدها في التِّكرار الخالص، لا سيما في العلوم الاجتماعيَّة (كالتِّكرار المفاهيمي، والتِّكرار الكاذب)، وهو سؤال غير محسوم\" (Goodman et al., 2016).",
56
"related_terms": [
67
"Many Labs",

content/glossary/arabic/apc_رسوم_الن_شر.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"type": "glossary",
33
"title": "APC رسوم النَّشر [Article Processing Charge (APC)]",
4+
"sort_key": "apc رسوم النَّشر [article processing charge (apc)]",
45
"definition": "رسوم النَّشر هي رسوم يفرضها النَّاشر على المؤلفين مقابل نشر واستضافة مقال مفتوح الوصول. غالبًا ما تهدف رسوم النَّشر إلى التَّعويض عن الخسارة المحتملة في الإيرادات التي قد تتعرَّض لها المجلة عند الانتقال من نماذج النَّشر التَّقليديَّة، مثل خدمات الاشتراك، أو الدَّفع لكل عرض، والوصول المفتوح أيضًا. في حين أنَّ بعض المجلات تتقاضى حوالي 300 دولار أمريكي فقط، فإنَّ رسوم النَّشر تتباين كثيرًا، من 1000 دولار أمريكي (مثل مجلة \"التَّقدم في الأساليب، والممارسات في العلوم النَّفسيَّة\") أو أقل، إلى أكثر من 10000 دولار أمريكي (مثل مجلة \"الطَّبيعة\"). في حين أنَّ بعض النَّاشرين يقدمون إعفاءات للباحثين من مناطق معيَّنة من العالم، أو الذين لا يملكون الدَّعم، فقد تم انتقاد بعض رسوم النشر كونها لا تتناسب مع المعالجة الفعلية للبحوث والاستضافة الفعليَّة (Grossmann & Brembs, 2021\\) ولكونهم قد يخلقون عدم مساواة بين العلماء حيث أن البعض منهم يمكنهم تحمل تكلفة إتاحة أعمالهم مجانًا (Smith et al., 2020). **المصطلحات ذات الصِّلة:** الوصول المفتوح، نقص التَّمثيل.",
56
"related_terms": [
67
"Open Access",

content/glossary/arabic/artificial_intelligence_علم_الوجود_الذ_كاء_الاصطناعي.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"type": "glossary",
33
"title": "Artificial Intelligence علم الوجود الذَّكاء الاصطناعي [Ontology (Artificial Intelligence)]",
4+
"sort_key": "artificial intelligence علم الوجود الذَّكاء الاصطناعي [ontology (artificial intelligence)]",
45
"definition": "مجموعة من البديهيات في أي مجال، والتي تساعد على تصنيف طبيعة العناصر تحت الدِّراسة، وشرح العلاقة بينها. **المصطلحات ذات الصِّلة**: علم وظائف العناصر، نظريَّة المعرفة، علم التَّصنيف.",
56
"related_terms": [
67
"Axiology",

content/glossary/arabic/cc_license_رخصة_المشاع_الإبداعي_.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"type": "glossary",
33
"title": "CC license رخصة المشاع الإبداعيّ [Creative Commons (CC) license]",
4+
"sort_key": "cc license رخصة المشاع الإبداعيّ [creative commons (cc) license]",
45
"definition": "‏مجموعة من التَّراخيص لحقوق النَّشر المجانيَّة سهلة الاستخدام، حيث تحدِّد حقوق المؤلِّفين، ومستخدمي البيانات، والمواد المفتوحة بطريقة موحّدة. تُمكِّن تراخيص المشاع الإبداعي المؤلِّفين من مشاركة العمل المحمي بموجب قانون حقوق الطَّبع والنَّشر مع الجمهور، ويأتي في أشكال مختلفة مع بنود أكثر أو أقل. فعلى سبيل المثال: تتيح لك رخصة \"الإسناد-غير تجاري-المشاركة بالمثل 4.0 الدولية\" مشاركة المواد وتعديلها بشرط أن ينسب العمل للكُتّاب الأصليين، والإشارة إلى تغييرات إن وجدت، والمشاركة بموجب نفس التَّرخيص، وأن لا تستخدم المواد لأغراض تجاريَّة. **المصطلحات ذات الصِّلة**: ‏حقوق الطَّبع والنَّشر، التَّرخيص. **تعريف بديل:** (إن أمكن) المشاع الإبداعي هي منظمة دولية غير ربحية توفر تراخيص المشاع الإبداعي بهدف تقليل العقبات القانونية أمام مشاركة المعرفة والإبداع.",
56
"related_terms": [
67
"Copyright",

content/glossary/arabic/cobidas_لجنة_أفضل_الممارسات_في_تحليل_البيانات_ومشاركتها.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"type": "glossary",
33
"title": "COBIDAS لجنة أفضل الممارسات في تحليل البيانات ومشاركتها [Committee on Best Practices in Data Analysis and Sharing (COBIDAS)]",
4+
"sort_key": "cobidas لجنة أفضل الممارسات في تحليل البيانات ومشاركتها [committee on best practices in data analysis and sharing (cobidas)]",
45
"definition": "طور مجتمع التَّصوير العصبي التابع لمنظمة رسم خرائط الدِّماغ البشري دليلًا لأفضل الممارسات في جمع بيانات التَّصوير العصبي، وتحليلها وإعداد التَّقارير الخاصّة بها، ومشاركة كلّ من البيانات والنَّص البرمجي للتَّحليل. يتضمن هذا المبدأ ثمانية عناصر يجب استيفاؤها عند كتابة أو تقديم مخطوطة من أجل تحسين طرق إعداد التَّقارير، والصُّور العصبيَّة النَّاتجة لتحقيق أقصى درجات الشَّفافيَّة وإعادة الإنتاج. **تعريف بديل: (إن أمكن)** قائمة مرجعية لتحليل البيانات ومشاركتها.",
56
"related_terms": [],
67
"references": [

content/glossary/arabic/cog_قيود_الت_عميم.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"type": "glossary",
33
"title": "COG قيود التَّعميم [Constraints on Generality (COG)]",
4+
"sort_key": "cog قيود التَّعميم [constraints on generality (cog)]",
45
"definition": "عبارة تحدّد بشكل صريح، وتبرِّر المجتمع المستهدف، وظروف النَّتائج التي دوِّنت. يجب أن يكون الباحثون صريحين بشأن القيود المحتملة لتعميم نتائج بحوثهم (Simons et al., 2017). وينبغي على الباحثين تقديم أوصاف تفصيليَّة لعيِّنة المجتمع والعوامل السِّياقيَّة التي قد تؤثرعلى النَّتائج بحيث يمكن لمحاولات التِّكرار المستقبليَّة أن تأخذ هذه العوامل بعين الاعتبار (Brandt et al., 2014). من المفترض ألا يكون للشروط غير المدرجة صراحةً صلة نظريَّة بإمكانيَّة تكرار التَّأثير. **المصطلحات ذات الصِّلة:** بيزار، التَّنوع، العدالة، القابلية للتَّعميم، الشمول، قابليَّة إعادة الإنتاج، التِّكرار، سترينج: الخلفية الاجتماعية والقابلية للتتبع والاختبار الذاتي وتاريخ التربية والتأقلم والتّعود، وِيرد",
56
"related_terms": [
67
"BIZARRE",

0 commit comments

Comments
 (0)