.\" -*- coding: UTF-8 -*- .\" Copyright 1993, Thomas Koenig .\" Copyright 2014, Michael Kerrisk .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH locale 7 "8 فبراير 2026" "صفحات دليل لينكس 6.18" .SH الاسم locale \- وصف لدعم اللغات المتعددة .SH موجز .nf \fB#include \fP .fi .SH الوصف المحلية (locale) هي مجموعة من القواعد اللغوية والثقافية. تغطي هذه القواعد جوانب مثل لغة الرسائل، ومجموعات المحارف المختلفة، والاتفاقيات المعجمية، وما إلى ذلك. يحتاج البرنامج إلى القدرة على تحديد محليته والتصرف وفقًا لذلك ليكون قابلًا للنقل عبر الثقافات المختلفة. .P تُصرّح الترويسة \fI\fP عن أنواع بيانات ودوال وماكروهات مفيدة في هذه المهمة. .P الدوال التي تُصرّح عنها هي \fBsetlocale\fP(3) لضبط المحلية الحالية، و\fBlocaleconv\fP(3) للحصول على معلومات حول تنسيق الأرقام. .P هناك فئات مختلفة لمعلومات المحلية التي قد يحتاجها البرنامج؛ وهي مُصرّح عنها كماكروهات. باستخدامها كمعامل أول للدالة \fBsetlocale\fP(3)، يمكن ضبط إحداها على المحلية المطلوبة: .TP \fBLC_ADDRESS\fP (امتداد GNU، منذ glibc 2.2) .\" See ISO/IEC Technical Report 14652 يغير الإعدادات التي تصف التنسيقات (مثل العناوين البريدية) المستخدمة لوصف المواقع والعناصر المتعلقة بالجغرافيا. يمكن للتطبيقات التي تحتاج هذه المعلومات استخدام \fBnl_langinfo\fP(3) لاسترداد عناصر غير قياسية، مثل \fB_NL_ADDRESS_COUNTRY_NAME\fP (اسم البلد، بلغة المحلية) و\fB_NL_ADDRESS_LANG_NAME\fP (اسم اللغة، بلغة المحلية)، والتي تعيد سلاسل نصية مثل "Deutschland" و "Deutsch" (لمحليات اللغة الألمانية). (تُسرد أسماء العناصر الأخرى في \fI\fP.) .TP \fBLC_COLLATE\fP تحكم هذه الفئة قواعد المقارنة المستخدمة للفرز والتعبيرات النمطية، بما في ذلك فئات تكافؤ المحارف وعناصر المقارنة متعددة المحارف. تغير فئة المحلية هذه سلوك الدوال \fBstrcoll\fP(3) و\fBstrxfrm\fP(3)، واللتان تُستخدمان لمقارنة السلاسل في الأبجدية المحلية. على سبيل المثال، يُفرز حرف s الحاد الألماني كـ "ss". .TP \fBLC_CTYPE\fP تحدد هذه الفئة تفسير تسلسلات البايت كمحارف (مثل المحارف الأحادية مقابل متعددة البايتات)، وتصنيفات المحارف (مثل الأبجدية أو الأرقام)، وسلوك فئات المحارف. في أنظمة glibc، تحدد هذه الفئة أيضًا قواعد نقل الحروف لـ \fBiconv\fP(1) و\fBiconv\fP(3). تغير سلوك دوال معالجة وتصنيف المحارف، مثل \fBisupper\fP(3) و\fBtoupper\fP(3)، ودوال المحارف متعددة البايتات مثل \fBmblen\fP(3) أو \fBwctomb\fP(3). .TP \fBLC_IDENTIFICATION\fP (امتداد GNU، منذ glibc 2.2) .\" See ISO/IEC Technical Report 14652 تغيير الإعدادات المتعلقة بالبيانات الوصفية للمحلية. يمكن للتطبيقات التي تحتاج لهذه المعلومات استخدام \fBnl_langinfo\fP(3) لاسترداد العناصر غير القياسية، مثل \fB_NL_IDENTIFICATION_TITLE\fP (عنوان مستند المحلية هذا) و\fB_NL_IDENTIFICATION_TERRITORY\fP (الإقليم الجغرافي الذي ينطبق عليه مستند المحلية هذا)، والتي قد تعيد سلاسل نصية مثل "English locale for the USA" و "USA". (تُسرد أسماء العناصر الأخرى في \fI\fP.) .TP \fBLC_MONETARY\fP تحدد هذه الفئة التنسيق المستخدم للقيم الرقمية المتعلقة بالعملات. يغير هذا المعلومات التي تعيدها \fBlocaleconv\fP(3)، والتي تصف الطريقة التي تُطبع بها الأرقام عادةً، مع تفاصيل مثل النقطة العشرية مقابل الفاصلة العشرية. تُستخدم هذه المعلومات داخليًا بواسطة الدالة \fBstrfmon\fP(3). .TP \fBLC_MESSAGES\fP تؤثر هذه الفئة على اللغة التي تُعرض بها الرسائل وشكل الإجابة بالإيجاب أو النفي. تحتوي مكتبة GNU C على دوال \fBgettext\fP(3) و\fBngettext\fP(3) و\fBrpmatch\fP(3) لتسهيل استخدام هذه المعلومات. تلتزم عائلة دوال GNU gettext أيضًا بمتغير البيئة \fBLANGUAGE\fP (الذي يحتوي على قائمة محليات مفصولة بنقطتين رأسيين) إذا ضُبطت الفئة على محلية صالحة بخلاف \fB\[dq]C\[dq]\fP. تؤثر هذه الفئة أيضًا على سلوك \fBcatopen\fP(3). .TP \fBLC_MEASUREMENT\fP (امتداد GNU، منذ glibc 2.2) تغيير الإعدادات المتعلقة بنظام القياس في المحلية (أي النظام المتري مقابل الوحدات العرفية الأمريكية). يمكن للتطبيقات استخدام \fBnl_langinfo\fP(3) لاسترداد العنصر غير القياسي \fB_NL_MEASUREMENT_MEASUREMENT\fP، الذي يعيد مؤشرًا إلى محرف له القيمة 1 (متري) أو 2 (وحدات عرفية أمريكية). .TP \fBLC_NAME\fP (امتداد GNU، منذ glibc 2.2) .\" See ISO/IEC Technical Report 14652 تغيير الإعدادات التي تصف التنسيقات المستخدمة لمخاطبة الأشخاص. يمكن للتطبيقات التي تحتاج لهذه المعلومات استخدام \fBnl_langinfo\fP(3) لاسترداد العناصر غير القياسية، مثل \fB_NL_NAME_NAME_MR\fP (التحية العامة للرجال) و \fB_NL_NAME_NAME_MS\fP (التحية العامة للنساء)، والتي تعيد سلاسل نصية مثل "Herr" و "Frau" (لمحليات اللغة الألمانية). (تُسرد أسماء العناصر الأخرى في \fI\fP.) .TP \fBLC_NUMERIC\fP تحدد هذه الفئة قواعد التنسيق المستخدمة للقيم الرقمية غير المتعلقة بالعملات \em على سبيل المثال، فاصل الآلاف والمحرف الجذري (نقطة في معظم البلدان الناطقة بالإنجليزية، ولكنها فاصلة في العديد من المناطق الأخرى). تؤثر على دوال مثل \fBprintf\fP(3) و\fBscanf\fP(3) و\fBstrtod\fP(3). يمكن أيضًا قراءة هذه المعلومات باستخدام الدالة \fBlocaleconv\fP(3). .TP \fBLC_PAPER\fP (امتداد GNU، منذ glibc 2.2) .\" See ISO/IEC Technical Report 14652 تغيير الإعدادات المتعلقة بأبعاد حجم الورق القياسي (مثل US letter مقابل A4). يمكن للتطبيقات التي تحتاج للأبعاد الحصول عليها باستخدام \fBnl_langinfo\fP(3) لاسترداد العنصرين غير القياسيين \fB_NL_PAPER_WIDTH\fP و \fB_NL_PAPER_HEIGHT\fP، واللذان يعيدان قيم \fIint\fP تحدد الأبعاد بالمليمترات. .TP \fBLC_TELEPHONE\fP (امتداد GNU، منذ glibc 2.2) .\" See ISO/IEC Technical Report 14652 تغيير الإعدادات التي تصف التنسيقات المستخدمة مع خدمات الهاتف. يمكن للتطبيقات التي تحتاج لهذه المعلومات استخدام \fBnl_langinfo\fP(3) لاسترداد العناصر غير القياسية، مثل \fB_NL_TELEPHONE_INT_PREFIX\fP (البادئة الدولية المستخدمة للاتصال بالأرقام في هذه المحلية)، والتي تعيد سلسلة نصية مثل "49" (لألمانيا). (تُسرد أسماء العناصر الأخرى في \fI\fP.) .TP \fBLC_TIME\fP تحكم هذه الفئة التنسيق المستخدم لقيم التاريخ والوقت. على سبيل المثال، تستخدم معظم أوروبا نظام 24 ساعة مقابل نظام 12 ساعة المستخدم في الولايات المتحدة. يؤثر ضبط هذه الفئة على سلوك دوال مثل \fBstrftime\fP(3) و\fBstrptime\fP(3). .TP \fBLC_ALL\fP كل ما سبق. .P إذا كان المعامل الثاني لـ \fBsetlocale\fP(3) هو سلسلة فارغة، \fI\[dq]\[dq]\fP، للمحلية المبدئية، فإنها تُحدد باستخدام الخطوات التالية: .IP (1) 5 إذا وُجد متغير بيئة \fBLC_ALL\fP غير فارغ، تُستخدم قيمة \fBLC_ALL\fP. .IP (2) إذا وُجد متغير بيئة بنفس اسم إحدى الفئات المذكورة أعلاه وكان غير فارغ، تُستخدم قيمته لتلك الفئة. .IP (3) إذا وُجد متغير بيئة \fBLANG\fP غير فارغ، تُستخدم قيمة \fBLANG\fP. .P تُتاح القيم المتعلقة بالتنسيق الرقمي المحلي في \fIstruct lconv\fP الذي تعيده دالة \fBlocaleconv\fP(3)، والتي لها التصريح التالي: .P .in +4n .EX struct lconv { \& /* معلومات رقمية (غير نقدية) */ \& char *decimal_point; /* المحرف الجذري */ char *thousands_sep; /* فاصل لمجموعات الأرقام يسار المحرف الجذري */ char *grouping; /* كل عنصر هو عدد الأرقام في مجموعة؛ العناصر ذات الفهارس الأعلى تكون أبعد جهة اليسار. العنصر ذو القيمة CHAR_MAX يعني عدم إجراء المزيد من التجميع. العنصر ذو القيمة 0 يعني استخدام العنصر السابق لجميع المجموعات الأبعد جهة اليسار. */ \& /* الحقول المتبقية للمعلومات النقدية */ \& char *int_curr_symbol; /* المحارف الثلاثة الأولى هي رمز عملة من ISO 4217. المحرف الرابع هو الفاصل. المحرف الخامس هو \[aq]\[rs]0\[aq]. */ char *currency_symbol; /* رمز العملة المحلي */ char *mon_decimal_point; /* المحرف الجذري */ char *mon_thousands_sep; /* مثل \f[I]thousands_sep\fR أعلاه */ char *mon_grouping; /* مثل \f[I]grouping\fR أعلاه */ char *positive_sign; /* علامة للقيم الموجبة */ char *negative_sign; /* علامة للقيم السالبة */ char int_frac_digits; /* الأرقام الكسرية الدولية */ char frac_digits; /* الأرقام الكسرية المحلية */ char p_cs_precedes; /* 1 إذا سبق رمز_العملة قيمة موجبة، 0 إذا تبعها */ char p_sep_by_space; /* 1 إذا فصلت مسافة رمز_العملة عن قيمة موجبة */ char n_cs_precedes; /* 1 إذا سبق رمز_العملة قيمة سالبة، 0 إذا تبعها */ char n_sep_by_space; /* 1 إذا فصلت مسافة رمز_العملة عن قيمة سالبة */ /* مواضع العلامة الموجبة والسالبة: 0 الأقواس تحيط بالكمية ورمز_العملة. 1 سلسلة العلامة تسبق الكمية ورمز_العملة. 2 سلسلة العلامة تلي الكمية ورمز_العملة. 3 سلسلة العلامة تسبق رمز_العملة مباشرة. 4 سلسلة العلامة تلي رمز_العملة مباشرة. */ char p_sign_posn; char n_sign_posn; }; .EE .in .SS "امتدادات POSIX.1\-2008 لواجهة برمجة تطبيقات المحلية" وضعت POSIX.1\-2008 معايير لعدد من الامتدادات لواجهة برمجة تطبيقات المحلية، بناءً على التطبيقات التي ظهرت لأول مرة في glibc 2.3. صُممت هذه الامتدادات لمعالجة مشكلة أن واجهات برمجة تطبيقات المحلية التقليدية لا تتوافق جيدًا مع التطبيقات متعددة الخيوط والتطبيقات التي يجب أن تتعامل مع محليات متعددة. .P تأخذ الامتدادات شكل دوال جديدة لإنشاء كائنات المحلية والتلاعب بها (\fBnewlocale\fP(3)، و\fBfreelocale\fP(3)، و\fBduplocale\fP(3)، و\fBuselocale\fP(3)) ودوال مكتبية مختلفة جديدة باللاحقة "_l" (مثل \fBtoupper_l\fP(3)) التي توسع واجهات برمجة التطبيقات التقليدية المعتمدة على المحلية (مثل \fBtoupper\fP(3)) للسماح بتحديد كائن محلية يجب تطبيقه عند تنفيذ الدالة. .SH البيئة يستخدم متغير البيئة التالي بواسطة \fBnewlocale\fP(3) و\fBsetlocale\fP(3)، وبالتالي يؤثر على جميع البرامج المحلية غير المميزة: .TP \fBLOCPATH\fP قائمة من مسارات الأسماء، مفصولة بنقطتين رأسيين (\[aq]:\[aq])، والتي يجب استخدامها للعثور على بيانات المحلية. إذا ضُبط هذا المتغير، تُستخدم فقط ملفات بيانات المحلية المجمعة الفردية من \fBLOCPATH\fP ومسار بيانات المحلية المبدئي للنظام؛ ولا تُستخدم أي أرشيفات محلية متاحة (انظر \fBlocaledef\fP(1)). يُبحث عن ملفات بيانات المحلية المجمعة الفردية تحت أدلة فرعية تعتمد على المحلية المستخدمة حاليًا. على سبيل المثال، عند استخدام \fIen_GB.UTF\-8\fP لفئة ما، يُبحث في الأدلة الفرعية التالية، بهذا الترتيب: \fIen_GB.UTF\-8\fP، و\fIen_GB.utf8\fP، و\fIen_GB\fP، و\fIen.UTF\-8\fP، و\fIen.utf8\fP، و\fIen\fP. .SH الملفات .TP \fI/usr/lib/locale/locale\-archive\fP موقع أرشيف المحلية المبدئي المعتاد. .TP \fI/usr/lib/locale\fP المسار المبدئي المعتاد لملفات المحلية الفردية المجمعة. .SH المعايير .\" .\" The GNU gettext functions are specified in LI18NUX2000. POSIX.1\-2001. .SH "انظر أيضًا" \fBiconv\fP(1)، و\fBlocale\fP(1)، و\fBlocaledef\fP(1)، و\fBcatopen\fP(3)، و\fBgettext\fP(3)، و\fBiconv\fP(3)، و\fBlocaleconv\fP(3)، و\fBmbstowcs\fP(3)، و\fBnewlocale\fP(3)، و\fBngettext\fP(3)، و\fBnl_langinfo\fP(3)، و\fBrpmatch\fP(3)، و\fBsetlocale\fP(3)، و\fBstrcoll\fP(3)، و\fBstrfmon\fP(3)، و\fBstrftime\fP(3)، و\fBstrxfrm\fP(3)، و\fBuselocale\fP(3)، و\fBwcstombs\fP(3)، و\fBlocale\fP(5)، و\fBcharsets\fP(7)، و\fBunicode\fP(7)، و\fButf\-8\fP(7) .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .