catopen(3)

الاسم
catopen, catclose - فتح/إغلاق كتالوج رسائل

المكتبة
مكتبة سي المعيارية (libc، -lc)

موجز
#include <nl_types.h>

nl_catd catopen(const char *name, int flag);
int catclose(nl_catd catalog);

الوصف
تفتح الدالة catopen() كتالوج رسائل وتُعيد واصف كتالوج. يبقى الواصف صالحًا حتى catclose() أو execve(2). إذا استُخدم واصف ملف لتنفيذ واصفات الكتالوج، فسيُضبط العلم FD_CLOEXEC.

يحدد الوسيط name اسم كتالوج الرسائل الذي سيُفتح. إذا حدد name مسارًا مطلقًا (أي يحتوي على '/')، فإن name يحدد اسم مسار لكتالوج الرسائل. وإلا، يُستخدم المتغير البيئي NLSPATH مع استبدال name بـ %N (انظر locale(7)). غير محدد ما إذا كان NLSPATH سيُستخدم عندما تملك العملية صلاحيات الجذر. إذا لم يوجد NLSPATH في البيئة، أو إذا تعذر فتح كتالوج رسائل في أي من المسارات المحددة به، فسيُستخدم مسار محدد بالتنفيذ. قد يعتمد هذا المسار المبدئي الأخير على إعداد لغة LC_MESSAGES عندما يكون الوسيط flag هو NL_CAT_LOCALE وعلى المتغير البيئي LANG عندما يكون الوسيط flag هو 0. قد يُبطل تغيير جزء LC_MESSAGES من اللغة واصفات الكتالوج المفتوحة.

يُستخدم الوسيط flag لـ catopen() للإشارة إلى مصدر اللغة المستخدمة. إذا ضُبط على NL_CAT_LOCALE، فسيستخدم إعداد اللغة الحالي لـ LC_MESSAGES. وإلا، فسيستخدم المتغير البيئي LANG.

تغلق الدالة catclose() كتالوج الرسائل المُعرّف بـ catalog. تُبطل أي مراجع لاحقة لكتالوج الرسائل المُعرّف بـ catalog.

قيمة الإرجاع
تُعيد الدالة catopen() واصف كتالوج رسائل من النوع nl_catd عند النجاح. عند الفشل، تُعيد (nl_catd) -1 وتضبط errno للإشارة إلى الخطأ. تشمل قيم الأخطاء المحتملة جميع القيم الممكنة لاستدعاء open(2).

تُعيد الدالة catclose() 0 عند النجاح، أو -1 عند الفشل.

البيئة

LC_MESSAGES
    قد يكون مصدر إعداد لغة LC_MESSAGES، وبالتالي يحدد اللغة المستخدمة إذا ضُبط flag على NL_CAT_LOCALE.

LANG
    اللغة المستخدمة إذا كان flag هو 0.

السمات
للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر attributes(7).
الواجهة | السمة | القيمة
catopen() | سلامة الخيوط | بيئة آمنة لتعدد الخيوط (MT-Safe)
catclose() | سلامة الخيوط | MT-Safe

الإصدارات
ما سبق هو وصف POSIX.1. قيمة glibc لـ NL_CAT_LOCALE هي 1. يختلف المسار المبدئي، لكنه عادةً يبحث في عدد من الأماكن أسفل /usr/share/locale.

المعايير
POSIX.1-2008.

التاريخ
POSIX.1-2001.

انظر أيضًا
catgets(3), setlocale(3)

ترجمة
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.