# SOME DESCRIPTIVE TITLE.
# Copyright (C) Kovid Goyal
# This file is distributed under the same license as the calibre package.
# 
# Translators:
# Nader LADHARI, 2023
msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-10-04 09:47+0000\n"
"PO-Revision-Date: 2014-07-05 16:49+0000\n"
"Last-Translator: Nader LADHARI, 2023\n"
"Language-Team: Arabic (http://app.transifex.com/calibre/calibre/language/ar/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: ar\n"
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"

#: ../../__w/calibre/calibre/manual/db_api.rst:4
msgid "API documentation for the database interface"
msgstr "وثائق API لواجهة قاعدة البيانات"

#: ../../__w/calibre/calibre/manual/db_api.rst:9
msgid ""
"This API is thread safe (it uses a multiple reader, single writer locking "
"scheme).  You can access this API like this::"
msgstr "هذا الواجهة API آمنة للاستخدام (حيث تستخدم نظام قفل بالقراءة المتعددة والكتابة الفردية). يمكنك الوصول إلى هذا الواجهة بهذه الطريقة:"

#: ../../__w/calibre/calibre/manual/db_api.rst:14
msgid ""
"If you are in a calibre plugin that is part of the main calibre GUI, you get"
" access to it like this instead::"
msgstr "إذا كنت في إضافة Calibre التي هي جزء من واجهة المستخدم الرئيسية لـ Calibre، فيمكنك الوصول إليها بهذه الطريقة:"

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache:1
msgid ""
"An in-memory cache of the metadata.db file from a calibre library. This "
"class also serves as a threadsafe API for accessing the database. The in-"
"memory cache is maintained in normal form for maximum performance."
msgstr "ذاكرة التخزين المؤقتة لملف metadata.db من مكتبة Calibre. تعمل هذه الفئة أيضًا كواجهة برمجة تطبيقات آمنة للاستخدام في الخيوط للوصول إلى قاعدة البيانات. يتم الاحتفاظ بذاكرة التخزين المؤقتة في الذاكرة العادية لتحقيق أقصى أداء."

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache:5
msgid ""
"SQLITE is simply used as a way to read and write from metadata.db robustly. "
"All table reading/sorting/searching/caching logic is re-implemented. This "
"was necessary for maximum performance and flexibility."
msgstr "يُستخدم SQLITE ببساطة كوسيلة للقراءة والكتابة من metadata.db بشكل موثوق. تم يتم إعادة تنفيذ جميع منطق قراءة/فرز/بحث/تخزين الجداول. وهذا ضروريً لتحقيق أفضل أداء ومرونة."

#: ../../__w/calibre/calibre/manual/docstring of
#: calibre.db.cache.Cache.EventType.book_created:1
msgid ""
"When a new book record is created in the database, with the book id as the "
"only argument"
msgstr "عند إنشاء سجل كتاب جديد في قاعدة البيانات، باستخدام معرف الكتاب كوسيط وحيد."

#: ../../__w/calibre/calibre/manual/docstring of
#: calibre.db.cache.Cache.EventType.book_edited:1
msgid "When a book format is edited, with arguments: (book_id, fmt)"
msgstr "عند تحرير تنسيق كتاب ما، باستخدام الوسائط: (book_id، fmt)"

#: ../../__w/calibre/calibre/manual/docstring of
#: calibre.db.cache.Cache.EventType.books_removed:1
msgid ""
"When books are removed from the database with the list of book ids as the "
"only argument"
msgstr "عند إزالة الكتب من قاعدة البيانات باستخدام قائمة من معرفات الكتب كوسيط وحيد."

#: ../../__w/calibre/calibre/manual/docstring of
#: calibre.db.cache.Cache.EventType.format_added:1
msgid "When a format is added to a book, with arguments: (book_id, format)"
msgstr "عند إضافة تنسيق إلى كتاب، باستخدام الوسائط: (book_id، fmt)"

#: ../../__w/calibre/calibre/manual/docstring of
#: calibre.db.cache.Cache.EventType.formats_removed:1
msgid ""
"When formats are removed from a book, with arguments: (mapping of book id to"
" set of formats removed from the book)"
msgstr "عند إزالة التنسيقات من كتاب ما، باستخدام الوسائط: (تعيين معرف الكتاب إلى مجموعة التنسيقات المزالة من الكتاب)"

#: ../../__w/calibre/calibre/manual/docstring of
#: calibre.db.cache.Cache.EventType.indexing_progress_changed:1
msgid "When the indexing progress changes"
msgstr ""

#: ../../__w/calibre/calibre/manual/docstring of
#: calibre.db.cache.Cache.EventType.items_removed:1
msgid ""
"When items such as tags or authors are removed from some books. Arguments: "
"(field_name, affected book ids, ids of removed items)"
msgstr "عندما تتم إزالة  بعض العناصر  كالعلامات أو كآسامي الكتّاب من بعض الكتب. الوسائط: (اسم الحقل، معرفات الكتب المتأثرة، معرفات العناصر المزالة)."

#: ../../__w/calibre/calibre/manual/docstring of
#: calibre.db.cache.Cache.EventType.items_renamed:1
msgid ""
"When items such as tags or authors are renamed in some or all books. "
"Arguments: (field_name, affected book ids, map of old item id to new item "
"id)"
msgstr "عندما تتم م إعادة تسمية بعض العناصر كالعلامات أو آسامي الكتّاب من بعض الكتب. الوسائط: (اسم الحقل، معرفات الكتب المتأثرة، معرفات العناصر المزالة)."

#: ../../__w/calibre/calibre/manual/docstring of
#: calibre.db.cache.Cache.EventType.metadata_changed:1
msgid ""
"When some metadata is changed for some books, with arguments: (name of "
"changed field, set of affected book ids)"
msgstr "عند تغيير بعض البيانات الوصفية لبعض الكتب، باستخدام الوسائط: (اسم الحقل المتغير، مجموعة معرفات الكتب المقصودة)."

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.add_books:1
msgid ""
"Add the specified books to the library. Books should be an iterable of "
"2-tuples, each 2-tuple of the form :code:`(mi, format_map)` where mi is a "
"Metadata object and format_map is a dictionary of the form :code:`{fmt: "
"path_or_stream}`, for example: :code:`{'EPUB': '/path/to/file.epub'}`."
msgstr "أضف الكتب المعيَنة إلى المكتبة. يجب أن تكون الكتب عبارة عن مجموعة من الأزواج. يتكون كل زوج من الشكل التَالي: (mi, format_map) حيث mi هو كائن Metadata و format_map هو قاموس بالصيغة {'التنسيق': 'المسار أو التيار'}، على سبيل المثال: {'EPUB': '/المسار/إلى/الملف.epub'}. "

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.add_books:6
msgid ""
"Returns a pair of lists: :code:`ids, duplicates`. ``ids`` contains the book "
"ids for all newly created books in the database. ``duplicates`` contains the"
" :code:`(mi, format_map)` for all books that already exist in the database "
"as per the simple duplicate detection heuristic used by :meth:`has_book`."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.add_custom_book_data:1
msgid ""
"Add data for name where val_map is a map of book_ids to values. If "
"delete_first is True, all previously stored data for name will be removed."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.add_extra_files:1
msgid "Add extra data files"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.add_format:1
msgid ""
"Add a format to the specified book. Return True if the format was added "
"successfully."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.add_format:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.cover:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format_metadata:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_all_link_maps_for_book:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_link_map:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_next_series_num_for:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.list_extra_files:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.remove_formats:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.rename_items:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.search:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_field:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_link_map:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.tags_older_than:0
msgid "Parameters"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.add_format:3
msgid ""
"If True replace existing format, otherwise if the format already exists, "
"return False."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.add_format:4
msgid ""
"If True, file type plugins are run on the format before and after being "
"added."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.add_format:5
msgid "Internal use only."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.add_listener:1
msgid ""
"Register a callback function that will be called after certain actions are "
"taken on this database. The function must take three arguments: "
"(:class:`EventType`, library_id, event_type_specific_data)"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.all_book_ids:1
msgid "Frozen set of all known book ids."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.all_field_for:1
msgid "Same as field_for, except that it operates on multiple books at once"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.all_field_ids:1
msgid "Frozen set of ids for all values in the field ``name``."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.all_field_names:1
msgid ""
"Frozen set of all fields names (should only be used for many-one and many-"
"many fields)"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.author_data:1
msgid "Return author data as a dictionary with keys: name, sort, link"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.author_data:3
msgid ""
"If no authors with the specified ids are found an empty dictionary is "
"returned. If author_ids is None, data for all authors is returned."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.author_sort_from_authors:1
msgid ""
"Given a list of authors, return the author_sort string for the authors, "
"preferring the author sort associated with the author over the computed "
"string."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.books_for_field:1
msgid ""
"Return all the books associated with the item identified by ``item_id``, "
"where the item belongs to the field ``name``."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.books_for_field:4
msgid ""
"Returned value is a set of book ids, or the empty set if the item or the "
"field does not exist."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.books_in_virtual_library:1
msgid "Return the set of books in the specified virtual library"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.compress_covers:1
msgid ""
"Compress the cover images for the specified books. A compression quality of "
"100 will perform lossless compression, otherwise lossy compression."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.compress_covers:4
msgid ""
"The progress callback will be called with the book_id and the old and new "
"sizes for each book that has been processed. If an error occurs, the new "
"size will be a string with the error details."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.copy_cover_to:1
msgid ""
"Copy the cover to the file like object ``dest``. Returns False if no cover "
"exists or dest is the same file as the current cover. dest can also be a "
"path in which case the cover is copied to it if and only if the path is "
"different from the current path (taking case sensitivity into account)."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.copy_format_to:1
msgid ""
"Copy the format ``fmt`` to the file like object ``dest``. If the specified "
"format does not exist, raises :class:`NoSuchFormat` error. dest can also be "
"a path (to a file), in which case the format is copied to it, iff the path "
"is different from the current path (taking case sensitivity into account)."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.cover:1
msgid ""
"Return the cover image or None. By default, returns the cover as a "
"bytestring."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.cover:4
msgid ""
"WARNING: Using as_path will copy the cover to a temp file and return the "
"path to the temp file. You should delete the temp file when you are done "
"with it."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.cover:8
msgid ""
"If True return the image as an open file object (a SpooledTemporaryFile)"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.cover:9
msgid "If True return the image as a QImage object"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.cover:10
msgid "If True return the image as a QPixmap object"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.cover:11
msgid "If True return the image as a path pointing to a temporary file"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.data_for_find_identical_books:1
msgid ""
"Return data that can be used to implement :meth:`find_identical_books` in a "
"worker process without access to the db. See db.utils for an implementation."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.data_for_has_book:1
msgid ""
"Return data suitable for use in :meth:`has_book`. This can be used for an "
"implementation of :meth:`has_book` in a worker process without access to the"
" db."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.delete_custom_book_data:1
msgid ""
"Delete data for name. By default deletes all data, if you only want to "
"delete data for some book ids, pass in a list of book ids."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.delete_trash_entry:1
msgid ""
"Delete an entry from the trash. Here category is 'b' for books and 'f' for "
"formats."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.embed_metadata:1
msgid ""
"Update metadata in all formats of the specified book_ids to current metadata"
" in the database."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.expire_old_trash:1
msgid "Expire entries from the trash that are too old"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.fast_field_for:1
msgid ""
"Same as field_for, except that it avoids the extra lookup to get the field "
"object"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.field_for:1
msgid ""
"Return the value of the field ``name`` for the book identified by "
"``book_id``. If no such book exists or it has no defined value for the field"
" ``name`` or no such field exists, then ``default_value`` is returned."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.field_for:6
msgid ""
"``default_value`` is not used for title, title_sort, authors, author_sort "
"and series_index. This is because these always have values in the db. "
"``default_value`` is used for all custom columns."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.field_for:10
msgid ""
"The returned value for is_multiple fields are always tuples, even when no "
"values are found (in other words, default_value is ignored). The exception "
"is identifiers for which the returned value is always a dictionary. The "
"returned tuples are always in link order, that is, the order in which they "
"were created."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.field_ids_for:1
msgid ""
"Return the ids (as a tuple) for the values that the field ``name`` has on "
"the book identified by ``book_id``. If there are no values, or no such book,"
" or no such field, an empty tuple is returned."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.find_identical_books:1
msgid ""
"Finds books that have a superset of the authors in mi and the same title "
"(title is fuzzy matched). See also :meth:`data_for_find_identical_books`."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format:1
msgid ""
"Return the e-book format as a bytestring or `None` if the format doesn't "
"exist, or we don't have permission to write to the e-book file."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format:4
msgid ""
"If True the e-book format is returned as a file object. Note that the file "
"object is a SpooledTemporaryFile, so if what you want to do is copy the "
"format to another file, use :meth:`copy_format_to` instead for performance."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format:8
msgid ""
"Copies the format file to a temp file and returns the path to the temp file"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format:10
msgid ""
"If True and returning a path the filename is the same as that used in the "
"library. Note that using this means that repeated calls yield the same temp "
"file (which is re-created each time)"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format_abspath:1
msgid ""
"Return absolute path to the e-book file of format `format`. You should "
"almost never use this, as it breaks the threadsafe promise of this API. "
"Instead use, :meth:`copy_format_to`."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format_abspath:5
msgid ""
"Currently used only in calibredb list, the viewer, edit book, compare_format"
" to original format, open with, bulk metadata edit and the catalogs (via "
"get_data_as_dict())."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format_abspath:9
msgid ""
"Apart from the viewer, open with and edit book, I don't believe any of the "
"others do any file write I/O with the results of this call."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format_hash:1
msgid ""
"Return the hash of the specified format for the specified book. The kind of "
"hash is backend dependent, but is usually SHA-256."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format_metadata:1
msgid ""
"Return the path, size and mtime for the specified format for the specified "
"book. You should not use path unless you absolutely have to, since accessing"
" it directly breaks the threadsafe guarantees of this API. Instead use the "
":meth:`copy_format_to` method."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format_metadata:6
msgid ""
"If ``True`` cached values are used, otherwise a slow filesystem access is "
"done. The cache values could be out of date if access was performed to the "
"filesystem outside of this API."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.format_metadata:10
msgid ""
"If ``True`` The max_size field of the database is updated for this book."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.formats:1
msgid ""
"Return tuple of all formats for the specified book. If verify_formats is "
"True, verifies that the files exist on disk."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_all_link_maps_for_book:1
msgid ""
"Returns all links for all fields referenced by book identified by book_id. "
"If book_id doesn't exist then the method returns {}."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_all_link_maps_for_book:4
msgid ""
"Example: Assume author A has link X, author B has link Y, tag S has link F, "
"and tag T has link G. If book 1 has author A and tag T, this method returns "
"{'authors':{'A':'X'}, 'tags':{'T', 'G'}}. If book 2's author is neither A "
"nor B and has no tags, this method returns {}."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_all_link_maps_for_book:9
msgid "the book id in question."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_all_link_maps_for_book:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_link_map:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.list_extra_files:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.remove_formats:0
#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_link_map:0
msgid "Returns"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_all_link_maps_for_book:11
msgid ""
"{field: {field_value, link_value}, ...  for all fields with a field_value "
"having a non-empty link value for that book"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_categories:1
msgid "Used internally to implement the Tag Browser"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_custom_book_data:1
msgid ""
"Get data for name. By default returns data for all book_ids, pass in a list "
"of book ids if you only want some data. Returns a map of book_id to values. "
"If a particular value could not be decoded, uses default for it."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_id_map:1
msgid ""
"Return a mapping of id numbers to values for the specified field. The field "
"must be a many-one or many-many field, otherwise a ValueError is raised."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_ids_for_custom_book_data:1
msgid "Return the set of book ids for which name has data."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_item_id:1
msgid ""
"Return the item id for item_name (case-insensitive) or None if not found"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_item_ids:1
msgid "Return the item id for item_name (case-insensitive)"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_item_name:1
msgid ""
"Return the item name for the item specified by item_id in the specified "
"field. See also :meth:`get_id_map`."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_link_map:1
msgid "Return a dictionary of links for the supplied field."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_link_map:3
msgid "the lookup name of the field for which the link map is desired"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_link_map:5
msgid "{field_value:link_value, ...} for non-empty links"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_metadata:1
msgid ""
"Return metadata for the book identified by book_id as a "
":class:`calibre.ebooks.metadata.book.base.Metadata` object. Note that the "
"list of formats is not verified. If get_cover is True, the cover is "
"returned, either a path to temp file as mi.cover or if cover_as_data is True"
" then as mi.cover_data."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_next_series_num_for:1
msgid ""
"Return the next series index for the specified series, taking into account "
"the various preferences that control next series number generation."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_next_series_num_for:4
msgid "The series-like field (defaults to the builtin series column)"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_next_series_num_for:5
msgid ""
"If True, returns a mapping of book_id to current series_index value instead."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_proxy_metadata:1
msgid ""
"Like :meth:`get_metadata` except that it returns a ProxyMetadata object that"
" only reads values from the database on demand. This is much faster than "
"get_metadata when only a small number of fields need to be accessed from the"
" returned metadata object."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.get_usage_count_by_id:1
msgid ""
"Return a mapping of id to usage count for all values of the specified field,"
" which must be a many-one or many-many field."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.has_book:1
msgid ""
"Return True iff the database contains an entry with the same title as the "
"passed in Metadata object. The comparison is case-insensitive. See also "
":meth:`data_for_has_book`."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.has_format:1
msgid "Return True iff the format exists on disk"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.has_id:1
msgid "Return True iff the specified book_id exists in the db"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.init:1
msgid "Initialize this cache with data from the backend."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.list_extra_files:1
msgid "Get information about extra files in the book's directory."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.list_extra_files:3
msgid "the database book id for the book"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.list_extra_files:4
msgid ""
"the pattern of filenames to search for. Empty pattern matches all extra "
"files. Patterns must use / as separator. Use the DATA_FILE_PATTERN constant "
"to match files inside the data directory."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.list_extra_files:7
msgid ""
"A tuple of all extra files matching the specified pattern. Each element of "
"the tuple is ExtraFile(relpath, file_path, stat_result). Where relpath is "
"the relative path of the file to the book directory using / as a separator. "
"stat_result is the result of calling os.stat() on the file."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.merge_extra_files:1
msgid ""
"Merge the extra files from src_ids into dest_id. Conflicting files are auto-"
"renamed unless replace=True in which case they are replaced."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.move_book_from_trash:1
msgid "Undelete a book from the trash directory"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.move_format_from_trash:1
msgid "Undelete a format from the trash directory"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.multisort:1
msgid ""
"Return a list of sorted book ids. If ids_to_sort is None, all book ids are "
"returned."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.multisort:4
msgid ""
"fields must be a list of 2-tuples of the form (field_name, ascending=True or"
" False). The most significant field is the first 2-tuple."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.pref:1
msgid ""
"Return the value for the specified preference or the value specified as "
"``default`` if the preference is not set."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.read_backup:1
msgid ""
"Return the OPF metadata backup for the book as a bytestring or None if no "
"such backup exists."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.remove_books:1
msgid ""
"Remove the books specified by the book_ids from the database and delete "
"their format files. If ``permanent`` is False, then the format files are "
"placed in the per-library trash directory."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.remove_formats:1
msgid "Remove the specified formats from the specified books."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.remove_formats:3
msgid "A mapping of book_id to a list of formats to be removed from the book."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.remove_formats:4
msgid ""
"If True, only remove the record for the format from the db, do not delete "
"the actual format file from the filesystem."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.remove_formats:5
msgid ""
"A map of book id to set of formats actually deleted from the filesystem for "
"that book"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.remove_items:1
msgid ""
"Delete all items in the specified field with the specified ids. Returns the "
"set of affected book ids. ``restrict_to_book_ids`` is an optional set of "
"books ids. If specified the items will only be removed from those books."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.rename_extra_files:1
msgid "Rename extra data files"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.rename_items:1
msgid ""
"Rename items from a many-one or many-many field such as tags or series."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.rename_items:3
msgid ""
"When renaming in a series-like field also change the series_index values."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.rename_items:4
msgid ""
"An optional set of book ids for which the rename is to be performed, "
"defaults to all books."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.restore_book:1
msgid ""
"Restore the book entry in the database for a book that already exists on the"
" filesystem"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.restore_original_format:1
msgid ""
"Restore the specified format from the previously saved ORIGINAL_FORMAT, if "
"any. Return True on success. The ORIGINAL_FORMAT is deleted after a "
"successful restore."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.safe_read_lock:1
msgid ""
"A safe read lock is a lock that does nothing if the thread already has a "
"write lock, otherwise it acquires a read lock. This is necessary to prevent "
"DowngradeLockErrors, which can happen when updating the search cache in the "
"presence of composite columns. Updating the search cache holds an exclusive "
"lock, but searching a composite column involves reading field values via "
"ProxyMetadata which tries to get a shared lock. There may be other scenarios"
" that trigger this as well."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.safe_read_lock:9
msgid ""
"This property returns a new lock object on every access. This lock object is"
" not recursive (for performance) and must only be used in a with statement "
"as ``with cache.safe_read_lock:`` otherwise bad things will happen."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.save_original_format:1
msgid ""
"Save a copy of the specified format as ORIGINAL_FORMAT, overwriting any "
"existing ORIGINAL_FORMAT."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.search:1
msgid ""
"Search the database for the specified query, returning a set of matched book"
" ids."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.search:3
msgid ""
"A restriction that is ANDed to the specified query. Note that restrictions "
"are cached, therefore the search for a AND b will be slower than a with "
"restriction b."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.search:6
msgid "Used internally (virtual fields such as on_device to search over)."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.search:8
msgid ""
"If not None, a set of book ids for which books will be searched instead of "
"searching all books."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_conversion_options:1
msgid "options must be a map of the form {book_id:conversion_options}"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_cover:1
msgid ""
"Set the cover for this book. The data can be either a QImage, QPixmap, file "
"object or bytestring. It can also be None, in which case any existing cover "
"is removed."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_field:1
msgid ""
"Set the values of the field specified by ``name``. Returns the set of all "
"book ids that were affected by the change."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_field:3
msgid "Mapping of book_ids to values that should be applied."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_field:4
msgid ""
"If True, the case of many-one or many-many fields will be changed. For "
"example, if a  book has the tag ``tag1`` and you set the tag for another "
"book to ``Tag1`` then the both books will have the tag ``Tag1`` if "
"allow_case_change is True, otherwise they will both have the tag ``tag1``."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_field:8
msgid "Used internally, you should never change it."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_link_map:1
msgid ""
"Sets links for item values in field. Note: this method doesn't change values"
" not in the value_to_link_map"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_link_map:4
msgid "the lookup name"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_link_map:5
msgid ""
"dict(field_value:link, ...). Note that these are values, not field ids."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_link_map:7
msgid "books changed by setting the link"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_metadata:1
msgid "Set metadata for the book `id` from the `Metadata` object `mi`"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_metadata:3
msgid ""
"Setting force_changes=True will force set_metadata to update fields even if "
"mi contains empty values. In this case, 'None' is distinguished from "
"'empty'. If mi.XXX is None, the XXX is not replaced, otherwise it is. The "
"tags, identifiers, and cover attributes are special cases. Tags and "
"identifiers cannot be set to None so they will always be replaced if "
"force_changes is true. You must ensure that mi contains the values you want "
"the book to have. Covers are always changed if a new cover is provided, but "
"are never deleted. Also note that force_changes has no effect on setting "
"title or authors."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.set_pref:1
msgid ""
"Set the specified preference to the specified value. See also :meth:`pref`."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.split_if_is_multiple_composite:1
msgid ""
"If f is a composite column lookup key and the column is is_multiple then "
"split v into unique non-empty values. The comparison is case sensitive. "
"Order is not preserved. Return a list() for compatibility with proxy "
"metadata field getters, for example tags."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.tags_older_than:1
msgid ""
"Return the ids of all books having the tag ``tag`` that are older than the "
"specified time. tag comparison is case insensitive."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.tags_older_than:4
msgid ""
"A timedelta object or None. If None, then all ids with the tag are returned."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.tags_older_than:7
msgid ""
"If not None the list of matches will be restricted to books that have this "
"tag"
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.tags_older_than:10
msgid ""
"A list of authors. If not None the list of matches will be restricted to "
"books that have these authors (case insensitive)."
msgstr ""

#: ../../__w/calibre/calibre/src/calibre/db/cache.pydocstring of
#: calibre.db.cache.Cache.user_categories_for_books:1
msgid ""
"Return the user categories for the specified books. proxy_metadata_map is "
"optional and is useful for a performance boost, in contexts where a "
"ProxyMetadata object for the books already exists. It should be a mapping of"
" book_ids to their corresponding ProxyMetadata objects."
msgstr ""
