calibre - en to ar translation catalogue (405 entries)

en: API documentation for plugins
ar: توثيق API للإضافات

en: Defines various abstract base classes that can be subclassed to create powerful plugins. The useful classes are:
ar: يعرّف فئات أساسية مجردة مختلفة يمكن اشتقاقها لإنشاء إضافات قوية. الفئات المفيدة هي:

en: Plugin
ar: إضافة

en: A calibre plugin. Useful members include:
ar: إضافة calibre. تتضمن الأعضاء المفيدة:

en: ``self.installation_type``: Stores how the plugin was installed.
ar: ``self.installation_type``: يخزن كيفية تثبيت الإضافة.

en: ``self.plugin_path``: Stores path to the ZIP file that contains
ar: ``self.plugin_path``: يخزن مسار ملف ZIP الذي يحتوي على

en: this plugin or None if it is a builtin plugin
ar: هذه الإضافة أو لا شيء إذا كانت إضافة مدمجة

en: ``self.site_customization``: Stores a customization string entered
ar: ``self.site_customization``: يخزن سلسلة تخصيص تم إدخالها

en: by the user.
ar: من قبل المستخدم.

en: Methods that should be overridden in sub classes:
ar: الأساليب التي يجب تجاوزها في الفئات الفرعية:

en: :meth:`initialize`
ar: :meth:`تهيئة`

en: :meth:`customization_help`
ar: :meth:`مساعدة_التخصيص`

en: Useful methods:
ar: أساليب مفيدة:

en: :meth:`temporary_file`
ar: :meth:`ملف_مؤقت`

en: :meth:`__enter__`
ar: :meth:`__دخول__`

en: :meth:`load_resources`
ar: :meth:`تحميل_الموارد`

en: List of platforms this plugin works on. For example: ``['windows', 'osx', 'linux']``
ar: قائمة بالأنظمة الأساسية التي تعمل عليها هذه الإضافة. على سبيل المثال: ``['windows', 'osx', 'linux']``

en: The name of this plugin. You must set it something other than Trivial Plugin for it to work.
ar: اسم هذه الإضافة. يجب عليك تعيينه لشيء آخر غير إضافة تافهة لكي يعمل.

en: The version of this plugin as a 3-tuple (major, minor, revision)
ar: إصدار هذه الإضافة كـ 3-tuple (رئيسي، فرعي، مراجعة)

en: A short string describing what this plugin does
ar: سلسلة قصيرة تصف ما تفعله هذه الإضافة

en: The author of this plugin
ar: مؤلف هذه الإضافة

en: When more than one plugin exists for a filetype, the plugins are run in order of decreasing priority. Plugins with higher priority will be run first. The highest possible priority is ``sys.maxsize``. Default priority is 1.
ar: عند وجود أكثر من إضافة لنوع ملف واحد، يتم تشغيل الإضافات بترتيب الأولوية التنازلية. سيتم تشغيل الإضافات ذات الأولوية الأعلى أولاً. أعلى أولوية ممكنة هي ``sys.maxsize``. الأولوية الافتراضية هي 1.

en: The earliest version of calibre this plugin requires
ar: أقدم إصدار من calibre تتطلبه هذه الإضافة

en: The way this plugin is installed
ar: طريقة تثبيت هذه الإضافة

en: If False, the user will not be able to disable this plugin. Use with care.
ar: إذا كان False، فلن يتمكن المستخدم من تعطيل هذه الإضافة. استخدم بحذر.

en: The type of this plugin. Used for categorizing plugins in the GUI
ar: نوع هذه الإضافة. تستخدم لتصنيف الإضافات في واجهة المستخدم الرسومية

en: Called once when calibre plugins are initialized.  Plugins are re-initialized every time a new plugin is added. Also note that if the plugin is run in a worker process, such as for adding books, then the plugin will be initialized for every new worker process.
ar: يتم استدعاؤها مرة واحدة عند تهيئة إضافات calibre. يتم إعادة تهيئة الإضافات في كل مرة تتم إضافة إضافة جديدة. لاحظ أيضًا أنه إذا تم تشغيل الإضافة في عملية عاملة، مثل إضافة الكتب، فسيتم تهيئة الإضافة لكل عملية عاملة جديدة.

en: Perform any plugin specific initialization here, such as extracting resources from the plugin ZIP file. The path to the ZIP file is available as ``self.plugin_path``.
ar: قم بإجراء أي تهيئة خاصة بالإضافة هنا، مثل استخراج الموارد من ملف ZIP الخاص بالإضافة. المسار إلى ملف ZIP متاح كـ ``self.plugin_path``.

en: Note that ``self.site_customization`` is **not** available at this point.
ar: لاحظ أن ``self.site_customization`` **غير** متاح في هذه المرحلة.

en: Implement this method and :meth:`save_settings` in your plugin to use a custom configuration dialog, rather then relying on the simple string based default customization.
ar: قم بتنفيذ هذا الأسلوب و :meth:`حفظ_الإعدادات` في الإضافة الخاصة بك لاستخدام مربع حوار تكوين مخصص، بدلاً من الاعتماد على التخصيص الافتراضي القائم على السلسلة البسيطة.

en: This method, if implemented, must return a QWidget. The widget can have an optional method validate() that takes no arguments and is called immediately after the user clicks OK. Changes are applied if and only if the method returns True.
ar: يجب أن تعيد هذه الطريقة، إذا تم تنفيذها، QWidget. يمكن أن تحتوي الأداة على طريقة اختيارية validate() لا تأخذ أي وسيطات ويتم استدعاؤها فورًا بعد أن ينقر المستخدم على موافق. يتم تطبيق التغييرات إذا وفقط إذا أعادت الطريقة True.

en: If for some reason you cannot perform the configuration at this time, return a tuple of two strings (message, details), these will be displayed as a warning dialog to the user and the process will be aborted.
ar: إذا لم تتمكن لسبب ما من إجراء التكوين في هذا الوقت، أعد زوجًا من سلسلتين (رسالة، تفاصيل)، سيتم عرضهما كـ مربع حوار تحذير للمستخدم وسيتم إحباط العملية.

en: Save the settings specified by the user with config_widget.
ar: احفظ الإعدادات المحددة من قبل المستخدم باستخدام config_widget.

en: Parameters
ar: المعلمات

en: The widget returned by :meth:`config_widget`.
ar: الأداة التي أعادها :meth:`config_widget`.

en: This method shows a configuration dialog for this plugin. It returns True if the user clicks OK, False otherwise. The changes are automatically applied.
ar: يعرض هذا الأسلوب مربع حوار تكوين لهذه الإضافة. يعيد True إذا نقر المستخدم على موافق، False بخلاف ذلك. يتم تطبيق التغييرات تلقائيًا.

en: If this plugin comes in a ZIP file (user added plugin), this method will allow you to load resources from the ZIP file.
ar: إذا كانت هذه الإضافة تأتي في ملف ZIP (إضافة أضافها المستخدم)، فإن هذا الأسلوب سيسمح لك بتحميل الموارد من ملف ZIP.

en: For example to load an image::
ar: على سبيل المثال لتحميل صورة::

en: List of paths to resources in the ZIP file using / as separator
ar: قائمة مسارات الموارد في ملف ZIP باستخدام / كفاصل

en: Returns
ar: يعيد

en: A dictionary of the form ``{name: file_contents}``. Any names that were not found in the ZIP file will not be present in the dictionary.
ar: قاموس بالشكل ``{الاسم: محتويات_الملف}``. أي أسماء لم يتم العثور عليها في ملف ZIP لن تكون موجودة في القاموس.

en: Return a string giving help on how to customize this plugin. By default raise a :class:`NotImplementedError`, which indicates that the plugin does not require customization.
ar: إعادة سلسلة توضح كيفية تخصيص هذه الإضافة. افتراضيًا اطرح :class:`NotImplementedError`، مما يشير إلى أن الإضافة لا تتطلب تخصيصًا.

en: If you re-implement this method in your subclass, the user will be asked to enter a string as customization for this plugin. The customization string will be available as ``self.site_customization``.
ar: إذا أعدت تنفيذ هذا الأسلوب في فئتك الفرعية، سيُطلب من المستخدم إدخال سلسلة كتخصيص لهذه الإضافة. ستكون سلسلة التخصيص متاحة كـ ``self.site_customization``.

en: Site customization could be anything, for example, the path to a needed binary on the user's computer.
ar: يمكن أن يكون تخصيص الموقع أي شيء، على سبيل المثال، المسار إلى ثنائي مطلوب على جهاز كمبيوتر المستخدم.

en: If True return HTML help, otherwise return plain text help.
ar: إذا كان True، أعد مساعدة HTML، وإلا أعد مساعدة نص عادي.

en: Return a file-like object that is a temporary file on the file system. This file will remain available even after being closed and will only be removed on interpreter shutdown. Use the ``name`` member of the returned object to access the full path to the created temporary file.
ar: إعادة كائن شبيه بالملف وهو ملف مؤقت على نظام الملفات. هذا الملف سيبقى متاحًا حتى بعد إغلاقه ولن يتم إزالته إلا عند إغلاق المفسر. استخدم عضو ``name`` في الكائن المعاد لـ الوصول إلى المسار الكامل للملف المؤقت الذي تم إنشاؤه.

en: The suffix that the temporary file will have.
ar: اللاحقة التي سيحتوي عليها الملف المؤقت.

en: This method is the main entry point for your plugins command line interface. It is called when the user does: calibre-debug -r "Plugin Name". Any arguments passed are present in the args variable.
ar: هذا الأسلوب هو نقطة الدخول الرئيسية لواجهة سطر الأوامر لإضافاتك. يتم استدعاؤه عندما يقوم المستخدم بـ: calibre-debug -r "اسم الإضافة". أي وسيطات تم تمريرها موجودة في متغير args.

en: FileTypePlugin
ar: إضافة نوع الملف

en: A plugin that is associated with a particular set of file types.
ar: إضافة مرتبطة بمجموعة معينة من أنواع الملفات.

en: Set of file types for which this plugin should be run. Use '*' for all file types. For example: ``{'lit', 'mobi', 'prc'}``
ar: مجموعة من أنواع الملفات التي يجب تشغيل هذه الإضافة من أجلها. استخدم '*' لجميع أنواع الملفات. على سبيل المثال: ``{'lit', 'mobi', 'prc'}``

en: If True, this plugin is run when books are added to the database
ar: إذا كان True، يتم تشغيل هذه الإضافة عند إضافة الكتب إلى قاعدة البيانات

en: If True, this plugin is run after books are added to the database. In this case the postimport and postadd methods of the plugin are called.
ar: إذا كان True، يتم تشغيل هذه الإضافة بعد إضافة الكتب إلى قاعدة البيانات. في هذه الحالة، يتم استدعاء أساليب postimport و postadd الخاصة بالإضافة.

en: If True, this plugin is run after a book is converted. In this case the postconvert method of the plugin is called.
ar: إذا كان True، يتم تشغيل هذه الإضافة بعد تحويل الكتاب. في هذه الحالة، يتم استدعاء أسلوب postconvert الخاص بالإضافة.

en: If True, this plugin is run after a book file is deleted from the database. In this case the postdelete method of the plugin is called.
ar: إذا كان True، يتم تشغيل هذه الإضافة بعد حذف ملف كتاب من قاعدة البيانات. في هذه الحالة، يتم استدعاء أسلوب postdelete الخاص بالإضافة.

en: If True, this plugin is run just before a conversion
ar: إذا كان True، يتم تشغيل هذه الإضافة قبل التحويل مباشرة

en: If True, this plugin is run after conversion on the final file produced by the conversion output plugin.
ar: إذا كان True، يتم تشغيل هذه الإضافة بعد التحويل على الملف النهائي الذي تنتجه إضافة إخراج التحويل.

en: Run the plugin. Must be implemented in subclasses. It should perform whatever modifications are required on the e-book and return the absolute path to the modified e-book. If no modifications are needed, it should return the path to the original e-book. If an error is encountered it should raise an Exception. The default implementation simply return the path to the original e-book. Note that the path to the original file (before any file type plugins are run, is available as self.original_path_to_file).
ar: تشغيل الإضافة. يجب تنفيذها في الفئات الفرعية. يجب أن تقوم بإجراء أي تعديلات مطلوبة على الكتاب الإلكتروني وإعادة المسار المطلق للكتاب الإلكتروني المعدل. إذا لم تكن هناك حاجة لتعديلات، يجب أن تعيد المسار إلى الكتاب الإلكتروني الأصلي. إذا واجهت خطأ، يجب أن تطرح استثناءً. التنفيذ الافتراضي يعيد ببساطة المسار إلى الكتاب الإلكتروني الأصلي. لاحظ أن المسار إلى الملف الأصلي (قبل تشغيل أي إضافات نوع الملف، متاح كـ self.original_path_to_file).

en: The modified e-book file should be created with the :meth:`temporary_file` method.
ar: يجب إنشاء ملف الكتاب الإلكتروني المعدل باستخدام الأسلوب :meth:`temporary_file`.

en: Absolute path to the e-book.
ar: المسار المطلق للكتاب الإلكتروني.

en: Absolute path to the modified e-book.
ar: المسار المطلق للكتاب الإلكتروني المعدل.

en: Called post import, i.e., after the book file has been added to the database. Note that this is different from :meth:`postadd` which is called when the book record is created for the first time. This method is called whenever a new file is added to a book record. It is useful for modifying the book record based on the contents of the newly added file.
ar: يتم استدعاؤها بعد الاستيراد، أي بعد إضافة ملف الكتاب إلى قاعدة البيانات. لاحظ أن هذا يختلف عن :meth:`postadd` الذي يتم استدعاؤه عند إنشاء سجل الكتاب لأول مرة. يتم استدعاء هذا الأسلوب كلما تمت إضافة ملف جديد إلى سجل كتاب. وهو مفيد لتعديل سجل الكتاب بناءً على محتويات الملف المضاف حديثًا.

en: Database id of the added book.
ar: معرف قاعدة البيانات للكتاب المضاف.

en: The file type of the book that was added.
ar: نوع ملف الكتاب الذي تم إضافته.

en: Library database.
ar: قاعدة بيانات المكتبة.

en: Called post conversion, i.e., after the conversion output book file has been added to the database. Note that it is run after a conversion only, not after a book is added. It is useful for modifying the book record based on the contents of the newly added file.
ar: يتم استدعاؤها بعد التحويل، أي بعد إضافة ملف الكتاب الناتج عن التحويل إلى قاعدة البيانات. لاحظ أنها تُشغل بعد التحويل فقط، وليس بعد إضافة كتاب. وهي مفيدة لتعديل سجل الكتاب بناءً على محتويات الملف المضاف حديثًا.

en: Called post deletion, i.e., after the book file has been deleted from the database. Note that it is not run when a book record is deleted, only when one or more formats from the book are deleted. It is useful for modifying the book record based on the format of the deleted file.
ar: يتم استدعاؤها بعد الحذف، أي بعد حذف ملف الكتاب من قاعدة البيانات. لاحظ أنها لا تُشغل عند حذف سجل كتاب، بل فقط عندما يتم حذف تنسيق واحد أو أكثر من الكتاب. وهي مفيدة لتعديل سجل الكتاب بناءً على تنسيق الملف المحذوف.

en: Called post add, i.e. after a book has been added to the db. Note that this is different from :meth:`postimport`, which is called after a single book file has been added to a book. postadd() is called only when an entire book record with possibly more than one book file has been created for the first time. This is useful if you wish to modify the book record in the database when the book is first added to calibre.
ar: يتم استدعاؤها بعد الإضافة، أي بعد إضافة كتاب إلى قاعدة البيانات. لاحظ أن هذا يختلف عن :meth:`postimport`، الذي يتم استدعاؤه بعد إضافة ملف كتاب واحد إلى كتاب. يتم استدعاء postadd() فقط عند إنشاء سجل كتاب كامل مع احتمال وجود أكثر من ملف كتاب لأول مرة. هذا مفيد إذا كنت ترغب في تعديل سجل الكتاب في قاعدة البيانات عند إضافة الكتاب لأول مرة إلى calibre.

en: Map of file format to path from which the file format was added. Note that this might or might not point to an actual existing file, as sometimes files are added as streams. In which case it might be a dummy value or a non-existent path.
ar: خريطة لتنسيق الملف إلى المسار الذي تمت إضافة تنسيق الملف منه. لاحظ أن هذا قد يشير أو لا يشير إلى ملف موجود فعليًا، حيث يتم أحيانًا إضافة الملفات كـ تدفقات. في هذه الحالة قد تكون قيمة وهمية أو مسارًا غير موجود.

en: Library database
ar: قاعدة بيانات المكتبة

en: Metadata plugins
ar: إضافات البيانات الوصفية

en: A plugin that implements reading metadata from a set of file types.
ar: إضافة تقوم بتنفيذ قراءة البيانات الوصفية من مجموعة من أنواع الملفات.

en: Set of file types for which this plugin should be run. For example: ``set(['lit', 'mobi', 'prc'])``
ar: مجموعة من أنواع الملفات التي يجب تشغيل هذه الإضافة من أجلها. على سبيل المثال: ``set(['lit', 'mobi', 'prc'])``

en: Return metadata for the file represented by stream (a file like object that supports reading). Raise an exception when there is an error with the input data.
ar: إرجاع البيانات الوصفية للملف الممثل بواسطة التدفق (كائن شبيه بالملف يدعم القراءة). اطرح استثناءً عند وجود خطأ في بيانات الإدخال.

en: The type of file. Guaranteed to be one of the entries in :attr:`file_types`.
ar: نوع الملف. مضمون أن يكون أحد الإدخالات في :attr:`file_types`.

en: A :class:`calibre.ebooks.metadata.book.Metadata` object
ar: كائن :class:`calibre.ebooks.metadata.book.Metadata`

en: Set metadata for the file represented by stream (a file like object that supports reading). Raise an exception when there is an error with the input data.
ar: تعيين البيانات الوصفية للملف الممثل بواسطة التدفق (كائن شبيه بالملف يدعم القراءة). اطرح استثناءً عند وجود خطأ في بيانات الإدخال.

en: Catalog plugins
ar: إضافات الفهرس

en: A plugin that implements a catalog generator.
ar: إضافة تقوم بتنفيذ مولد فهرس.

en: Output file type for which this plugin should be run. For example: 'epub' or 'xml'
ar: نوع ملف الإخراج الذي يجب تشغيل هذه الإضافة من أجله. على سبيل المثال: 'epub' أو 'xml'

en: CLI parser options specific to this plugin, declared as `namedtuple` `Option`:
ar: خيارات تحليل CLI خاصة بهذه الإضافة، معلنة كـ `namedtuple` `Option`:

en: from collections import namedtuple Option = namedtuple('Option', 'option, default, dest, help') cli_options = [Option('--catalog-title', default = 'My Catalog', dest = 'catalog_title', help = (_('Title of generated catalog. \nDefault:') + " '" + '%default' + "'"))] cli_options parsed in calibre.db.cli.cmd_catalog:option_parser()
ar: من collections استورد namedtuple Option = namedtuple('Option', 'option, default, dest, help') cli_options = [Option('--catalog-title', default = 'My Catalog', dest = 'catalog_title', help = (_('عنوان الفهرس الذي تم إنشاؤه. \nالافتراضي:') + " '" + '%default' + "'"))] cli_options تم تحليلها في calibre.db.cli.cmd_catalog:option_parser()

en: If plugin is not a built-in, copy the plugin's .ui and .py files from the ZIP file to $TMPDIR. Tab will be dynamically generated and added to the Catalog Options dialog in calibre.gui2.dialogs.catalog.py:Catalog
ar: إذا لم تكن الإضافة مدمجة، فانسخ ملفات .ui و .py الخاصة بالإضافة من ملف ZIP إلى $TMPDIR. سيتم إنشاء علامة التبويب ديناميكيًا وإضافتها إلى مربع حوار خيارات الفهرس في calibre.gui2.dialogs.catalog.py:Catalog

en: Run the plugin. Must be implemented in subclasses. It should generate the catalog in the format specified in file_types, returning the absolute path to the generated catalog file. If an error is encountered it should raise an Exception.
ar: تشغيل الإضافة. يجب تنفيذها في الفئات الفرعية. يجب أن تولد الفهرس بالتنسيق المحدد في file_types، مع إعادة المسار المطلق إلى ملف الفهرس الذي تم إنشاؤه. إذا واجهت خطأ، يجب أن تطرح استثناءً.

en: The generated catalog file should be created with the :meth:`temporary_file` method.
ar: يجب إنشاء ملف الفهرس الذي تم إنشاؤه باستخدام الأسلوب :meth:`temporary_file`.

en: Absolute path to the generated catalog file.
ar: المسار المطلق لملف الفهرس الذي تم إنشاؤه.

en: A dictionary of keyword arguments
ar: قاموس من الوسائط الكلمة

en: A LibraryDatabase2 object
ar: كائن LibraryDatabase2

en: Metadata download plugins
ar: إضافات تنزيل البيانات الوصفية

en: Set of capabilities supported by this plugin. Useful capabilities are: 'identify', 'cover'
ar: مجموعة من القدرات التي تدعمها هذه الإضافة. القدرات المفيدة هي: 'تحديد الهوية'، 'غلاف'

en: List of metadata fields that can potentially be download by this plugin during the identify phase
ar: قائمة حقول البيانات الوصفية التي يمكن تنزيلها بواسطة هذه الإضافة خلال مرحلة التحديد

en: Set this to True if your plugin returns HTML formatted comments
ar: عيّن هذا إلى True إذا كانت إضافتك تعيد تعليقات منسقة بـ HTML

en: Setting this to True means that the browser object will indicate that it supports gzip transfer encoding. This can speedup downloads but make sure that the source actually supports gzip transfer encoding correctly first
ar: تعيين هذا إلى True يعني أن كائن المتصفح سيشير إلى أنه يدعم ترميز نقل gzip. يمكن أن يسرع هذا التنزيلات ولكن تأكد من أن المصدر يدعم بالفعل ترميز نقل gzip بشكل صحيح أولاً

en: Set this to True to ignore HTTPS certificate errors when connecting to this source.
ar: عيّن هذا إلى True لتجاهل أخطاء شهادة HTTPS عند الاتصال بهذا المصدر.

en: Cached cover URLs can sometimes be unreliable (i.e. the download could fail or the returned image could be bogus). If that is often the case with this source, set to False
ar: قد تكون عناوين URL للأغلفة المخزنة مؤقتًا غير موثوقة أحيانًا (أي قد يفشل التنزيل أو قد تكون الصورة المعادة مزيفة). إذا كان هذا هو الحال غالبًا مع هذا المصدر، فعيّن إلى False

en: A list of :class:`Option` objects. They will be used to automatically construct the configuration widget for this plugin
ar: قائمة بكائنات :class:`Option`. سيتم استخدامها لـ إنشاء أداة التكوين لهذه الإضافة تلقائيًا

en: A string that is displayed at the top of the config widget for this plugin
ar: سلسلة يتم عرضها في الجزء العلوي من أداة التكوين لهذه الإضافة

en: If True this source can return multiple covers for a given query
ar: إذا كان True، يمكن لهذا المصدر إرجاع أغلفة متعددة لاستعلام معين

en: If set to True covers downloaded by this plugin are automatically trimmed.
ar: إذا تم تعيينه على True، يتم قص الأغلفة التي تم تنزيلها بواسطة هذه الإضافة تلقائيًا.

en: If set to True, and this source returns multiple results for a query, some of which have ISBNs and some of which do not, the results without ISBNs will be ignored
ar: إذا تم تعيينه على True، وكان هذا المصدر يعيد نتائج متعددة لاستعلام، بعضها يحتوي على أرقام ISBN وبعضها لا يحتوي، فسيتم تجاهل النتائج التي لا تحتوي على أرقام ISBN

en: Return False if your plugin needs to be configured before it can be used. For example, it might need a username/password/API key.
ar: أعد False إذا كانت إضافتك تحتاج إلى تكوين قبل استخدامها. على سبيل المثال، قد تحتاج إلى اسم مستخدم/كلمة مرور/مفتاح API.

en: Take a list of authors and return a list of tokens useful for an AND search query. This function tries to return tokens in first name middle names last name order, by assuming that if a comma is in the author name, the name is in lastname, other names form.
ar: خذ قائمة من المؤلفين وأعد قائمة من الرموز مفيدة لاستعلام بحث AND. تحاول هذه الدالة إرجاع الرموز بترتيب الاسم الأول والأسماء الوسطى والاسم الأخير، بافتراض أنه إذا كانت هناك فاصلة في اسم المؤلف، فإن الاسم يكون بتنسيق الاسم الأخير، أسماء أخرى.

en: Take a title and return a list of tokens useful for an AND search query. Excludes connectives(optionally) and punctuation.
ar: خذ عنوانًا وأعد قائمة من الرموز مفيدة لاستعلام بحث AND. يستثني الروابط (اختياريًا) وعلامات الترقيم.

en: Split a list of jobs into at most num groups, as evenly as possible
ar: قسّم قائمة المهام إلى num مجموعات كحد أقصى، بأكبر قدر ممكن من التساوي

en: Return the first field from self.touched_fields that is null on the mi object
ar: أعد الحقل الأول من self.touched_fields الذي يكون فارغًا في الكائن mi

en: Call this method in your plugin's identify method to normalize metadata before putting the Metadata object into result_queue. You can of course, use a custom algorithm suited to your metadata source.
ar: استدعِ هذا الأسلوب في أسلوب تحديد الهوية الخاص بإضافتك لتوحيد البيانات الوصفية قبل وضع كائن Metadata في result_queue. يمكنك بالطبع استخدام خوارزمية مخصصة تناسب مصدر البيانات الوصفية الخاص بك.

en: Return a 3-tuple or None. The 3-tuple is of the form: (identifier_type, identifier_value, URL). The URL is the URL for the book identified by identifiers at this source. identifier_type, identifier_value specify the identifier corresponding to the URL. This URL must be browsable to by a human using a browser. It is meant to provide a clickable link for the user to easily visit the books page at this source. If no URL is found, return None. This method must be quick, and consistent, so only implement it if it is possible to construct the URL from a known scheme given identifiers.
ar: أعد 3-tuple أو None. 3-tuple يكون بالشكل: (نوع_المعرف، قيمة_المعرف، URL). عنوان URL هو عنوان URL للكتاب المحدد بواسطة المعرفات في هذا المصدر. يحدد identifier_type، identifier_value المعرف المقابل لعنوان URL. يجب أن يكون عنوان URL هذا قابلاً للتصفح بواسطة إنسان باستخدام متصفح. ويهدف إلى توفير رابط قابل للنقر للمستخدم لزيارة صفحة الكتب بسهولة في هذا المصدر. إذا لم يتم العثور على عنوان URL، أعد None. يجب أن يكون هذا الأسلوب سريعًا ومتسقًا، لذا قم بتنفيذه فقط إذا كان من الممكن إنشاء عنوان URL من مخطط معروف بالنظر إلى المعرفات.

en: Return a human readable name from the return value of get_book_url().
ar: إرجاع اسم مقروء بشريًا من القيمة المعادة من get_book_url().

en: Override this method if you would like to return multiple URLs for this book. Return a list of 3-tuples. By default this method simply calls :func:`get_book_url`.
ar: تجاوز هذا الأسلوب إذا كنت ترغب في إرجاع عناوين URL متعددة لهذا الكتاب. أعد قائمة من 3-tuples. افتراضيًا، يستدعي هذا الأسلوب ببساطة :func:`get_book_url`.

en: Return cached cover URL for the book identified by the identifiers dictionary or None if no such URL exists.
ar: إرجاع عنوان URL للغلاف المخزن مؤقتًا للكتاب المحدد بواسطة قاموس المعرفات أو None إذا لم يكن هناك عنوان URL من هذا القبيل.

en: Note that this method must only return validated URLs, i.e. not URLS that could result in a generic cover image or a not found error.
ar: لاحظ أن هذا الأسلوب يجب أن يعيد فقط عناوين URL صالحة، أي ليس عناوين URL التي قد تؤدي إلى صورة غلاف عامة أو خطأ عدم العثور.

en: Parse a URL and return a tuple of the form: (identifier_type, identifier_value). If the URL does not match the pattern for the metadata source, return None.
ar: قم بتحليل عنوان URL وأعد tuple بالشكل: (نوع_المعرف، قيمة_المعرف). إذا لم يتطابق عنوان URL مع نمط مصدر البيانات الوصفية، فأعد None.

en: Return a function that is used to generate a key that can sort Metadata objects by their relevance given a search query (title, authors, identifiers).
ar: أعد دالة تستخدم لإنشاء مفتاح يمكنه فرز كائنات البيانات الوصفية حسب مدى صلتها باستعلام بحث (عنوان، مؤلفون، معرفات).

en: These keys are used to sort the results of a call to :meth:`identify`.
ar: تستخدم هذه المفاتيح لفرز نتائج استدعاء :meth:`identify`.

en: For details on the default algorithm see :class:`InternalMetadataCompareKeyGen`. Re-implement this function in your plugin if the default algorithm is not suitable.
ar: للحصول على تفاصيل حول الخوارزمية الافتراضية، راجع :class:`InternalMetadataCompareKeyGen`. أعد تنفيذ هذه الدالة في إضافتك إذا كانت الخوارزمية الافتراضية غير مناسبة.

en: Identify a book by its Title/Author/ISBN/etc.
ar: تحديد كتاب بواسطة عنوانه/مؤلفه/رقم ISBN/إلخ.

en: If identifiers(s) are specified and no match is found and this metadata source does not store all related identifiers (for example, all ISBNs of a book), this method should retry with just the title and author (assuming they were specified).
ar: إذا تم تحديد معرفات (معرف) ولم يتم العثور على تطابق ولم يخزن مصدر البيانات الوصفية هذا جميع المعرفات ذات الصلة (على سبيل المثال، جميع أرقام ISBN لكتاب)، يجب أن يعيد هذا الأسلوب المحاولة باستخدام العنوان والمؤلف فقط (بافتراض أنهما تم تحديدهما).

en: If this metadata source also provides covers, the URL to the cover should be cached so that a subsequent call to the get covers API with the same ISBN/special identifier does not need to get the cover URL again. Use the caching API for this.
ar: إذا كان مصدر البيانات الوصفية هذا يوفر أيضًا أغلفة، فيجب تخزين عنوان URL للغلاف مؤقتًا بحيث لا يحتاج استدعاء لاحق لواجهة برمجة تطبيقات الحصول على الأغلفة بنفس رقم ISBN/المعرف الخاص إلى الحصول على عنوان URL للغلاف مرة أخرى. استخدم واجهة برمجة تطبيقات التخزين المؤقت لهذا الغرض.

en: Every Metadata object put into result_queue by this method must have a `source_relevance` attribute that is an integer indicating the order in which the results were returned by the metadata source for this query. This integer will be used by :meth:`compare_identify_results`. If the order is unimportant, set it to zero for every result.
ar: يجب أن يحتوي كل كائن Metadata يتم وضعه في result_queue بواسطة هذا الأسلوب على سمة `source_relevance` وهي عدد صحيح يشير إلى الترتيب الذي أعادت به النتائج من مصدر البيانات الوصفية لهذا الاستعلام. هذا العدد الصحيح سيتم استخدامه بواسطة :meth:`compare_identify_results`. إذا كان الترتيب غير مهم، فعيّنه إلى صفر لكل نتيجة.

en: Make sure that any cover/ISBN mapping information is cached before the Metadata object is put into result_queue.
ar: تأكد من تخزين أي معلومات تعيين غلاف/ISBN مؤقتًا قبل وضع كائن Metadata في result_queue.

en: A log object, use it to output debugging information/errors
ar: كائن سجل، استخدمه لإخراج معلومات/أخطاء التصحيح

en: A result Queue, results should be put into it. Each result is a Metadata object
ar: قائمة انتظار النتائج، يجب وضع النتائج فيها. كل نتيجة هي كائن بيانات وصفية

en: If abort.is_set() returns True, abort further processing and return as soon as possible
ar: إذا أعادت abort.is_set() قيمة True، قم بإلغاء المزيد من المعالجة وعد في أقرب وقت ممكن

en: The title of the book, can be None
ar: عنوان الكتاب، يمكن أن يكون None

en: A list of authors of the book, can be None
ar: قائمة بمؤلفي الكتاب، يمكن أن تكون None

en: A dictionary of other identifiers, most commonly {'isbn':'1234...'}
ar: قاموس لمعرفات أخرى، الأكثر شيوعًا {'isbn':'1234...'}

en: Timeout in seconds, no network request should hang for longer than timeout.
ar: المهلة بالثواني، يجب ألا تتوقف أي طلب شبكة لأكثر من المهلة المحددة.

en: None if no errors occurred, otherwise a unicode representation of the error suitable for showing to the user
ar: None إذا لم تحدث أخطاء، وإلا تمثيل يونيكود للخطأ مناسب للعرض للمستخدم

en: Download a cover and put it into result_queue. The parameters all have the same meaning as for :meth:`identify`. Put (self, cover_data) into result_queue.
ar: قم بتنزيل غلاف وضعه في result_queue. جميع المعلمات لها نفس المعنى كما هو الحال في :meth:`identify`. ضع (self, cover_data) في result_queue.

en: This method should use cached cover URLs for efficiency whenever possible. When cached data is not present, most plugins simply call identify and use its results.
ar: يجب أن يستخدم هذا الأسلوب عناوين URL للأغلفة المخزنة مؤقتًا لتحقيق الكفاءة كلما أمكن ذلك. عندما لا تكون البيانات المخزنة مؤقتًا موجودة، تقوم معظم الإضافات ببساطة باستدعاء identify واستخدام نتائجها.

en: If the parameter get_best_cover is True and this plugin can get multiple covers, it should only get the "best" one.
ar: إذا كانت المعلمة get_best_cover هي True ويمكن لهذه الإضافة الحصول على أغلفة متعددة، فيجب أن تحصل على الأفضل فقط.

en: Generate a sort key for comparison of the relevance of Metadata objects, given a search query. This is used only to compare results from the same metadata source, not across different sources.
ar: إنشاء مفتاح فرز لمقارنة مدى صلة كائنات البيانات الوصفية، بالنظر إلى استعلام بحث. يستخدم هذا فقط لمقارنة النتائج من نفس مصدر البيانات الوصفية، وليس عبر مصادر مختلفة.

en: The sort key ensures that an ascending order sort is a sort by order of decreasing relevance.
ar: يضمن مفتاح الفرز أن الفرز بترتيب تصاعدي هو فرز بترتيب الأهمية المتناقصة.

en: The algorithm is:
ar: الخوارزمية هي:

en: Prefer results that have at least one identifier the same as for the query
ar: تفضيل النتائج التي تحتوي على معرف واحد على الأقل مطابق للاستعلام

en: Prefer results with a cached cover URL
ar: تفضيل النتائج ذات عنوان URL للغلاف المخزن مؤقتًا

en: Prefer results with all available fields filled in
ar: تفضيل النتائج التي تم ملء جميع الحقول المتاحة فيها

en: Prefer results with the same language as the current user interface language
ar: تفضيل النتائج بنفس لغة واجهة المستخدم الحالية

en: Prefer results that are an exact title match to the query
ar: تفضيل النتائج التي تطابق العنوان تمامًا للاستعلام

en: Prefer results with longer comments (greater than 10% longer)
ar: تفضيل النتائج ذات التعليقات الأطول (أطول بأكثر من 10%)

en: Use the relevance of the result as reported by the metadata source's search
ar: استخدم مدى صلة النتيجة كما أفاد بها بحث مصدر البيانات الوصفية

en: engine
ar: المحرك

en: Conversion plugins
ar: إضافات التحويل

en: InputFormatPlugins are responsible for converting a document into HTML+OPF+CSS+etc. The results of the conversion *must* be encoded in UTF-8. The main action happens in :meth:`convert`.
ar: إضافات InputFormatPlugins مسؤولة عن تحويل مستند إلى HTML+OPF+CSS+إلخ. يجب أن تكون نتائج التحويل *مُشفرة* بـ UTF-8. يحدث الإجراء الرئيسي في :meth:`convert`.

en: Set of file types for which this plugin should be run For example: ``set(['azw', 'mobi', 'prc'])``
ar: مجموعة من أنواع الملفات التي يجب تشغيل هذه الإضافة من أجلها. على سبيل المثال: ``set(['azw', 'mobi', 'prc'])``

en: If True, this input plugin generates a collection of images, one per HTML file. This can be set dynamically, in the convert method if the input files can be both image collections and non-image collections. If you set this to True, you must implement the get_images() method that returns a list of images.
ar: إذا كان True، فإن هذه الإضافة المدخلة تولد مجموعة من الصور، واحدة لكل ملف HTML. يمكن تعيين هذا ديناميكيًا، في أسلوب التحويل إذا كانت ملفات الإدخال يمكن أن تكون مجموعات صور ومجموعات غير صور. إذا قمت بتعيين هذا إلى True، يجب عليك تنفيذ أسلوب get_images() الذي يعيد قائمة من الصور.

en: Number of CPU cores used by this plugin. A value of -1 means that it uses all available cores
ar: عدد نوى وحدة المعالجة المركزية التي تستخدمها هذه الإضافة. قيمة -1 تعني أنها تستخدم جميع النوى المتاحة

en: If set to True, the input plugin will perform special processing to make its output suitable for viewing
ar: إذا تم تعيينه على True، ستقوم إضافة الإدخال بإجراء معالجة خاصة لجعل إخراجها مناسبًا للعرض

en: The encoding that this input plugin creates files in. A value of None means that the encoding is undefined and must be detected individually
ar: الترميز الذي تنشئ به هذه الإضافة المدخلة الملفات. قيمة None تعني أن الترميز غير محدد ويجب اكتشافه بشكل فردي

en: Options shared by all Input format plugins. Do not override in sub-classes. Use :attr:`options` instead. Every option must be an instance of :class:`OptionRecommendation`.
ar: خيارات مشتركة بين جميع إضافات تنسيق الإدخال. لا تتجاوز في الفئات الفرعية. استخدم :attr:`options` بدلاً من ذلك. يجب أن يكون كل خيار نسخة من :class:`OptionRecommendation`.

en: Options to customize the behavior of this plugin. Every option must be an instance of :class:`OptionRecommendation`.
ar: خيارات لتخصيص سلوك هذه الإضافة. يجب أن يكون كل خيار نسخة من :class:`OptionRecommendation`.

en: A set of 3-tuples of the form (option_name, recommended_value, recommendation_level)
ar: مجموعة من 3-tuples بالشكل (اسم_الخيار، القيمة_الموصى بها، مستوى_التوصية)

en: Return a list of absolute paths to the images, if this input plugin represents an image collection. The list of images is in the same order as the spine and the TOC.
ar: أعد قائمة بالمسارات المطلقة للصور، إذا كانت هذه الإضافة المدخلة تمثل مجموعة صور. قائمة الصور بنفس ترتيب العمود الفقري وجدول المحتويات.

en: This method must be implemented in sub-classes. It must return the path to the created OPF file or an :class:`OEBBook` instance. All output should be contained in the current folder. If this plugin creates files outside the current folder they must be deleted/marked for deletion before this method returns.
ar: يجب تنفيذ هذا الأسلوب في الفئات الفرعية. يجب أن يعيد المسار إلى ملف OPF الذي تم إنشاؤه أو مثيل :class:`OEBBook`. يجب أن يكون كل الإخراج محتوى في المجلد الحالي. إذا أنشأت هذه الإضافة ملفات خارج المجلد الحالي، فيجب حذفها/وضع علامة عليها للحذف قبل أن يعيد هذا الأسلوب.

en: A file like object that contains the input file.
ar: كائن شبيه بالملف يحتوي على ملف الإدخال.

en: Options to customize the conversion process. Guaranteed to have attributes corresponding to all the options declared by this plugin. In addition, it will have a verbose attribute that takes integral values from zero upwards. Higher numbers mean be more verbose. Another useful attribute is ``input_profile`` that is an instance of :class:`calibre.customize.profiles.InputProfile`.
ar: خيارات لتخصيص عملية التحويل. مضمون أن تحتوي على سمات تتوافق مع جميع الخيارات المعلنة بواسطة هذه الإضافة. بالإضافة إلى ذلك، ستحتوي على سمة verbose تأخذ قيمًا صحيحة من الصفر فصاعدًا. الأرقام الأعلى تعني أن تكون أكثر تفصيلاً. سمة أخرى مفيدة هي ``input_profile`` وهي نسخة من :class:`calibre.customize.profiles.InputProfile`.

en: The extension (without the .) of the input file. It is guaranteed to be one of the `file_types` supported by this plugin.
ar: الامتداد (بدون النقطة) لملف الإدخال. مضمون أن يكون أحد أنواع الملفات المدعومة بواسطة هذه الإضافة.

en: A :class:`calibre.utils.logging.Log` object. All output should use this object.
ar: كائن :class:`calibre.utils.logging.Log`. يجب أن يستخدم هذا الكائن جميع المخرجات.

en: A dictionary of various information that the input plugin can get easily that would speed up the subsequent stages of the conversion.
ar: قاموس يحتوي على معلومات مختلفة يمكن لإضافة الإدخال الحصول عليها بسهولة والتي ستسرع المراحل اللاحقة من التحويل.

en: Called to allow the input plugin to perform postprocessing after the book has been parsed.
ar: يتم استدعاؤها للسماح لإضافة الإدخال بإجراء معالجة لاحقة بعد تحليل الكتاب.

en: Called to allow the input plugin to specialize the parsed book for a particular output format. Called after postprocess_book and before any transforms are performed on the parsed book.
ar: يتم استدعاؤها للسماح لإضافة الإدخال بتخصيص الكتاب المحلل لـ تنسيق إخراج معين. يتم استدعاؤها بعد postprocess_book وقبل إجراء أي تحويلات على الكتاب المحلل.

en: Called to create the widget used for configuring this plugin in the calibre GUI. The widget must be an instance of the PluginWidget class. See the builtin input plugins for examples.
ar: يتم استدعاؤها لإنشاء الأداة المستخدمة لتكوين هذه الإضافة في واجهة المستخدم الرسومية لـ calibre. يجب أن تكون الأداة نسخة من فئة PluginWidget. راجع إضافات الإدخال المدمجة للحصول على أمثلة.

en: OutputFormatPlugins are responsible for converting an OEB document (OPF+HTML) into an output e-book.
ar: إضافات OutputFormatPlugins مسؤولة عن تحويل مستند OEB (OPF+HTML) إلى كتاب إلكتروني إخراج.

en: The OEB document can be assumed to be encoded in UTF-8. The main action happens in :meth:`convert`.
ar: يمكن افتراض أن مستند OEB مشفر بـ UTF-8. الإجراء الرئيسي يحدث في :meth:`convert`.

en: The file type (extension without leading period) that this plugin outputs
ar: نوع الملف (الامتداد بدون نقطة بادئة) الذي تنتجه هذه الإضافة

en: str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
ar: str(كائن='') -> str str(بايت_أو_مخزن[, ترميز[, أخطاء]]) -> str

en: Create a new string object from the given object. If encoding or errors is specified, then the object must expose a data buffer that will be decoded using the given encoding and error handler. Otherwise, returns the result of object.__str__() (if defined) or repr(object). encoding defaults to 'utf-8'. errors defaults to 'strict'.
ar: إنشاء كائن سلسلة جديد من الكائن المحدد. إذا تم تحديد الترميز أو الأخطاء، فيجب أن يكشف الكائن عن مخزن بيانات سيتم فك ترميزه باستخدام الترميز ومعالج الأخطاء المحددين. وإلا، فإنه يعيد نتيجة object.__str__() (إذا تم تعريفه) أو repr(object). الترميز الافتراضي هو 'utf-8'. الأخطاء الافتراضية هي 'strict'.

en: Render the contents of `oeb_book` (which is an instance of :class:`calibre.ebooks.oeb.OEBBook`) to the file specified by output.
ar: عرض محتويات `oeb_book` (وهو نسخة من :class:`calibre.ebooks.oeb.OEBBook`) إلى الملف المحدد بواسطة الإخراج.

en: Either a file like object or a string. If it is a string it is the path to a folder that may or may not exist. The output plugin should write its output into that folder. If it is a file like object, the output plugin should write its output into the file.
ar: إما كائن شبيه بالملف أو سلسلة. إذا كانت سلسلة، فهي مسار إلى مجلد قد يوجد أو لا يوجد. يجب أن تكتب إضافة الإخراج إخراجها في ذلك المجلد. إذا كان كائنًا شبيهًا بالملف، يجب أن تكتب إضافة الإخراج إخراجها في الملف.

en: The input plugin that was used at the beginning of the conversion pipeline.
ar: إضافة الإدخال التي تم استخدامها في بداية مسار التحويل.

en: Conversion options. Guaranteed to have attributes corresponding to the OptionRecommendations of this plugin.
ar: خيارات التحويل. مضمون أن تحتوي على سمات تتوافق مع OptionRecommendations لهذه الإضافة.

en: The logger. Print debug/info messages etc. using this.
ar: المسجل. اطبع رسائل التصحيح/المعلومات وما إلى ذلك باستخدام هذا.

en: Can be used to change the values of conversion options, as used by the conversion pipeline.
ar: يمكن استخدامها لتغيير قيم خيارات التحويل، كما تستخدمها مسار التحويل.

en: Can be used to make changes to the CSS during the CSS flattening process.
ar: يمكن استخدامها لإجراء تغييرات على CSS أثناء عملية تسطيح CSS.

en: The item (HTML file) being processed
ar: العنصر (ملف HTML) الذي تتم معالجته

en: A Stylizer object containing the flattened styles for item. You can get the style for any element by stylizer.style(element).
ar: كائن Stylizer يحتوي على الأنماط المسطحة للعنصر. يمكنك الحصول على نمط أي عنصر عن طريق stylizer.style(element).

en: Called to create the widget used for configuring this plugin in the calibre GUI. The widget must be an instance of the PluginWidget class. See the builtin output plugins for examples.
ar: يتم استدعاؤها لإنشاء الأداة المستخدمة لتكوين هذه الإضافة في واجهة المستخدم الرسومية لـ calibre. يجب أن تكون الأداة نسخة من فئة PluginWidget. راجع إضافات الإدخال المدمجة للحصول على أمثلة.

en: Device drivers
ar: برامج تشغيل الأجهزة

en: The base class for all device drivers is :class:`DevicePlugin`. However, if your device exposes itself as a USBMS drive to the operating system, you should use the USBMS class instead as it implements all the logic needed to support these kinds of devices.
ar: الفئة الأساسية لجميع برامج تشغيل الأجهزة هي :class:`DevicePlugin`. ومع ذلك، إذا كان جهازك يعرض نفسه كـ محرك أقراص USBMS لنظام التشغيل، فيجب عليك استخدام فئة USBMS بدلاً من ذلك لأنها تنفذ كل المنطق اللازم لدعم هذه الأنواع من الأجهزة.

en: Defines the interface that should be implemented by backends that communicate with an e-book reader.
ar: يحدد الواجهة التي يجب تنفيذها بواسطة الواجهات الخلفية التي تتواصل مع قارئ الكتب الإلكترونية.

en: Ordered list of supported formats
ar: قائمة مرتبة بالتنسيقات المدعومة

en: VENDOR_ID can be either an integer, a list of integers or a dictionary If it is a dictionary, it must be a dictionary of dictionaries, of the form::
ar: يمكن أن يكون VENDOR_ID إما عددًا صحيحًا، أو قائمة من الأعداد الصحيحة أو قاموسًا. إذا كان قاموسًا، فيجب أن يكون قاموسًا من القواميس، بالشكل::

en: An integer or a list of integers
ar: عدد صحيح أو قائمة من الأعداد الصحيحة

en: BCD can be either None to not distinguish between devices based on BCD, or it can be a list of the BCD numbers of all devices supported by this driver.
ar: يمكن أن يكون BCD إما None لعدم التمييز بين الأجهزة بناءً على BCD، أو يمكن أن يكون قائمة بأرقام BCD لجميع الأجهزة التي يدعمها هذا المشغل.

en: Height for thumbnails on the device
ar: ارتفاع الصور المصغرة على الجهاز

en: Compression quality for thumbnails. Set this closer to 100 to have better quality thumbnails with fewer compression artifacts. Of course, the thumbnails get larger as well.
ar: جودة ضغط الصور المصغرة. اضبطها أقرب إلى 100 للحصول على صور مصغرة بجودة أفضل مع عدد أقل من عيوب الضغط. بالطبع، تصبح الصور المصغرة أكبر أيضًا.

en: Set this to True if the device supports updating cover thumbnails during sync_booklists. Setting it to true will ask device.py to refresh the cover thumbnails during book matching
ar: عيّن هذا إلى True إذا كان الجهاز يدعم تحديث الصور المصغرة للغلاف أثناء sync_booklists. تعيينه إلى true سيطلب من device.py تحديث الصور المصغرة للغلاف أثناء مطابقة الكتاب

en: Whether the metadata on books can be set via the GUI.
ar: ما إذا كان يمكن تعيين البيانات الوصفية للكتب عبر واجهة المستخدم الرسومية.

en: Whether the device can handle device_db metadata plugboards
ar: ما إذا كان الجهاز يمكنه التعامل مع لوحات توصيل بيانات device_db الوصفية

en: Path separator for paths to books on device
ar: فاصل المسار لمسارات الكتب على الجهاز

en: Icon for this device
ar: أيقونة لهذا الجهاز

en: GUI displays this as a message if not None in the status bar. Useful if opening can take a long time
ar: تعرض واجهة المستخدم الرسومية هذا كرسالة إذا لم تكن None في شريط الحالة. مفيد إذا كان الفتح يستغرق وقتًا طويلاً

en: Set of extensions that are "virtual books" on the device and therefore cannot be viewed/saved/added to library. For example: ``frozenset(['kobo'])``
ar: مجموعة من الامتدادات التي هي "كتب افتراضية" على الجهاز وبالتالي لا يمكن عرضها/حفظها/إضافتها إلى المكتبة. على سبيل المثال: ``frozenset(['kobo'])``

en: Message to display to user for virtual book extensions.
ar: رسالة لعرضها للمستخدم لملحقات الكتب الافتراضية.

en: Whether to nuke comments in the copy of the book sent to the device. If not None this should be short string that the comments will be replaced by.
ar: ما إذا كان سيتم حذف التعليقات في نسخة الكتاب المرسلة إلى الجهاز. إذا لم تكن None، فيجب أن تكون هذه سلسلة قصيرة سيتم استبدال التعليقات بها.

en: If True indicates that  this driver completely manages device detection, ejecting and so forth. If you set this to True, you *must* implement the detect_managed_devices and debug_managed_device_detection methods. A driver with this set to true is responsible for detection of devices, managing a blacklist of devices, a list of ejected devices and so forth. calibre will periodically call the detect_managed_devices() method and if it returns a detected device, calibre will call open(). open() will be called every time a device is returned even if previous calls to open() failed, therefore the driver must maintain its own blacklist of failed devices. Similarly, when ejecting, calibre will call eject() and then assuming the next call to detect_managed_devices() returns None, it will call post_yank_cleanup().
ar: إذا كان True، فهذا يشير إلى أن هذا المشغل يدير بشكل كامل اكتشاف الأجهزة، والإخراج وما إلى ذلك. إذا قمت بتعيين هذا إلى True، فيجب عليك *بالتأكيد* تنفيذ أساليب detect_managed_devices و debug_managed_device_detection. المشغل الذي تم تعيين هذا الخيار له على True مسؤول عن اكتشاف الأجهزة، وإدارة قائمة سوداء للأجهزة، وقائمة بالأجهزة التي تم إخراجها وما إلى ذلك. سيقوم calibre باستدعاء أسلوب detect_managed_devices() بشكل دوري، وإذا أعاد جهازًا مكتشفًا، فسيقوم calibre باستدعاء open(). سيتم استدعاء open() في كل مرة يتم فيها إرجاع جهاز حتى لو فشلت الاستدعاءات السابقة لـ open()، لذلك يجب على المشغل الاحتفاظ بقائمة سوداء خاصة به للأجهزة الفاشلة. وبالمثل، عند الإخراج، سيقوم calibre باستدعاء eject() ثم بافتراض أن الاستدعاء التالي لـ detect_managed_devices() يعيد None، فسيقوم باستدعاء post_yank_cleanup().

en: If set the True, calibre will call the :meth:`get_driveinfo()` method after the books lists have been loaded to get the driveinfo.
ar: إذا تم تعيينه على True، سيقوم calibre باستدعاء الأسلوب :meth:`get_driveinfo()` بعد تحميل قوائم الكتب للحصول على معلومات محرك الأقراص.

en: If set to True, calibre will ask the user if they want to manage the device with calibre, the first time it is detected. If you set this to True you must implement :meth:`get_device_uid()` and :meth:`ignore_connected_device()` and :meth:`get_user_blacklisted_devices` and :meth:`set_user_blacklisted_devices`
ar: إذا تم تعيينه على True، سيطلب calibre من المستخدم ما إذا كان يريد إدارة الجهاز باستخدام calibre، في المرة الأولى التي يتم فيها اكتشافه. إذا قمت بتعيين هذا على True، فيجب عليك تنفيذ :meth:`get_device_uid()` و :meth:`ignore_connected_device()` و :meth:`get_user_blacklisted_devices` و :meth:`set_user_blacklisted_devices`

en: Set this to a dictionary of the form {'title':title, 'msg':msg, 'det_msg':detailed_msg} to have calibre popup a message to the user after some callbacks are run (currently only upload_books). Be careful to not spam the user with too many messages. This variable is checked after *every* callback, so only set it when you really need to.
ar: عيّن هذا إلى قاموس بالشكل {'title':عنوان، 'msg':رسالة، 'det_msg':رسالة_مفصلة} لجعل calibre يعرض رسالة منبثقة للمستخدم بعد تشغيل بعض ردود الاتصال (حاليًا فقط upload_books). كن حذرًا لعدم إغراق المستخدم بالكثير من الرسائل. يتم التحقق من هذا المتغير بعد *كل* رد اتصال، لذا قم بتعيينه فقط عندما تحتاج إليه حقًا.

en: GUI displays this as a non-modal popup. Should be an instance of OpenPopupMessage
ar: تعرض واجهة المستخدم الرسومية هذا كنافذة منبثقة غير مشروطة. يجب أن يكون نسخة من OpenPopupMessage

en: Metadata about all the actual device models this driver supports
ar: بيانات وصفية حول جميع نماذج الأجهزة الفعلية التي يدعمها هذا المشغل

en: Return True, device_info if a device handled by this plugin is currently connected.
ar: أعد True، device_info إذا كان جهازًا يتعامل معه هذا المكون الإضافي متصلاً حاليًا.

en: List of devices currently connected
ar: قائمة بالأجهزة المتصلة حاليًا

en: Called only if MANAGES_DEVICE_PRESENCE is True.
ar: يتم استدعاؤها فقط إذا كانت MANAGES_DEVICE_PRESENCE هي True.

en: Scan for devices that this driver can handle. Should return a device object if a device is found. This object will be passed to the open() method as the connected_device. If no device is found, return None. The returned object can be anything, calibre does not use it, it is only passed to open().
ar: مسح الأجهزة التي يمكن لهذا المشغل التعامل معها. يجب أن يعيد كائن جهاز إذا تم العثور على جهاز. سيتم تمرير هذا الكائن إلى أسلوب open() كـ connected_device. إذا لم يتم العثور على جهاز، أعد None. الكائن المعاد يمكن أن يكون أي شيء، calibre لا يستخدمه، يتم تمريره فقط إلى open().

en: This method is called periodically by the GUI, so make sure it is not too resource intensive. Use a cache to avoid repeatedly scanning the system.
ar: يتم استدعاء هذا الأسلوب بشكل دوري بواسطة واجهة المستخدم الرسومية، لذا تأكد من أنه ليس مستهلكًا للموارد بشكل كبير. استخدم ذاكرة تخزين مؤقت لتجنب المسح المتكرر للنظام.

en: Set of USB devices found on the system.
ar: مجموعة من أجهزة USB الموجودة على النظام.

en: If True and the driver uses a cache to prevent repeated scanning, the cache must be flushed.
ar: إذا كان True ويستخدم المشغل ذاكرة تخزين مؤقت لمنع المسح المتكرر، فيجب مسح ذاكرة التخزين المؤقت.

en: Should write information about the devices detected on the system to output, which is a file like object.
ar: يجب أن يكتب معلومات حول الأجهزة المكتشفة على النظام إلى الإخراج، وهو كائن شبيه بالملف.

en: Should return True if a device was detected and successfully opened, otherwise False.
ar: يجب أن يعيد True إذا تم اكتشاف جهاز وفتحه بنجاح، وإلا False.

en: The key to unlock the device
ar: مفتاح فتح الجهاز

en: If true the packet stream to/from the device is logged
ar: إذا كان صحيحًا، يتم تسجيل تدفق الحزم من/إلى الجهاز

en: Function that is called with a % progress (number between 0 and 100) for various tasks. If it is called with -1 that means that the task does not have any progress information
ar: دالة يتم استدعاؤها مع نسبة مئوية من التقدم (عدد بين 0 و 100) لـ مهام مختلفة. إذا تم استدعاؤها بـ -1 فهذا يعني أن المهمة لا تحتوي على أي معلومات تقدم

en: Device information from the device scanner
ar: معلومات الجهاز من ماسح الجهاز

en: Optional method to perform further checks on a device to see if this driver is capable of handling it. If it is not it should return False. This method is only called after the vendor, product ids and the bcd have matched, so it can do some relatively time intensive checks. The default implementation returns True. This method is called only on Windows. See also :meth:`can_handle`.
ar: طريقة اختيارية لإجراء المزيد من الفحوصات على الجهاز لمعرفة ما إذا كان هذا المشغل قادرًا على التعامل معه. إذا لم يكن كذلك، فيجب أن يعيد False. يتم استدعاء هذا الأسلوب فقط بعد تطابق معرفات البائع والمنتج و bcd، لذلك يمكنه إجراء بعض الفحوصات التي تستغرق وقتًا طويلاً نسبيًا. التنفيذ الافتراضي يعيد True. يتم استدعاء هذا الأسلوب فقط على Windows. راجع أيضًا :meth:`can_handle`.

en: Note that for devices based on USBMS this method by default delegates to :meth:`can_handle`.  So you only need to override :meth:`can_handle` in your subclass of USBMS.
ar: لاحظ أنه بالنسبة للأجهزة المستندة إلى USBMS، يقوم هذا الأسلوب بشكل افتراضي بتفويض إلى :meth:`can_handle`. لذا تحتاج فقط إلى تجاوز :meth:`can_handle` في فئتك الفرعية من USBMS.

en: A usbdevice as returned by :func:`calibre.devices.winusb.scan_usb_devices`
ar: جهاز USB كما أعادته :func:`calibre.devices.winusb.scan_usb_devices`

en: Unix version of :meth:`can_handle_windows`.
ar: نسخة Unix من :meth:`can_handle_windows`.

en: Is a tuple of (vid, pid, bcd, manufacturer, product, serial number)
ar: هو tuple من (vid, pid, bcd, manufacturer, product, serial number)

en: Perform any device specific initialization. Called after the device is detected but before any other functions that communicate with the device. For example: For devices that present themselves as USB Mass storage devices, this method would be responsible for mounting the device or if the device has been automounted, for finding out where it has been mounted. The method :meth:`calibre.devices.usbms.device.Device.open` has an implementation of this function that should serve as a good example for USB Mass storage devices.
ar: قم بإجراء أي تهيئة خاصة بالجهاز. يتم استدعاؤها بعد اكتشاف الجهاز ولكن قبل أي وظائف أخرى تتواصل مع الجهاز. على سبيل المثال: بالنسبة للأجهزة التي تقدم نفسها كأجهزة تخزين USB جماعي، سيكون هذا الأسلوب مسؤولاً عن تركيب الجهاز أو إذا كان الجهاز قد تم تركيبه تلقائيًا، عن معرفة مكان تركيبه. الأسلوب :meth:`calibre.devices.usbms.device.Device.open` لديه تنفيذ لهذه الوظيفة يجب أن يكون بمثابة مثال جيد لأجهزة تخزين USB الجماعي.

en: This method can raise an OpenFeedback exception to display a message to the user.
ar: يمكن لهذا الأسلوب طرح استثناء OpenFeedback لعرض رسالة للمستخدم.

en: The device that we are trying to open. It is a tuple of (vendor id, product id, bcd, manufacturer name, product name, device serial number). However, some devices have no serial number and on Windows only the first three fields are present, the rest are None.
ar: الجهاز الذي نحاول فتحه. إنه tuple من (معرف البائع، معرف المنتج، bcd، اسم الشركة المصنعة، اسم المنتج، الرقم التسلسلي للجهاز). ومع ذلك، بعض الأجهزة لا تحتوي على رقم تسلسلي وعلى نظام Windows توجد فقط الحقول الثلاثة الأولى، والباقي None.

en: The UUID of the current calibre library. Can be None if there is no library (for example when used from the command line).
ar: معرف UUID لمكتبة calibre الحالية. يمكن أن يكون None إذا لم تكن هناك مكتبة (على سبيل المثال عند الاستخدام من سطر الأوامر).

en: Un-mount / eject the device from the OS. This does not check if there are pending GUI jobs that need to communicate with the device.
ar: إلغاء تركيب / إخراج الجهاز من نظام التشغيل. هذا لا يتحقق مما إذا كانت هناك مهام واجهة مستخدم رسومية معلقة تحتاج إلى التواصل مع الجهاز.

en: NOTE: That this method may not be called on the same thread as the rest of the device methods.
ar: ملاحظة: قد لا يتم استدعاء هذا الأسلوب على نفس الخيط مثل بقية أساليب الجهاز.

en: Called if the user yanks the device without ejecting it first.
ar: يتم استدعاؤها إذا قام المستخدم بسحب الجهاز دون إخراجه أولاً.

en: Set a function to report progress information.
ar: تعيين دالة للإبلاغ عن معلومات التقدم.

en: Ask device for device information. See L{DeviceInfoQuery}.
ar: اطلب معلومات الجهاز من الجهاز. راجع L{DeviceInfoQuery}.

en: (device name, device version, software version on device, MIME type) The tuple can optionally have a fifth element, which is a drive information dictionary. See usbms.driver for an example.
ar: (اسم الجهاز، إصدار الجهاز، إصدار البرنامج على الجهاز، نوع MIME) يمكن أن يحتوي الـ tuple اختياريًا على عنصر خامس، وهو قاموس معلومات محرك الأقراص. راجع usbms.driver للحصول على مثال.

en: Return the driveinfo dictionary. Usually called from get_device_information(), but if loading the driveinfo is slow for this driver, then it should set SLOW_DRIVEINFO. In this case, this method will be called by calibre after the book lists have been loaded. Note that it is not called on the device thread, so the driver should cache the drive info in the books() method and this function should return the cached data.
ar: إرجاع قاموس driveinfo. يتم استدعاؤها عادةً من get_device_information()، ولكن إذا كان تحميل driveinfo بطيئًا لهذا المشغل، فيجب أن يعيّن SLOW_DRIVEINFO. في هذه الحالة، سيتم استدعاء هذا الأسلوب بواسطة calibre بعد تحميل قوائم الكتب. لاحظ أنه لا يتم استدعاؤها على خيط الجهاز، لذا يجب على المشغل تخزين معلومات محرك الأقراص مؤقتًا في أسلوب books() ويجب أن تعيد هذه الدالة البيانات المخزنة مؤقتًا.

en: Return a 2 element list of the prefix to paths on the cards. If no card is present None is set for the card's prefix. E.G. ('/place', '/place2') (None, 'place2') ('place', None) (None, None)
ar: إرجاع قائمة من عنصرين للبادئة إلى المسارات على البطاقات. إذا لم تكن هناك بطاقة موجودة، يتم تعيين None لبادئة البطاقة. على سبيل المثال: ('/place', '/place2') (None، 'place2') ('place', None) (None، None)

en: Get total space available on the mountpoints:
ar: احصل على إجمالي المساحة المتاحة على نقاط التحميل:

en: Main memory
ar: الذاكرة الرئيسية

en: Memory Card A
ar: بطاقة الذاكرة أ

en: Memory Card B
ar: بطاقة الذاكرة ب

en: A 3 element list with total space in bytes of (1, 2, 3). If a particular device doesn't have any of these locations it should return 0.
ar: قائمة من 3 عناصر تحتوي على إجمالي المساحة بالبايت (1، 2، 3). إذا لم يكن لدى جهاز معين أي من هذه المواقع، فيجب أن يعيد 0.

en: Get free space available on the mountpoints:
ar: احصل على المساحة الحرة المتاحة على نقاط التحميل:

en: Card A
ar: البطاقة أ

en: Card B
ar: البطاقة ب

en: A 3 element list with free space in bytes of (1, 2, 3). If a particular device doesn't have any of these locations it should return -1.
ar: قائمة من 3 عناصر تحتوي على مساحة حرة بالبايت (1، 2، 3). إذا لم يكن لدى جهاز معين أي من هذه المواقع، فيجب أن يعيد -1.

en: Return a list of e-books on the device.
ar: إرجاع قائمة بالكتب الإلكترونية على الجهاز.

en: If 'carda' or 'cardb' return a list of e-books on the specific storage card, otherwise return list of e-books in main memory of device. If a card is specified and no books are on the card return empty list.
ar: إذا كانت 'carda' أو 'cardb' تعيد قائمة بالكتب الإلكترونية على بطاقة التخزين المحددة، وإلا أعد قائمة بالكتب الإلكترونية في الذاكرة الرئيسية للجهاز. إذا تم تحديد بطاقة ولم تكن هناك كتب على البطاقة، أعد قائمة فارغة.

en: A BookList.
ar: قائمة كتب.

en: Upload a list of books to the device. If a file already exists on the device, it should be replaced. This method should raise a :class:`FreeSpaceError` if there is not enough free space on the device. The text of the FreeSpaceError must contain the word "card" if ``on_card`` is not None otherwise it must contain the word "memory".
ar: تحميل قائمة من الكتب إلى الجهاز. إذا كان الملف موجودًا بالفعل على الجهاز، فيجب استبداله. يجب أن يطرح هذا الأسلوب :class:`FreeSpaceError` إذا لم تكن هناك مساحة حرة كافية على الجهاز. يجب أن يحتوي نص FreeSpaceError على كلمة "card" إذا لم يكن ``on_card`` None، وإلا يجب أن يحتوي على كلمة "memory".

en: A list of paths
ar: قائمة المسارات

en: A list of file names that the books should have once uploaded to the device. len(names) == len(files)
ar: قائمة بأسماء الملفات التي يجب أن تكون للكتب بمجرد تحميلها إلى الجهاز. len(names) == len(files)

en: If not None, it is a list of :class:`Metadata` objects. The idea is to use the metadata to determine where on the device to put the book. len(metadata) == len(files). Apart from the regular cover (path to cover), there may also be a thumbnail attribute, which should be used in preference. The thumbnail attribute is of the form (width, height, cover_data as jpeg).
ar: إذا لم تكن None، فهي قائمة بكائنات :class:`Metadata`. الفكرة هي استخدام البيانات الوصفية لتحديد مكان وضع الكتاب على الجهاز. len(metadata) == len(files). بصرف النظر عن الغلاف العادي (مسار الغلاف)، قد يكون هناك أيضًا سمة مصغرة، والتي يجب استخدامها كأولوية. سمة المصغرة تكون بالشكل (العرض، الارتفاع، بيانات الغلاف كـ jpeg).

en: A list of 3-element tuples. The list is meant to be passed to :meth:`add_books_to_metadata`.
ar: قائمة من 3-عناصر tuple. القائمة مخصصة لتمريرها إلى :meth:`add_books_to_metadata`.

en: Add locations to the booklists. This function must not communicate with the device.
ar: أضف المواقع إلى قوائم الكتب. يجب ألا تتواصل هذه الدالة مع الجهاز.

en: Result of a call to L{upload_books}
ar: نتيجة استدعاء L{upload_books}

en: List of :class:`Metadata` objects, same as for :meth:`upload_books`.
ar: قائمة بكائنات :class:`Metadata`، مثل :meth:`upload_books`.

en: A tuple containing the result of calls to (:meth:`books(oncard=None)`, :meth:`books(oncard='carda')`, :meth`books(oncard='cardb')`).
ar: زوج (tuple) يحتوي على نتيجة استدعاءات إلى (:meth:`books(oncard=None)`، :meth:`books(oncard='carda')`، :meth`books(oncard='cardb')`).

en: Delete books at paths on device.
ar: حذف الكتب من المسارات الموجودة على الجهاز.

en: Remove books from the metadata list. This function must not communicate with the device.
ar: إزالة الكتب من قائمة البيانات الوصفية. يجب ألا تتواصل هذه الدالة مع الجهاز.

en: paths to books on the device.
ar: مسارات الكتب على الجهاز.

en: Update metadata on device.
ar: تحديث البيانات الوصفية على الجهاز.

en: Read the file at ``path`` on the device and write it to outfile.
ar: اقرأ الملف في ``path`` على الجهاز واكتبه إلى outfile.

en: file object like ``sys.stdout`` or the result of an :func:`open` call.
ar: كائن ملف مثل ``sys.stdout`` أو نتيجة استدعاء :func:`open`.

en: Should return a QWidget. The QWidget contains the settings for the device interface
ar: يجب أن تعيد QWidget. يحتوي QWidget على إعدادات واجهة الجهاز

en: Should save settings to disk. Takes the widget created in :meth:`config_widget` and saves all settings to disk.
ar: يجب أن يحفظ الإعدادات على القرص. يأخذ الأداة التي تم إنشاؤها في :meth:`config_widget` ويحفظ جميع الإعدادات على القرص.

en: Should return an opts object. The opts object should have at least one attribute `format_map` which is an ordered list of formats for the device.
ar: يجب أن يعيد كائن خيارات. يجب أن يحتوي كائن الخيارات على سمة واحدة على الأقل `format_map` وهي قائمة مرتبة من التنسيقات للجهاز.

en: provide the driver the current set of plugboards and a function to select a specific plugboard. This method is called immediately before add_books and sync_booklists.
ar: تزويد المشغل بالمجموعة الحالية من لوحات التوصيل ودالة لتحديد لوحة توصيل معينة. يتم استدعاء هذا الأسلوب مباشرة قبل add_books و sync_booklists.

en: pb_func is a callable with the following signature::
ar: pb_func هو كائن قابل للاستدعاء بالتوقيع التالي::

en: def pb_func(device_name, format, plugboards)
ar: def pb_func(اسم_الجهاز, تنسيق, لوحات_توصيل)

en: You give it the current device name (either the class name or DEVICE_PLUGBOARD_NAME), the format you are interested in (a 'real' format or 'device_db'), and the plugboards (you were given those by set_plugboards, the same place you got this method).
ar: تعطيه اسم الجهاز الحالي (إما اسم الفئة أو DEVICE_PLUGBOARD_NAME)، والتنسيق الذي تهتم به (تنسيق 'حقيقي' أو 'device_db')، ولوحات التوصيل (التي تم إعطاؤها لك بواسطة set_plugboards، نفس المكان الذي حصلت منه على هذا الأسلوب).

en: None or a single plugboard instance.
ar: None أو مثيل لوحة توصيل واحدة.

en: Set the device name in the driveinfo file to 'name'. This setting will persist until the file is re-created or the name is changed again.
ar: عيّن اسم الجهاز في ملف driveinfo إلى 'name'. سيستمر هذا الإعداد حتى يتم إعادة إنشاء الملف أو تغيير الاسم مرة أخرى.

en: Non-disk devices should implement this method based on the location codes returned by the get_device_information() method.
ar: يجب أن تنفذ الأجهزة غير القرصية هذا الأسلوب بناءً على رموز الموقع التي أعادها أسلوب get_device_information().

en: Given a list of paths, returns another list of paths. These paths point to addable versions of the books.
ar: بالنظر إلى قائمة من المسارات، يعيد قائمة أخرى من المسارات. تشير هذه المسارات إلى إصدارات قابلة للإضافة من الكتب.

en: If there is an error preparing a book, then instead of a path, the position in the returned list for that book should be a three tuple: (original_path, the exception instance, traceback)
ar: إذا كان هناك خطأ في إعداد كتاب، فبدلاً من المسار، يجب أن يكون الموضع في القائمة المعادة لذلك الكتاب عبارة عن tuple ثلاثي: (original_path، مثيل الاستثناء، traceback)

en: Called when calibre is starting the device. Do any initialization required. Note that multiple instances of the class can be instantiated, and thus __init__ can be called multiple times, but only one instance will have this method called. This method is called on the device thread, not the GUI thread.
ar: يتم استدعاؤها عند بدء calibre للجهاز. قم بأي تهيئة مطلوبة. لاحظ أنه يمكن إنشاء عدة مثيلات من الفئة، وبالتالي يمكن استدعاء __init__ عدة مرات، ولكن سيتم استدعاء هذا الأسلوب لمثيل واحد فقط. يتم استدعاء هذا الأسلوب على خيط الجهاز، وليس خيط واجهة المستخدم الرسومية.

en: Called when calibre is shutting down, either for good or in preparation to restart. Do any cleanup required. This method is called on the device thread, not the GUI thread.
ar: يتم استدعاؤها عند إغلاق calibre، إما بشكل دائم أو استعدادًا لإعادة التشغيل. قم بأي تنظيف مطلوب. يتم استدعاء هذا الأسلوب على خيط الجهاز، وليس خيط واجهة المستخدم الرسومية.

en: Must return a unique id for the currently connected device (this is called immediately after a successful call to open()). You must implement this method if you set ASK_TO_ALLOW_CONNECT = True
ar: يجب أن يعيد معرفًا فريدًا للجهاز المتصل حاليًا (يتم استدعاء هذا مباشرة بعد استدعاء ناجح لـ open()). يجب عليك تنفيذ هذا الأسلوب إذا قمت بتعيين ASK_TO_ALLOW_CONNECT = True

en: Should ignore the device identified by uid (the result of a call to get_device_uid()) in the future. You must implement this method if you set ASK_TO_ALLOW_CONNECT = True. Note that this function is called immediately after open(), so if open() caches some state, the driver should reset that state.
ar: يجب أن يتجاهل الجهاز المحدد بواسطة uid (نتيجة استدعاء get_device_uid()) في المستقبل. يجب عليك تنفيذ هذا الأسلوب إذا قمت بتعيين ASK_TO_ALLOW_CONNECT = True. لاحظ أن هذه الدالة يتم استدعاؤها مباشرة بعد open()، لذا إذا قامت open() بتخزين بعض الحالات مؤقتًا، فيجب على المشغل إعادة تعيين تلك الحالة.

en: Return map of device uid to friendly name for all devices that the user has asked to be ignored.
ar: إرجاع خريطة من معرف الجهاز إلى الاسم الودي لجميع الأجهزة التي طلب المستخدم تجاهلها.

en: Set the list of device uids that should be ignored by this driver.
ar: عيّن قائمة معرفات الجهاز التي يجب تجاهلها بواسطة هذا المشغل.

en: Implement this method if your device wants to override a particular preference. You must ensure that all call sites that want a preference that can be overridden use device_prefs['something'] instead of prefs['something']. Your method should call device_prefs.set_overrides(pref=val, pref=val, ...). Currently used for: metadata management (prefs['manage_device_metadata'])
ar: نفّذ هذا الأسلوب إذا كان جهازك يريد تجاوز تفضيل معين. يجب عليك التأكد من أن جميع مواقع الاستدعاء التي تريد تفضيلًا يمكن تجاوزه تستخدم device_prefs['something'] بدلاً من prefs['something']. يجب أن يستدعي أسلوبك device_prefs.set_overrides(pref=val, pref=val, ...). يستخدم حاليًا لـ: إدارة البيانات الوصفية (prefs['manage_device_metadata'])

en: Implement this method if you want information about the current calibre library. This method is called at startup and when the calibre library changes while connected.
ar: نفّذ هذا الأسلوب إذا كنت تريد معلومات حول مكتبة calibre الحالية. يتم استدعاء هذا الأسلوب عند بدء التشغيل وعند تغيير مكتبة calibre أثناء الاتصال.

en: Called by the device manager when starting plugins. If this method returns a string, then a) it supports the device manager's dynamic control interface, and b) that name is to be used when talking to the plugin.
ar: يتم استدعاؤها بواسطة مدير الجهاز عند بدء تشغيل الإضافات. إذا أعاد هذا الأسلوب سلسلة، فإنه أ) يدعم واجهة التحكم الديناميكية لمدير الجهاز، وب) يجب استخدام هذا الاسم عند التحدث إلى الإضافة.

en: This method can be called on the GUI thread. A driver that implements this method must be thread safe.
ar: يمكن استدعاء هذا الأسلوب على خيط واجهة المستخدم الرسومية. يجب أن يكون المشغل الذي ينفذ هذا الأسلوب آمنًا للخيوط.

en: This method is called to start the plugin. The plugin should begin to accept device connections however it does that. If the plugin is already accepting connections, then do nothing.
ar: يتم استدعاء هذا الأسلوب لبدء تشغيل الإضافة. يجب أن تبدأ الإضافة في قبول اتصالات الجهاز بأي طريقة تفعلها. إذا كانت الإضافة تقبل الاتصالات بالفعل، فلا تفعل شيئًا.

en: This method is called to stop the plugin. The plugin should no longer accept connections, and should cleanup behind itself. It is likely that this method should call shutdown. If the plugin is already not accepting connections, then do nothing.
ar: يتم استدعاء هذا الأسلوب لإيقاف الإضافة. يجب ألا تقبل الإضافة الاتصالات بعد الآن، ويجب أن تقوم بالتنظيف خلفها. من المرجح أن يجب أن يستدعي هذا الأسلوب shutdown. إذا كانت الإضافة لا تقبل الاتصالات بالفعل، فلا تفعل شيئًا.

en: Return the value of the option indicated by opt_string. This method can be called when the plugin is not started. Return None if the option does not exist.
ar: إرجاع قيمة الخيار المشار إليه بواسطة opt_string. يمكن استدعاء هذا الأسلوب عندما لا تكون الإضافة قيد التشغيل. أعد None إذا لم يكن الخيار موجودًا.

en: Set the value of the option indicated by opt_string. This method can be called when the plugin is not started.
ar: عيّن قيمة الخيار المشار إليه بواسطة opt_string. يمكن استدعاء هذا الأسلوب عندما لا تكون الإضافة قيد التشغيل.

en: Return True if the plugin is started, otherwise false
ar: أعد True إذا كانت الإضافة قيد التشغيل، وإلا False

en: Called during book matching when a book on the device is matched with a book in calibre's db. The method is responsible for synchronizing data from the device to calibre's db (if needed).
ar: يتم استدعاؤها أثناء مطابقة الكتاب عندما يتطابق كتاب على الجهاز مع كتاب في قاعدة بيانات calibre. الأسلوب مسؤول عن مزامنة البيانات من الجهاز إلى قاعدة بيانات calibre (إذا لزم الأمر).

en: The method must return a two-value tuple. The first value is a set of calibre book ids changed if calibre's database was changed or None if the database was not changed. If the first value is an empty set then the metadata for the book on the device is updated with calibre's metadata and given back to the device, but no GUI refresh of that book is done. This is useful when the calibre data is correct but must be sent to the device.
ar: يجب أن يعيد الأسلوب tuple بقيمتين. القيمة الأولى هي مجموعة من معرفات كتب calibre التي تم تغييرها إذا تم تغيير قاعدة بيانات calibre أو None إذا لم يتم تغيير قاعدة البيانات. إذا كانت القيمة الأولى مجموعة فارغة، فسيتم تحديث البيانات الوصفية للكتاب على الجهاز ببيانات calibre الوصفية وإعادتها إلى الجهاز، ولكن لا يتم تحديث واجهة المستخدم الرسومية لذلك الكتاب. هذا مفيد عندما تكون بيانات calibre صحيحة ولكن يجب إرسالها إلى الجهاز.

en: The second value is itself a 2-value tuple. The first value in the tuple specifies whether a book format should be sent to the device. The intent is to permit verifying that the book on the device is the same as the book in calibre. This value must be None if no book is to be sent, otherwise return the base file name on the device (a string like foobar.epub). Be sure to include the extension in the name. The device subsystem will construct a send_books job for all books with not- None returned values. Note: other than to later retrieve the extension, the name is ignored in cases where the device uses a template to generate the file name, which most do. The second value in the returned tuple indicated whether the format is future-dated. Return True if it is, otherwise return False. calibre will display a dialog to the user listing all future dated books.
ar: القيمة الثانية هي نفسها tuple بقيمتين. القيمة الأولى في الـ tuple تحدد ما إذا كان يجب إرسال تنسيق كتاب إلى الجهاز. القصد هو السماح بالتحقق من أن الكتاب الموجود على الجهاز هو نفسه الكتاب في calibre. يجب أن تكون هذه القيمة None إذا لم يتم إرسال أي كتاب، وإلا أعد اسم الملف الأساسي على الجهاز (سلسلة مثل foobar.epub). تأكد من تضمين الامتداد في الاسم. سيقوم النظام الفرعي للجهاز بإنشاء مهمة send_books لجميع الكتب ذات القيم غير None التي تم إرجاعها. ملاحظة: بخلاف استعادة الامتداد لاحقًا، يتم تجاهل الاسم في الحالات التي يستخدم فيها الجهاز قالبًا لإنشاء اسم الملف، وهو ما تفعله معظم الأجهزة. القيمة الثانية في الـ tuple المعادة تشير إلى ما إذا كان التنسيق مؤرخًا في المستقبل. أعد True إذا كان كذلك، وإلا أعد False. سيعرض calibre مربع حوار للمستخدم يسرد جميع الكتب المؤرخة في المستقبل.

en: Extremely important: this method is called on the GUI thread. It must be threadsafe with respect to the device manager's thread.
ar: مهم للغاية: يتم استدعاء هذا الأسلوب على خيط واجهة المستخدم الرسومية. يجب أن يكون آمنًا للخيوط فيما يتعلق بخيط مدير الجهاز.

en: book_id: the calibre id for the book in the database. book_metadata: the Metadata object for the book coming from the device. first_call: True if this is the first call during a sync, False otherwise
ar: book_id: معرف calibre للكتاب في قاعدة البيانات. book_metadata: كائن Metadata للكتاب القادم من الجهاز. first_call: True إذا كان هذا هو الاستدعاء الأول أثناء المزامنة، False بخلاف ذلك

en: A list of books. Each Book object must have the fields
ar: قائمة كتب. يجب أن يحتوي كل كائن كتاب على الحقول التالية

en: title
ar: العنوان

en: authors
ar: المؤلفون

en: size (file size of the book)
ar: الحجم (حجم ملف الكتاب)

en: datetime (a UTC time tuple)
ar: datetime (زوج وقت UTC)

en: path (path on the device to the book)
ar: المسار (المسار على الجهاز إلى الكتاب)

en: thumbnail (can be None) thumbnail is either a str/bytes object with the image data or it should have an attribute image_path that stores an absolute (platform native) path to the image
ar: صورة مصغرة (يمكن أن تكون None) الصورة المصغرة هي إما كائن str/bytes مع بيانات الصورة أو يجب أن تحتوي على سمة image_path تخزن مسارًا مطلقًا (أصليًا للمنصة) للصورة

en: tags (a list of strings, can be empty).
ar: العلامات (قائمة من السلاسل، يمكن أن تكون فارغة).

en: Return True if the device supports collections for this book list.
ar: أعد True إذا كان الجهاز يدعم المجموعات لقائمة الكتب هذه.

en: Add the book to the booklist. Intent is to maintain any device-internal metadata. Return True if booklists must be sync'ed
ar: أضف الكتاب إلى قائمة الكتب. القصد هو الحفاظ على أي بيانات وصفية داخلية للجهاز. أعد True إذا كان يجب مزامنة قوائم الكتب

en: Remove a book from the booklist. Correct any device metadata at the same time
ar: إزالة كتاب من قائمة الكتب. تصحيح أي بيانات وصفية للجهاز في نفس الوقت

en: Return a dictionary of collections created from collection_attributes. Each entry in the dictionary is of the form collection name:[list of books]
ar: إرجاع قاموس المجموعات التي تم إنشاؤها من collection_attributes. كل إدخال في القاموس يكون بالشكل اسم المجموعة:[قائمة الكتب]

en: The list of books is sorted by book title, except for collections created from series, in which case series_index is used.
ar: يتم فرز قائمة الكتب حسب عنوان الكتاب، باستثناء المجموعات التي تم إنشاؤها من السلسلة، وفي هذه الحالة يتم استخدام series_index.

en: A list of attributes of the Book object
ar: قائمة بسمات كائن الكتاب

en: USB Mass Storage based devices
ar: الأجهزة المستندة إلى تخزين USB الشامل

en: The base class for such devices is :class:`calibre.devices.usbms.driver.USBMS`. This class in turn inherits some of its functionality from its bases, documented below. A typical basic USBMS based driver looks like this:
ar: الفئة الأساسية لمثل هذه الأجهزة هي :class:`calibre.devices.usbms.driver.USBMS`. هذه الفئة بدورها ترث بعض وظائفها من أسسها، الموثقة أدناه. يبدو المشغل الأساسي النموذجي المعتمد على USBMS كالتالي:

en: This class provides logic common to all drivers for devices that export themselves as USB Mass Storage devices. Provides implementations for mounting/ejecting of USBMS devices on all platforms.
ar: توفر هذه الفئة منطقًا مشتركًا لجميع برامج التشغيل للأجهزة التي تعرض نفسها كأجهزة تخزين USB جماعية. توفر تطبيقات لـ تركيب/إخراج أجهزة USBMS على جميع الأنظمة الأساسية.

en: String identifying the main memory of the device in the Windows PnP id strings This can be None, string, list of strings or compiled regex
ar: سلسلة تحدد الذاكرة الرئيسية للجهاز في سلاسل معرف PnP في Windows. يمكن أن تكون None، أو سلسلة، أو قائمة سلاسل، أو تعبيرًا عاديًا مجمعًا

en: String identifying the first card of the device in the Windows PnP id strings This can be None, string, list of strings or compiled regex
ar: سلسلة تحدد البطاقة الأولى للجهاز في سلاسل معرف PnP في Windows. يمكن أن تكون None، أو سلسلة، أو قائمة سلاسل، أو تعبيرًا عاديًا مجمعًا

en: String identifying the second card of the device in the Windows PnP id strings This can be None, string, list of strings or compiled regex
ar: سلسلة تحدد البطاقة الثانية للجهاز في سلاسل معرف PnP في Windows. يمكن أن تكون None، أو سلسلة، أو قائمة سلاسل، أو تعبيرًا عاديًا مجمعًا

en: Used by the new driver detection to disambiguate main memory from storage cards. Should be a regular expression that matches the main memory mount point assigned by macOS
ar: تستخدم بواسطة اكتشاف المشغل الجديد للتمييز بين الذاكرة الرئيسية وبطاقات التخزين. يجب أن تكون تعبيرًا عاديًا يطابق نقطة تحميل الذاكرة الرئيسية المعيّنة بواسطة macOS

en: The maximum length of paths created on the device
ar: الحد الأقصى لطول المسارات التي تم إنشاؤها على الجهاز

en: Put news in its own folder
ar: ضع الأخبار في مجلدها الخاص

en: Called to disambiguate main memory and storage card for devices that do not distinguish between them on the basis of `WINDOWS_CARD_NAME`. For example: The EB600
ar: يتم استدعاؤها للتمييز بين الذاكرة الرئيسية وبطاقة التخزين للأجهزة التي لا تميز بينهما على أساس `WINDOWS_CARD_NAME`. على سبيل المثال: EB600

en: Callback to allow individual device drivers to override the path sanitization used by :meth:`create_upload_path`.
ar: رد اتصال للسماح لبرامج تشغيل الأجهزة الفردية بتجاوز تطهير المسار المستخدم بواسطة :meth:`create_upload_path`.

en: Callback to allow drivers to change the default file name set by :meth:`create_upload_path`.
ar: رد اتصال للسماح للمشغلين بتغيير اسم الملف الافتراضي الذي تم تعيينه بواسطة :meth:`create_upload_path`.

en: Perform any device specific sanitization on the path components for files to be uploaded to the device
ar: قم بإجراء أي تطهير خاص بالجهاز على مكونات المسار للملفات التي سيتم تحميلها إلى الجهاز

en: Resolve path_map to annotation_map of files found on the device
ar: حل path_map إلى annotation_map للملفات الموجودة على الجهاز

en: Add an annotation to the calibre library
ar: أضف تعليقًا توضيحيًا إلى مكتبة calibre

en: The base class for all USBMS devices. Implements the logic for sending/getting/updating metadata/caching metadata/etc.
ar: الفئة الأساسية لجميع أجهزة USBMS. تنفذ منطق إرسال/استقبال/تحديث البيانات الوصفية/تخزين البيانات الوصفية مؤقتًا/إلخ.

en: Upload book cover to the device. Default implementation does nothing.
ar: تحميل غلاف الكتاب إلى الجهاز. التنفيذ الافتراضي لا يفعل شيئًا.

en: The full path to the folder where the associated book is located.
ar: المسار الكامل للمجلد حيث يوجد الكتاب المرتبط.

en: The name of the book file without the extension.
ar: اسم ملف الكتاب بدون الامتداد.

en: metadata belonging to the book. Use metadata.thumbnail for cover
ar: بيانات وصفية تخص الكتاب. استخدم metadata.thumbnail للغلاف

en: The full path to the e-book file
ar: المسار الكامل لملف الكتاب الإلكتروني

en: Return path with platform native path separators
ar: إرجاع المسار مع فواصل المسار الأصلية للمنصة

en: User interface actions
ar: إجراءات واجهة المستخدم

en: A plugin representing an "action" that can be taken in the graphical user interface. All the items in the toolbar and context menus are implemented by these plugins.
ar: إضافة تمثل "إجراء" يمكن اتخاذه في واجهة المستخدم الرسومية. جميع العناصر في شريط الأدوات وقوائم السياق يتم تنفيذها بواسطة هذه الإضافات.

en: Note that this class is the base class for these plugins, however, to integrate the plugin with calibre's plugin system, you have to make a wrapper class that references the actual plugin. See the :mod:`calibre.customize.builtins` module for examples.
ar: لاحظ أن هذه الفئة هي الفئة الأساسية لهذه الإضافات، ومع ذلك، لـ دمج الإضافة مع نظام إضافات calibre، يجب عليك إنشاء فئة تغليف تشير إلى الإضافة الفعلية. راجع الوحدة :mod:`calibre.customize.builtins` للحصول على أمثلة.

en: If two :class:`InterfaceAction` objects have the same name, the one with higher priority takes precedence.
ar: إذا كان لكائنين من :class:`InterfaceAction` نفس الاسم، فإن الكائن ذو الأولوية الأعلى له الأسبقية.

en: Sub-classes should implement the :meth:`genesis`, :meth:`library_changed`, :meth:`location_selected`, :meth:`shutting_down`, :meth:`initialization_complete` and :meth:`tag_browser_context_action` methods.
ar: يجب أن تنفذ الفئات الفرعية أساليب :meth:`genesis`، :meth:`library_changed`، :meth:`location_selected`، :meth:`shutting_down`، :meth:`initialization_complete` و :meth:`tag_browser_context_action`.

en: Once initialized, this plugin has access to the main calibre GUI via the :attr:`gui` member. You can access other plugins by name, for example::
ar: بمجرد التهيئة، يمكن لهذه الإضافة الوصول إلى واجهة المستخدم الرسومية الرئيسية لـ calibre عبر العضو :attr:`gui`. يمكنك الوصول إلى الإضافات الأخرى بالاسم، على سبيل المثال::

en: To access the actual plugin, use the :attr:`interface_action_base_plugin` attribute, this attribute only becomes available after the plugin has been initialized. Useful if you want to use methods from the plugin class like do_user_config().
ar: للوصول إلى الإضافة الفعلية، استخدم السمة :attr:`interface_action_base_plugin`، تصبح هذه السمة متاحة فقط بعد تهيئة الإضافة. مفيدة إذا كنت ترغب في استخدام أساليب من فئة الإضافة مثل do_user_config().

en: The QAction specified by :attr:`action_spec` is automatically create and made available as ``self.qaction``.
ar: يتم إنشاء QAction المحدد بواسطة :attr:`action_spec` تلقائيًا وجعله متاحًا كـ ``self.qaction``.

en: The plugin name. If two plugins with the same name are present, the one with higher priority takes precedence.
ar: اسم الإضافة. إذا كان هناك إضافتان بنفس الاسم، فإن الإضافة ذات الأولوية الأعلى لها الأسبقية.

en: The plugin priority. If two plugins with the same name are present, the one with higher priority takes precedence.
ar: أولوية الإضافة. إذا كان هناك إضافتان بنفس الاسم، فإن الإضافة ذات الأولوية الأعلى لها الأسبقية.

en: The menu popup type for when this plugin is added to a toolbar
ar: نوع القائمة المنبثقة عندما يتم إضافة هذه الإضافة إلى شريط الأدوات

en: Whether this action should be auto repeated when its shortcut key is held down.
ar: ما إذا كان يجب تكرار هذا الإجراء تلقائيًا عند الضغط باستمرار على مفتاح الاختصار الخاص به.

en: Of the form: (text, icon_path, tooltip, keyboard shortcut). icon, tooltip and keyboard shortcut can be None. keyboard shortcut must be either a string, None or tuple of shortcuts. If None, a keyboard shortcut corresponding to the action is not registered. If you pass an empty tuple, then the shortcut is registered with no default key binding.
ar: بالشكل: (نص، مسار_الأيقونة، تلميح_الأداة، اختصار_لوحة_المفاتيح). يمكن أن تكون الأيقونة، تلميح_الأداة واختصار لوحة المفاتيح None. يجب أن يكون اختصار لوحة المفاتيح إما سلسلة، أو None، أو tuple من الاختصارات. إذا كان None، فلن يتم تسجيل اختصار لوحة مفاتيح مقابل للإجراء. إذا مررت tuple فارغًا، فسيتم تسجيل الاختصار بدون ربط مفتاح افتراضي.

en: If not None, used for the name displayed to the user when customizing the keyboard shortcuts for the above action spec instead of action_spec[0]
ar: إذا لم تكن None، تُستخدم للاسم المعروض للمستخدم عند تخصيص اختصارات لوحة المفاتيح لمواصفات الإجراء أعلاه بدلاً من action_spec[0]

en: If True, a menu is automatically created and added to self.qaction
ar: إذا كان True، يتم إنشاء قائمة تلقائيًا وإضافتها إلى self.qaction

en: If True, a clone of self.qaction is added to the menu of self.qaction If you want the text of this action to be different from that of self.qaction, set this variable to the new text
ar: إذا كان True، يتم إضافة نسخة من self.qaction إلى قائمة self.qaction. إذا كنت تريد أن يكون نص هذا الإجراء مختلفًا عن نص self.qaction، فعيّن هذا المتغير إلى النص الجديد

en: Set of locations to which this action must not be added. See :attr:`all_locations` for a list of possible locations
ar: مجموعة من المواقع التي يجب ألا يتم إضافة هذا الإجراء إليها. راجع :attr:`all_locations` للحصول على قائمة بالمواقع المحتملة

en: Set of locations from which this action must not be removed. See :attr:`all_locations` for a list of possible locations
ar: مجموعة من المواقع التي يجب ألا يتم إزالة هذا الإجراء منها. راجع :attr:`all_locations` للحصول على قائمة بالمواقع المحتملة

en: Type of action 'current' means acts on the current view 'global' means an action that does not act on the current view, but rather on calibre as a whole
ar: نوع الإجراء 'current' يعني أنه يعمل على العرض الحالي 'global' يعني إجراء لا يعمل على العرض الحالي، بل على calibre ككل

en: If True, then this InterfaceAction will have the opportunity to interact with drag and drop events. See the methods, :meth:`accept_enter_event`, :meth`:accept_drag_move_event`, :meth:`drop_event` for details.
ar: إذا كان True، فستتاح لـ InterfaceAction هذه الفرصة للتفاعل مع أحداث السحب والإفلات. راجع الأساليب، :meth:`accept_enter_event`، :meth`:accept_drag_move_event`، :meth:`drop_event` للحصول على التفاصيل.

en: This method should return True iff this interface action is capable of handling the drag event. Do not call accept/ignore on the event, that will be taken care of by the calibre UI.
ar: يجب أن يعيد هذا الأسلوب True إذا وفقط إذا كانت هذه الإجراء الواجهة قادرًا على التعامل مع حدث السحب. لا تستدعِ accept/ignore على الحدث، سيتولى واجهة مستخدم calibre ذلك.

en: This method should perform some useful action and return True iff this interface action is capable of handling the drop event. Do not call accept/ignore on the event, that will be taken care of by the calibre UI. You should not perform blocking/long operations in this function. Instead emit a signal or use QTimer.singleShot and return quickly. See the builtin actions for examples.
ar: يجب أن يقوم هذا الأسلوب بإجراء بعض الإجراءات المفيدة وإرجاع True إذا وفقط إذا كانت هذه الإجراء الواجهة قادرًا على التعامل مع حدث الإفلات. لا تستدعِ accept/ignore على الحدث، سيتولى واجهة مستخدم calibre ذلك. يجب ألا تقوم بإجراء عمليات حظر/طويلة في هذه الدالة. بدلاً من ذلك أرسل إشارة أو استخدم QTimer.singleShot وعد بسرعة. راجع الإجراءات المدمجة للحصول على أمثلة.

en: Convenience method to easily add actions to a QMenu. Returns the created QAction. This action has one extra attribute calibre_shortcut_unique_name which if not None refers to the unique name under which this action is registered with the keyboard manager.
ar: أسلوب ملائم لإضافة الإجراءات بسهولة إلى QMenu. يعيد QAction الذي تم إنشاؤه. يحتوي هذا الإجراء على سمة إضافية واحدة calibre_shortcut_unique_name والتي إذا لم تكن None تشير إلى الاسم الفريد الذي يتم بموجبه تسجيل هذا الإجراء مع مدير لوحة المفاتيح.

en: The QMenu the newly created action will be added to
ar: قائمة QMenu التي سيتم إضافة الإجراء الذي تم إنشاؤه حديثًا إليها

en: A unique name for this action, this must be globally unique, so make it as descriptive as possible. If in doubt, add an UUID to it.
ar: اسم فريد لهذا الإجراء، يجب أن يكون فريدًا عالميًا، لذا اجعله وصفيًا قدر الإمكان. إذا كنت في شك، أضف إليه UUID.

en: The text of the action.
ar: نص الإجراء.

en: Either a QIcon or a file name. The file name is passed to the QIcon.ic() builtin, so you do not need to pass the full path to the images folder.
ar: إما QIcon أو اسم ملف. يتم تمرير اسم الملف إلى دالة QIcon.ic() المدمجة، لذا لا تحتاج إلى تمرير المسار الكامل إلى مجلد الصور.

en: A string, a list of strings, None or False. If False, no keyboard shortcut is registered for this action. If None, a keyboard shortcut with no default keybinding is registered. String and list of strings register a shortcut with default keybinding as specified.
ar: سلسلة، أو قائمة سلاسل، أو None، أو False. إذا كان False، فلن يتم تسجيل اختصار لوحة مفاتيح لهذا الإجراء. إذا كان None، يتم تسجيل اختصار لوحة مفاتيح بدون ربط مفتاح افتراضي. تسجل السلسلة وقائمة السلاسل اختصارًا بربط مفتاح افتراضي كما هو محدد.

en: A description for this action. Used to set tooltips.
ar: وصف لهذا الإجراء. يستخدم لتعيين تلميحات الأدوات.

en: A callable which is connected to the triggered signal of the created action.
ar: كائن قابل للاستدعاء متصل بإشارة triggered للإجراء الذي تم إنشاؤه.

en: The text displayed to the user when customizing the keyboard shortcuts for this action. By default it is set to the value of ``text``.
ar: النص المعروض للمستخدم عند تخصيص اختصارات لوحة المفاتيح لهذا الإجراء. افتراضيًا، يتم تعيينه إلى قيمة ``text``.

en: Shortcuts for actions that don't always appear, or are library dependent, may disappear when other keyboard shortcuts are edited unless ```persist_shortcut``` is set True.
ar: قد تختفي اختصارات الإجراءات التي لا تظهر دائمًا، أو التي تعتمد على المكتبة، عند تعديل اختصارات لوحة المفاتيح الأخرى ما لم يتم تعيين ```persist_shortcut``` على True.

en: A dictionary of the form ``{name : file_contents}``. Any names that were not found in the ZIP file will not be present in the dictionary.
ar: قاموس بالشكل ``{الاسم : محتويات_الملف}``. أي أسماء لم يتم العثور عليها في ملف ZIP لن تكون موجودة في القاموس.

en: Setup this plugin. Only called once during initialization. self.gui is available. The action specified by :attr:`action_spec` is available as ``self.qaction``.
ar: إعداد هذه الإضافة. يتم استدعاؤها مرة واحدة فقط أثناء التهيئة. self.gui متاح. الإجراء المحدد بواسطة :attr:`action_spec` متاح كـ ``self.qaction``.

en: Called whenever the book list being displayed in calibre changes. Currently values for loc are: ``library, main, card and cardb``.
ar: يتم استدعاؤها كلما تغيرت قائمة الكتب المعروضة في calibre. حاليًا القيم لـ loc هي: ``library, main, card و cardb``.

en: This method should enable/disable this action and its sub actions as appropriate for the location.
ar: يجب أن يقوم هذا الأسلوب بتمكين/تعطيل هذا الإجراء وإجراءاته الفرعية حسب ما هو مناسب للموقع.

en: Called whenever the current library is changed.
ar: يتم استدعاؤها كلما تغيرت المكتبة الحالية.

en: The LibraryDatabase corresponding to the previous library.
ar: قاعدة بيانات المكتبة المطابقة للمكتبة السابقة.

en: The LibraryDatabase corresponding to the new library.
ar: قاعدة بيانات المكتبة المطابقة للمكتبة الجديدة.

en: The LibraryDatabase corresponding to the current library.
ar: قاعدة بيانات المكتبة المطابقة للمكتبة الحالية.

en: Called once per action when the layout of the main GUI is completed. If your action needs to make changes to the layout, they should be done here, rather than in :meth:`initialization_complete`.
ar: يتم استدعاؤها مرة واحدة لكل إجراء عند اكتمال تخطيط واجهة المستخدم الرسومية الرئيسية. إذا كان الإجراء الخاص بك يحتاج إلى إجراء تغييرات على التخطيط، فيجب أن يتم ذلك هنا، بدلاً من :meth:`initialization_complete`.

en: Called once per action when the initialization of the main GUI is completed.
ar: يتم استدعاؤها مرة واحدة لكل إجراء عند اكتمال تهيئة واجهة المستخدم الرسومية الرئيسية.

en: Called when displaying the context menu in the Tag browser. ``index`` is the QModelIndex that points to the Tag browser item that was right clicked. Test it for validity with index.valid() and get the underlying TagTreeItem object with index.data(Qt.ItemDataRole.UserRole). Any action objects yielded by this method will be added to the context menu.
ar: يتم استدعاؤها عند عرض قائمة السياق في متصفح العلامات. ``index`` هو QModelIndex الذي يشير إلى عنصر متصفح العلامات الذي تم النقر عليه بزر الماوس الأيمن. اختبر صلاحيته باستخدام index.valid() واحصل على كائن TagTreeItem الأساسي باستخدام index.data(Qt.ItemDataRole.UserRole). سيتم إضافة أي كائنات إجراء يتم إنشاؤها بواسطة هذا الأسلوب إلى قائمة السياق.

en: Called once per plugin when the main GUI is in the process of shutting down. Release any used resources, but try not to block the shutdown for long periods of time.
ar: يتم استدعاؤها مرة واحدة لكل إضافة عندما تكون واجهة المستخدم الرسومية الرئيسية في طور الإغلاق. حرر أي موارد مستخدمة، ولكن حاول ألا تعيق عملية الإغلاق لفترات طويلة من الزمن.

en: This method must return the actual interface action plugin object.
ar: يجب أن يعيد هذا الأسلوب كائن إضافة إجراء الواجهة الفعلي.

en: Preferences plugins
ar: إضافات التفضيلات

en: A plugin representing a widget displayed in the Preferences dialog.
ar: إضافة تمثل أداة عرض في مربع حوار التفضيلات.

en: This plugin has only one important method :meth:`create_widget`. The various fields of the plugin control how it is categorized in the UI.
ar: تحتوي هذه الإضافة على أسلوب واحد مهم فقط :meth:`create_widget`. تتحكم الحقول المختلفة للإضافة في كيفية تصنيفها في واجهة المستخدم.

en: Import path to module that contains a class named ConfigWidget which implements the ConfigWidgetInterface. Used by :meth:`create_widget`.
ar: مسار الاستيراد إلى الوحدة التي تحتوي على فئة تسمى ConfigWidget والتي تنفذ ConfigWidgetInterface. تستخدم بواسطة :meth:`create_widget`.

en: Where in the list of categories the :attr:`category` of this plugin should be.
ar: مكان :attr:`category` لهذه الإضافة في قائمة الفئات.

en: Where in the list of names in a category, the :attr:`gui_name` of this plugin should be
ar: مكان :attr:`gui_name` لهذه الإضافة في قائمة الأسماء في فئة ما

en: The category this plugin should be in
ar: الفئة التي يجب أن تنتمي إليها هذه الإضافة

en: The category name displayed to the user for this plugin
ar: اسم الفئة المعروض للمستخدم لهذه الإضافة

en: The name displayed to the user for this plugin
ar: الاسم المعروض للمستخدم لهذه الإضافة

en: The icon for this plugin, should be an absolute path
ar: أيقونة هذه الإضافة، يجب أن تكون مسارًا مطلقًا

en: The description used for tooltips and the like
ar: الوصف المستخدم لتلميحات الأدوات وما شابه

en: Create and return the actual Qt widget used for setting this group of preferences. The widget must implement the :class:`calibre.gui2.preferences.ConfigWidgetInterface`.
ar: إنشاء وإرجاع أداة Qt الفعلية المستخدمة لتعيين هذه المجموعة من التفضيلات. يجب أن تنفذ الأداة :class:`calibre.gui2.preferences.ConfigWidgetInterface`.

en: The default implementation uses :attr:`config_widget` to instantiate the widget.
ar: التنفيذ الافتراضي يستخدم :attr:`config_widget` لإنشاء الأداة.

en: This class defines the interface that all widgets displayed in the Preferences dialog must implement. See :class:`ConfigWidgetBase` for a base class that implements this interface and defines various convenience methods as well.
ar: تحدد هذه الفئة الواجهة التي يجب أن تنفذها جميع الأدوات المعروضة في مربع حوار التفضيلات. راجع :class:`ConfigWidgetBase` للحصول على فئة أساسية تنفذ هذه الواجهة وتحدد أساليب ملائمة مختلفة أيضًا.

en: This signal must be emitted whenever the user changes a value in this widget
ar: يجب أن يتم إطلاق هذه الإشارة كلما قام المستخدم بتغيير قيمة في هذه الأداة

en: Set to True iff the :meth:`restore_to_defaults` method is implemented.
ar: عيّن إلى True إذا وفقط إذا تم تنفيذ الأسلوب :meth:`restore_to_defaults`.

en: The tooltip for the "Restore defaults" button
ar: تلميح الأداة لزر "استعادة الافتراضيات"

en: If True the Preferences dialog will not allow the user to set any more preferences. Only has effect if :meth:`commit` returns True.
ar: إذا كان True، فإن مربع حوار التفضيلات لن يسمح للمستخدم بتعيين أي تفضيلات أخرى. لا يكون له تأثير إلا إذا أعاد :meth:`commit` قيمة True.

en: Called once before the widget is displayed, should perform any necessary setup.
ar: يتم استدعاؤها مرة واحدة قبل عرض الأداة، ويجب أن تقوم بأي إعدادات ضرورية.

en: The main calibre graphical user interface
ar: واجهة المستخدم الرسومية الرئيسية لـ calibre

en: Should set all config values to their initial values (the values stored in the config files). A "return" statement is optional. Return False if the dialog is not to be shown.
ar: يجب تعيين جميع قيم التكوين إلى قيمها الأولية (القيم المخزنة في ملفات التكوين). عبارة "return" اختيارية. أعد False إذا كان مربع الحوار لا يجب عرضه.

en: Should set all config values to their defaults.
ar: يجب تعيين جميع قيم التكوين إلى قيمها الافتراضية.

en: Save any changed settings. Return True if the changes require a restart, False otherwise. Raise an :class:`AbortCommit` exception to indicate that an error occurred. You are responsible for giving the user feedback about what the error is and how to correct it.
ar: احفظ أي إعدادات تم تغييرها. أعد True إذا كانت التغييرات تتطلب إعادة تشغيل، وإلا False. اطرح استثناء :class:`AbortCommit` للإشارة إلى حدوث خطأ. أنت مسؤول عن تقديم ملاحظات للمستخدم حول ماهية الخطأ وكيفية تصحيحه.

en: Called once after this widget is committed. Responsible for causing the gui to reread any changed settings. Note that by default the GUI re-initializes various elements anyway, so most widgets won't need to use this method.
ar: يتم استدعاؤها مرة واحدة بعد تثبيت هذه الأداة. مسؤولة عن جعل واجهة المستخدم الرسومية تعيد قراءة أي إعدادات تم تغييرها. لاحظ أنه افتراضيًا، تقوم واجهة المستخدم الرسومية بإعادة تهيئة عناصر مختلفة على أي حال، لذا لن تحتاج معظم الأدوات إلى استخدام هذا الأسلوب.

en: Called if the initially displayed tab is changed before the widget is shown, but after it is initialized.
ar: يتم استدعاؤها إذا تم تغيير علامة التبويب المعروضة في البداية قبل عرض الأداة، ولكن بعد تهيئتها.

en: Base class that contains code to easily add standard config widgets like checkboxes, combo boxes, text fields and so on. See the :meth:`register` method.
ar: فئة أساسية تحتوي على كود لإضافة أدوات تكوين قياسية بسهولة مثل مربعات الاختيار، ومربعات التحرير والسرد، وحقول النص وما إلى ذلك. راجع الأسلوب :meth:`register`.

en: This class automatically handles change notification, resetting to default, translation between gui objects and config objects, etc. for registered settings.
ar: تتعامل هذه الفئة تلقائيًا مع إشعارات التغيير، وإعادة التعيين إلى الافتراضي، والترجمة بين كائنات واجهة المستخدم الرسومية وكائنات التكوين، وما إلى ذلك، للإعدادات المسجلة.

en: If your config widget inherits from this class but includes setting that are not registered, you should override the :class:`ConfigWidgetInterface` methods and call the base class methods inside the overrides.
ar: إذا كانت أداة التكوين الخاصة بك ترث من هذه الفئة ولكنها تتضمن إعدادات غير مسجلة، فيجب عليك تجاوز أساليب :class:`ConfigWidgetInterface` واستدعاء أساليب الفئة الأساسية داخل التجاوزات.

en: Register a setting.
ar: تسجيل إعداد.

en: The setting name
ar: اسم الإعداد

en: The config object that reads/writes the setting
ar: كائن التكوين الذي يقرأ/يكتب الإعداد

en: The name of the GUI object that presents an interface to change the setting. By default it is assumed to be ``'opt_' + name``.
ar: اسم كائن واجهة المستخدم الرسومية الذي يقدم واجهة لتغيير الإعداد. افتراضيًا، يُفترض أن يكون ``'opt_' + name``.

en: If this setting is a multiple choice (combobox) based setting, the list of choices. The list is a list of two element tuples of the form: ``[(gui name, value), ...]``
ar: إذا كان هذا الإعداد يعتمد على خيارات متعددة (مربع تحرير وسرد)، فقائمة الخيارات. القائمة هي قائمة من tupleين من عنصرين بالشكل: ``[(اسم الواجهة الرسومية، القيمة)، ...]``

en: The class responsible for managing this setting. The default class handles almost all cases, so this param is rarely used.
ar: الفئة المسؤولة عن إدارة هذا الإعداد. تتعامل الفئة الافتراضية مع جميع الحالات تقريبًا، لذا نادرًا ما يتم استخدام هذا المعامل.
