1#!/usr/local/bin/python3.8 2# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai 3# License: GPLv3 Copyright: 2010, Kovid Goyal <kovid at kovidgoyal.net> 4 5 6# Contains various tweaks that affect calibre behavior. Only edit this file if 7# you know what you are doing. If you delete this file, it will be recreated from 8# defaults. 9 10#: Auto increment series index 11# The algorithm used to assign a book added to an existing series a series number. 12# New series numbers assigned using this tweak are always integer values, except 13# if a constant non-integer is specified. 14# Possible values are: 15# next - First available integer larger than the largest existing number 16# first_free - First available integer larger than 0 17# next_free - First available integer larger than the smallest existing number 18# last_free - First available integer smaller than the largest existing number. Return largest existing + 1 if no free number is found 19# const - Assign the number 1 always 20# no_change - Do not change the series index 21# a number - Assign that number always. The number is not in quotes. Note that 0.0 can be used here. 22# Examples: 23# series_index_auto_increment = 'next' 24# series_index_auto_increment = 'next_free' 25# series_index_auto_increment = 16.5 26# 27# Set the use_series_auto_increment_tweak_when_importing tweak to True to 28# use the above values when importing/adding books. If this tweak is set to 29# False (the default) then the series number will be set to 1 if it is not 30# explicitly set during the import. If set to True, then the 31# series index will be set according to the series_index_auto_increment setting. 32# Note that the use_series_auto_increment_tweak_when_importing tweak is used 33# only when a value is not provided during import. If the importing regular 34# expression produces a value for series_index, or if you are reading metadata 35# from books and the import plugin produces a value, than that value will 36# be used irrespective of the setting of the tweak. 37series_index_auto_increment = 'next' 38use_series_auto_increment_tweak_when_importing = False 39 40#: Add separator after completing an author name 41# Should the completion separator be append 42# to the end of the completed text to 43# automatically begin a new completion operation 44# for authors. 45# Can be either True or False 46authors_completer_append_separator = False 47 48#: Author sort name algorithm 49# The algorithm used to copy author to author_sort. 50# Possible values are: 51# invert: use "fn ln" -> "ln, fn" 52# copy : copy author to author_sort without modification 53# comma : use 'copy' if there is a ',' in the name, otherwise use 'invert' 54# nocomma : "fn ln" -> "ln fn" (without the comma) 55# When this tweak is changed, the author_sort values stored with each author 56# must be recomputed by right-clicking on an author in the left-hand tags 57# panel, selecting 'manage authors', and pressing 58# 'Recalculate all author sort values'. 59# 60# The author_name_suffixes are words that are ignored when they occur at the 61# end of an author name. The case of the suffix is ignored and trailing 62# periods are automatically handled. 63# 64# The same is true for author_name_prefixes. 65# 66# The author_name_copywords are a set of words which, if they occur in an 67# author name, cause the automatically generated author sort string to be 68# identical to the author name. This means that the sort for a string like 69# "Acme Inc." will be "Acme Inc." instead of "Inc., Acme". 70# 71# If author_use_surname_prefixes is enabled, any of the words in 72# author_surname_prefixes will be treated as a prefix to the surname, if they 73# occur before the surname. So for example, "John von Neumann" would be sorted 74# as "von Neumann, John" and not "Neumann, John von". 75author_sort_copy_method = 'comma' 76author_name_suffixes = ('Jr', 'Sr', 'Inc', 'Ph.D', 'Phd', 77 'MD', 'M.D', 'I', 'II', 'III', 'IV', 78 'Junior', 'Senior') 79author_name_prefixes = ('Mr', 'Mrs', 'Ms', 'Dr', 'Prof') 80author_name_copywords = ('Agency', 'Corporation', 'Company', 'Co.', 'Council', 81 'Committee', 'Inc.', 'Institute', 'National', 82 'Society', 'Club', 'Team') 83author_use_surname_prefixes = False 84author_surname_prefixes = ('da', 'de', 'di', 'la', 'le', 'van', 'von') 85 86#: Splitting multiple author names 87# By default, calibre splits a string containing multiple author names on 88# ampersands and the words "and" and "with". You can customize the splitting 89# by changing the regular expression below. Strings are split on whatever the 90# specified regular expression matches, in addition to ampersands. 91# Default: r'(?i),?\s+(and|with)\s+' 92authors_split_regex = r'(?i),?\s+(and|with)\s+' 93 94#: Use author sort in Tag browser 95# Set which author field to display in the Tag browser (the list of authors, 96# series, publishers etc on the left hand side). The choices are author and 97# author_sort. This tweak affects only what is displayed under the authors 98# category in the Tag browser and Content server. Please note that if you set this 99# to author_sort, it is very possible to see duplicate names in the list because 100# although it is guaranteed that author names are unique, there is no such 101# guarantee for author_sort values. Showing duplicates won't break anything, but 102# it could lead to some confusion. When using 'author_sort', the tooltip will 103# show the author's name. 104# Examples: 105# categories_use_field_for_author_name = 'author' 106# categories_use_field_for_author_name = 'author_sort' 107categories_use_field_for_author_name = 'author' 108 109#: Control partitioning of Tag browser 110# When partitioning the Tag browser, the format of the subcategory label is 111# controlled by a template: categories_collapsed_name_template if sorting by 112# name, categories_collapsed_rating_template if sorting by average rating, and 113# categories_collapsed_popularity_template if sorting by popularity. There are 114# two variables available to the template: first and last. The variable 'first' 115# is the initial item in the subcategory, and the variable 'last' is the final 116# item in the subcategory. Both variables are 'objects'; they each have multiple 117# values that are obtained by using a suffix. For example, first.name for an 118# author category will be the name of the author. The sub-values available are: 119# name: the printable name of the item 120# count: the number of books that references this item 121# avg_rating: the average rating of all the books referencing this item 122# sort: the sort value. For authors, this is the author_sort for that author 123# category: the category (e.g., authors, series) that the item is in. 124# Note that the "r'" in front of the { is necessary if there are backslashes 125# (\ characters) in the template. It doesn't hurt anything to leave it there 126# even if there aren't any backslashes. 127categories_collapsed_name_template = r'{first.sort:shorten(4,,0)} - {last.sort:shorten(4,,0)}' 128categories_collapsed_rating_template = r'{first.avg_rating:4.2f:ifempty(0)} - {last.avg_rating:4.2f:ifempty(0)}' 129categories_collapsed_popularity_template = r'{first.count:d} - {last.count:d}' 130 131#: Control order of categories in the Tag browser 132# Change the following dict to change the order that categories are displayed in 133# the Tag browser. Items are named using their lookup name, and will be sorted 134# using the number supplied. The lookup name '*' stands for all names that 135# otherwise do not appear. Two names with the same value will be sorted 136# using the default order, the one specified by tag_browser_category_default_sort. 137# Example: 138# tag_browser_category_order = {'series':1, 'tags':2, '*':3} 139# 140# results in the order series, tags, then everything else in default order. 141# The tweak tag_browser_category_default_sort specifies the sort order before 142# applying the category order from the dict. The allowed values are: 143# tag_browser_category_default_sort = 'default' # The calibre default order 144# tag_browser_category_default_sort = 'display_name' # Sort by the display name of the category 145# tag_browser_category_default_sort = 'lookup_name' # Sort by the lookup name of the category 146# 147# In addition and if the category default sort is not 'default' you can specify 148# whether the sort is ascending or descending. This is ignored if the sort is 'default'. 149# tag_browser_category_default_sort_direction = 'ascending' 150# tag_browser_category_default_sort_direction = 'descending' 151tag_browser_category_order = {'*':1} 152tag_browser_category_default_sort = 'default' 153tag_browser_category_default_sort_direction = 'ascending' 154 155 156#: Specify columns to sort the booklist by on startup 157# Provide a set of columns to be sorted on when calibre starts. 158# The argument is None if saved sort history is to be used 159# otherwise it is a list of column,order pairs. Column is the 160# lookup/search name, found using the tooltip for the column 161# Order is 0 for ascending, 1 for descending. 162# For example, set it to [('authors',0),('title',0)] to sort by 163# title within authors. 164sort_columns_at_startup = None 165 166#: Control how dates are displayed 167# Format to be used for publication date and the timestamp (date). 168# A string controlling how the publication date is displayed in the GUI 169# d the day as number without a leading zero (1 to 31) 170# dd the day as number with a leading zero (01 to 31) 171# ddd the abbreviated localized day name (e.g. 'Mon' to 'Sun'). 172# dddd the long localized day name (e.g. 'Monday' to 'Sunday'). 173# M the month as number without a leading zero (1-12) 174# MM the month as number with a leading zero (01-12) 175# MMM the abbreviated localized month name (e.g. 'Jan' to 'Dec'). 176# MMMM the long localized month name (e.g. 'January' to 'December'). 177# yy the year as two digit number (00-99) 178# yyyy the year as four digit number 179# h the hours without a leading 0 (0 to 11 or 0 to 23, depending on am/pm) ' 180# hh the hours with a leading 0 (00 to 11 or 00 to 23, depending on am/pm) ' 181# m the minutes without a leading 0 (0 to 59) ' 182# mm the minutes with a leading 0 (00 to 59) ' 183# s the seconds without a leading 0 (0 to 59) ' 184# ss the seconds with a leading 0 (00 to 59) ' 185# ap use a 12-hour clock instead of a 24-hour clock, with "ap" replaced by the localized string for am or pm 186# AP use a 12-hour clock instead of a 24-hour clock, with "AP" replaced by the localized string for AM or PM 187# iso the date with time and timezone. Must be the only format present 188# For example, given the date of 9 Jan 2010, the following formats show 189# MMM yyyy ==> Jan 2010 yyyy ==> 2010 dd MMM yyyy ==> 09 Jan 2010 190# MM/yyyy ==> 01/2010 d/M/yy ==> 9/1/10 yy ==> 10 191# 192# publication default if not set: MMM yyyy 193# timestamp default if not set: dd MMM yyyy 194# last_modified_display_format if not set: dd MMM yyyy 195gui_pubdate_display_format = 'MMM yyyy' 196gui_timestamp_display_format = 'dd MMM yyyy' 197gui_last_modified_display_format = 'dd MMM yyyy' 198 199#: Control sorting of titles and series in the library display 200# Control title and series sorting in the library view. If set to 201# 'library_order', the title sort field will be used instead of the title. 202# Unless you have manually edited the title sort field, leading articles such as 203# The and A will be ignored. If set to 'strictly_alphabetic', the titles will be 204# sorted as-is (sort by title instead of title sort). For example, with 205# library_order, The Client will sort under 'C'. With strictly_alphabetic, the 206# book will sort under 'T'. 207# This flag affects calibre's library display. It has no effect on devices. In 208# addition, titles for books added before changing the flag will retain their 209# order until the title is edited. Editing a title and hitting Enter 210# without changing anything is sufficient to change the sort. Or you can use 211# the 'Update title sort' action in the Bulk metadata edit dialog to update 212# it for many books at once. 213title_series_sorting = 'library_order' 214 215#: Control formatting of title and series when used in templates 216# Control how title and series names are formatted when saving to disk/sending 217# to device. The behavior depends on the field being processed. If processing 218# title, then if this tweak is set to 'library_order', the title will be 219# replaced with title_sort. If it is set to 'strictly_alphabetic', then the 220# title will not be changed. If processing series, then if set to 221# 'library_order', articles such as 'The' and 'An' will be moved to the end. If 222# set to 'strictly_alphabetic', the series will be sent without change. 223# For example, if the tweak is set to library_order, "The Lord of the Rings" 224# will become "Lord of the Rings, The". If the tweak is set to 225# strictly_alphabetic, it would remain "The Lord of the Rings". Note that the 226# formatter function raw_field will return the base value for title and 227# series regardless of the setting of this tweak. 228save_template_title_series_sorting = 'library_order' 229 230#: Set the list of words considered to be "articles" for sort strings 231# Set the list of words that are to be considered 'articles' when computing the 232# title sort strings. The articles differ by language. By default, calibre uses 233# a combination of articles from English and whatever language the calibre user 234# interface is set to. In addition, in some contexts where the book language is 235# available, the language of the book is used. You can change the list of 236# articles for a given language or add a new language by editing 237# per_language_title_sort_articles. To tell calibre to use a language other 238# than the user interface language, set, default_language_for_title_sort. For 239# example, to use German, set it to 'deu'. A value of None means the user 240# interface language is used. The setting title_sort_articles is ignored 241# (present only for legacy reasons). 242per_language_title_sort_articles = { 243 # English 244 'eng' : (r'A\s+', r'The\s+', r'An\s+'), 245 # Esperanto 246 'epo': (r'La\s+', r"L'", 'L´'), 247 # Spanish 248 'spa' : (r'El\s+', r'La\s+', r'Lo\s+', r'Los\s+', r'Las\s+', r'Un\s+', 249 r'Una\s+', r'Unos\s+', r'Unas\s+'), 250 # French 251 'fra' : (r'Le\s+', r'La\s+', r"L'", u'L´', u'L’', r'Les\s+', r'Un\s+', r'Une\s+', 252 r'Des\s+', r'De\s+La\s+', r'De\s+', r"D'", u'D´', u'L’'), 253 # Italian 254 'ita': ('Lo\\s+', 'Il\\s+', "L'", 'L´', 'La\\s+', 'Gli\\s+', 255 'I\\s+', 'Le\\s+', 'Uno\\s+', 'Un\\s+', 'Una\\s+', "Un'", 256 'Un´', 'Dei\\s+', 'Degli\\s+', 'Delle\\s+', 'Del\\s+', 257 'Della\\s+', 'Dello\\s+', "Dell'", 'Dell´'), 258 # Portuguese 259 'por' : (r'A\s+', r'O\s+', r'Os\s+', r'As\s+', r'Um\s+', r'Uns\s+', 260 r'Uma\s+', r'Umas\s+', ), 261 # Romanian 262 'ron' : (r'Un\s+', r'O\s+', r'Nişte\s+', ), 263 # German 264 'deu' : (r'Der\s+', r'Die\s+', r'Das\s+', r'Den\s+', r'Ein\s+', 265 r'Eine\s+', r'Einen\s+', r'Dem\s+', r'Des\s+', r'Einem\s+', 266 r'Eines\s+'), 267 # Dutch 268 'nld' : (r'De\s+', r'Het\s+', r'Een\s+', r"'n\s+", r"'s\s+", r'Ene\s+', 269 r'Ener\s+', r'Enes\s+', r'Den\s+', r'Der\s+', r'Des\s+', 270 r"'t\s+"), 271 # Swedish 272 'swe' : (r'En\s+', r'Ett\s+', r'Det\s+', r'Den\s+', r'De\s+', ), 273 # Turkish 274 'tur' : (r'Bir\s+', ), 275 # Afrikaans 276 'afr' : (r"'n\s+", r'Die\s+', ), 277 # Greek 278 'ell' : (r'O\s+', r'I\s+', r'To\s+', r'Ta\s+', r'Tus\s+', r'Tis\s+', 279 r"'Enas\s+", r"'Mia\s+", r"'Ena\s+", r"'Enan\s+", ), 280 # Hungarian 281 'hun' : (r'A\s+', r'Az\s+', r'Egy\s+',), 282} 283default_language_for_title_sort = None 284title_sort_articles=r'^(A|The|An)\s+' 285 286#: Specify a folder calibre should connect to at startup 287# Specify a folder that calibre should connect to at startup using 288# connect_to_folder. This must be a full path to the folder. If the folder does 289# not exist when calibre starts, it is ignored. 290# Example for Windows: 291# auto_connect_to_folder = 'C:/Users/someone/Desktop/testlib' 292# Example for other operating systems: 293# auto_connect_to_folder = '/home/dropbox/My Dropbox/someone/library' 294auto_connect_to_folder = '' 295 296#: Specify renaming rules for SONY collections 297# Specify renaming rules for SONY collections. This tweak is only applicable if 298# metadata management is set to automatic. Collections on SONYs are named 299# depending upon whether the field is standard or custom. A collection derived 300# from a standard field is named for the value in that field. 301# 302# For example, if the standard 'series' column contains the value 'Darkover', then the 303# collection name is 'Darkover'. A collection derived from a custom field will 304# have the name of the field added to the value. For example, if a custom series 305# column named 'My Series' contains the name 'Darkover', then the collection 306# will by default be named 'Darkover (My Series)'. For purposes of this 307# documentation, 'Darkover' is called the value and 'My Series' is called the 308# category. If two books have fields that generate the same collection name, 309# then both books will be in that collection. 310# 311# This set of tweaks lets you specify for a standard or custom field how 312# the collections are to be named. You can use it to add a description to a 313# standard field, for example 'Foo (Tag)' instead of the 'Foo'. You can also use 314# it to force multiple fields to end up in the same collection. 315# 316# For example, you could force the values in 'series', '#my_series_1', and 317# '#my_series_2' to appear in collections named 'some_value (Series)', thereby 318# merging all of the fields into one set of collections. 319# 320# There are two related tweaks. The first determines the category name to use 321# for a metadata field. The second is a template, used to determines how the 322# value and category are combined to create the collection name. 323# The syntax of the first tweak, sony_collection_renaming_rules, is: 324# {'field_lookup_name':'category_name_to_use', 'lookup_name':'name', ...} 325# 326# The second tweak, sony_collection_name_template, is a template. It uses the 327# same template language as plugboards and save templates. This tweak controls 328# how the value and category are combined together to make the collection name. 329# The only two fields available are {category} and {value}. The {value} field is 330# never empty. The {category} field can be empty. The default is to put the 331# value first, then the category enclosed in parentheses, it isn't empty: 332# '{value} {category:|(|)}' 333# 334# Examples: The first three examples assume that the second tweak 335# has not been changed. 336# 337# 1) I want three series columns to be merged into one set of collections. The 338# column lookup names are 'series', '#series_1' and '#series_2'. I want nothing 339# in the parenthesis. The value to use in the tweak value would be: 340# sony_collection_renaming_rules={'series':'', '#series_1':'', '#series_2':''} 341# 342# 2) I want the word '(Series)' to appear on collections made from series, and 343# the word '(Tag)' to appear on collections made from tags. Use: 344# sony_collection_renaming_rules={'series':'Series', 'tags':'Tag'} 345# 346# 3) I want 'series' and '#myseries' to be merged, and for the collection name 347# to have '(Series)' appended. The renaming rule is: 348# sony_collection_renaming_rules={'series':'Series', '#myseries':'Series'} 349# 350# 4) Same as example 2, but instead of having the category name in parentheses 351# and appended to the value, I want it prepended and separated by a colon, such 352# as in Series: Darkover. I must change the template used to format the category name 353# 354# The resulting two tweaks are: 355# sony_collection_renaming_rules={'series':'Series', 'tags':'Tag'} 356# sony_collection_name_template='{category:||: }{value}' 357sony_collection_renaming_rules={} 358sony_collection_name_template='{value}{category:| (|)}' 359 360#: Specify how SONY collections are sorted 361# Specify how SONY collections are sorted. This tweak is only applicable if 362# metadata management is set to automatic. You can indicate which metadata is to 363# be used to sort on a collection-by-collection basis. The format of the tweak 364# is a list of metadata fields from which collections are made, followed by the 365# name of the metadata field containing the sort value. 366# Example: The following indicates that collections built from pubdate and tags 367# are to be sorted by the value in the custom column '#mydate', that collections 368# built from 'series' are to be sorted by 'series_index', and that all other 369# collections are to be sorted by title. If a collection metadata field is not 370# named, then if it is a series- based collection it is sorted by series order, 371# otherwise it is sorted by title order. 372# [(['pubdate', 'tags'],'#mydate'), (['series'],'series_index'), (['*'], 'title')] 373# Note that the bracketing and parentheses are required. The syntax is 374# [ ( [list of fields], sort field ) , ( [ list of fields ] , sort field ) ] 375# Default: empty (no rules), so no collection attributes are named. 376sony_collection_sorting_rules = [] 377 378#: Control how tags are applied when copying books to another library 379# Set this to True to ensure that tags in 'Tags to add when adding 380# a book' are added when copying books to another library 381add_new_book_tags_when_importing_books = False 382 383#: Set the maximum number of sort 'levels' 384# Set the maximum number of sort 'levels' that calibre will use to resort the 385# library after certain operations such as searches or device insertion. Each 386# sort level adds a performance penalty. If the database is large (thousands of 387# books) the penalty might be noticeable. If you are not concerned about multi- 388# level sorts, and if you are seeing a slowdown, reduce the value of this tweak. 389maximum_resort_levels = 5 390 391#: Choose whether dates are sorted using visible fields 392# Date values contain both a date and a time. When sorted, all the fields are 393# used, regardless of what is displayed. Set this tweak to True to use only 394# the fields that are being displayed. 395sort_dates_using_visible_fields = False 396 397#: Fuzz value for trimming covers 398# The value used for the fuzz distance when trimming a cover. 399# Colors within this distance are considered equal. 400# The distance is in absolute intensity units. 401cover_trim_fuzz_value = 10 402 403#: Control behavior of the book list 404# You can control the behavior of double clicks and pressing Enter on the books 405# list. Choices: open_viewer, do_nothing, show_book_details, edit_cell, 406# edit_metadata. Selecting anything other than open_viewer or show_book_details 407# has the side effect of disabling editing a field using a single click. 408# Default: open_viewer. 409# Example: doubleclick_on_library_view = 'do_nothing' 410# You can also control whether the book list scrolls per item or 411# per pixel. Default is per item. 412doubleclick_on_library_view = 'open_viewer' 413enter_key_behavior = 'do_nothing' 414horizontal_scrolling_per_column = False 415vertical_scrolling_per_row = False 416 417#: Language to use when sorting 418# Setting this tweak will force sorting to use the 419# collating order for the specified language. This might be useful if you run 420# calibre in English but want sorting to work in the language where you live. 421# Set the tweak to the desired ISO 639-1 language code, in lower case. 422# You can find the list of supported locales at 423# https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes 424# Default: locale_for_sorting = '' -- use the language calibre displays in 425# Example: locale_for_sorting = 'fr' -- sort using French rules. 426# Example: locale_for_sorting = 'nb' -- sort using Norwegian rules. 427locale_for_sorting = '' 428 429#: Number of columns for custom metadata in the edit metadata dialog 430# Set whether to use one or two columns for custom metadata when editing 431# metadata one book at a time. If True, then the fields are laid out using two 432# columns. If False, one column is used. 433metadata_single_use_2_cols_for_custom_fields = True 434 435#: Order of custom column(s) in edit metadata 436# Controls the order that custom columns are listed in edit metadata single 437# and bulk. The columns listed in the tweak are displayed first and in the 438# order provided. Any columns not listed are displayed after the listed ones, 439# in alphabetical order. Do note that this tweak does not change the size of 440# the edit widgets. Putting comments widgets in this list may result in some 441# odd widget spacing when using two-column mode. 442# Enter a comma-separated list of custom field lookup names, as in 443# metadata_edit_custom_column_order = ['#genre', '#mytags', '#etc'] 444metadata_edit_custom_column_order = [] 445 446#: Edit metadata custom column label width and elision point 447# Set the width of custom column labels shown in the edit metadata dialogs. 448# If metadata_edit_elide_labels is True then labels wider than the width 449# will be elided, otherwise they will be word wrapped. The maximum width is 450# computed by multiplying the average width of characters in the font by the 451# appropriate number. 452# Set the elision point to 'middle' to put the ellipsis (…) in the middle of 453# the label, 'right' to put it at the right end of the label, and 'left' to 454# put it at the left end. 455metadata_edit_elide_labels = True 456metadata_edit_bulk_cc_label_length = 25 457metadata_edit_single_cc_label_length = 12 458metadata_edit_elision_point = 'right' 459 460#: The number of seconds to wait before sending emails 461# The number of seconds to wait before sending emails when using a 462# public email server like GMX/Hotmail/Gmail. Default is: 5 minutes 463# Setting it to lower may cause the server's SPAM controls to kick in, 464# making email sending fail. Changes will take effect only after a restart of 465# calibre. You can also change the list of hosts that calibre considers 466# to be public relays here. Any relay host ending with one of the suffixes 467# in the list below will be considered a public email server. 468public_smtp_relay_delay = 301 469public_smtp_relay_host_suffixes = ['gmail.com', 'live.com', 'gmx.com'] 470 471#: The maximum width and height for covers saved in the calibre library 472# All covers in the calibre library will be resized, preserving aspect ratio, 473# to fit within this size. This is to prevent slowdowns caused by extremely 474# large covers 475maximum_cover_size = (1650, 2200) 476 477#: Where to send downloaded news 478# When automatically sending downloaded news to a connected device, calibre 479# will by default send it to the main memory. By changing this tweak, you can 480# control where it is sent. Valid values are "main", "carda", "cardb". Note 481# that if there isn't enough free space available on the location you choose, 482# the files will be sent to the location with the most free space. 483send_news_to_device_location = "main" 484 485#: Unified toolbar on macOS 486# If you enable this option and restart calibre, the toolbar will be 'unified' 487# with the titlebar as is normal for macOS applications. However, doing this has 488# various bugs, for instance the minimum width of the toolbar becomes twice 489# what it should be and it causes other random bugs on some systems, so turn it 490# on at your own risk! 491unified_title_toolbar_on_osx = False 492 493#: Save original file when converting/polishing from same format to same format 494# When calibre does a conversion from the same format to the same format, for 495# example, from EPUB to EPUB, the original file is saved, so that in case the 496# conversion is poor, you can tweak the settings and run it again. By setting 497# this to False you can prevent calibre from saving the original file. 498# Similarly, by setting save_original_format_when_polishing to False you can 499# prevent calibre from saving the original file when polishing. 500save_original_format = True 501save_original_format_when_polishing = True 502 503#: Number of recently viewed books to show 504# Right-clicking the "View" button shows a list of recently viewed books. Control 505# how many should be shown, here. 506gui_view_history_size = 15 507 508#: Change the font size of the Book details panel in the interface 509# Change the font size at which book details are rendered in the side panel and 510# comments are rendered in the metadata edit dialog. Set it to a positive or 511# negative number to increase or decrease the font size. 512change_book_details_font_size_by = 0 513 514#: What format to default to when using the "Unpack book" feature 515# The "Unpack book" feature of calibre allows direct editing of a book format. 516# If multiple formats are available, calibre will offer you a choice 517# of formats, defaulting to your preferred output format if it is available. 518# Set this tweak to a specific value of 'EPUB' or 'AZW3' to always default 519# to that format rather than your output format preference. 520# Set to a value of 'remember' to use whichever format you chose last time you 521# used the "Unpack book" feature. 522# Examples: 523# default_tweak_format = None (Use output format) 524# default_tweak_format = 'EPUB' 525# default_tweak_format = 'remember' 526default_tweak_format = None 527 528#: Do not preselect a completion when editing authors/tags/series/etc. 529# This means that you can make changes and press Enter and your changes will 530# not be overwritten by a matching completion. However, if you wish to use the 531# completions you will now have to press Tab to select one before pressing 532# Enter. Which technique you prefer will depend on the state of metadata in 533# your library and your personal editing style. 534preselect_first_completion = False 535 536#: Completion mode when editing authors/tags/series/etc. 537# By default, when completing items, calibre will show you all the candidates 538# that start with the text you have already typed. You can instead have it show 539# all candidates that contain the text you have already typed. To do this, set 540# completion_mode to 'contains'. For example, if you type asi it will match both 541# Asimov and Quasimodo, whereas the default behavior would match only Asimov. 542completion_mode = 'prefix' 543 544#: Sort the list of libraries alphabetically 545# The list of libraries in the Copy to library and Quick switch menus are 546# normally sorted by most used. However, if there are more than a certain 547# number of such libraries, the sorting becomes alphabetic. You can set that 548# number here. The default is ten libraries. 549many_libraries = 10 550 551#: Choose available output formats for conversion 552# Restrict the list of available output formats in the conversion dialogs. 553# For example, if you only want to convert to EPUB and AZW3, change this to 554# restrict_output_formats = ['EPUB', 'AZW3']. The default value of None causes 555# all available output formats to be present. 556restrict_output_formats = None 557 558#: Set the thumbnail image quality used by the Content server 559# The quality of a thumbnail is largely controlled by the compression quality 560# used when creating it. Set this to a larger number to improve the quality. 561# Note that the thumbnails get much larger with larger compression quality 562# numbers. 563# The value can be between 50 and 99 564content_server_thumbnail_compression_quality = 75 565 566#: Image file types to treat as e-books when dropping onto the "Book details" panel 567# Normally, if you drop any image file in a format known to calibre onto the 568# "Book details" panel, it will be used to set the cover. If you want to store 569# some image types as e-books instead, you can set this tweak. 570# Examples: 571# cover_drop_exclude = {'tiff', 'webp'} 572cover_drop_exclude = () 573 574#: Show the Saved searches box in the Search bar 575# In newer versions of calibre, only a single button that allows you to add a 576# new Saved search is shown in the Search bar. If you would like to have the 577# old Saved searches box with its two buttons back, set this tweak to True. 578show_saved_search_box = False 579 580#: Exclude fields when copy/pasting metadata 581# You can ask calibre to not paste some metadata fields when using the 582# Edit metadata->Copy metadata/Paste metadata actions. For example, 583# exclude_fields_on_paste = ['cover', 'timestamp', '#mycolumn'] 584# to prevent pasting of the cover, Date and custom column, mycolumn. 585# You can also add a shortcut in Preferences->Shortcuts->Edit metadata 586# to paste metadata ignoring this tweak. 587exclude_fields_on_paste = [] 588 589#: Skip internet connected check 590# Skip checking whether the internet is available before downloading news. 591# Useful if for some reason your operating systems network checking 592# facilities are not reliable (for example NetworkManager on Linux). 593skip_network_check = False 594 595#: Tab stop width in the template editor 596# Sets the width of the tab stop in the template editor in "average characters". 597# For example, a value of 1 results in a space with the width of one average character. 598template_editor_tab_stop_width = 4 599 600#: Value for undefined numbers when sorting 601# Sets the value to use for undefined numbers when sorting. 602# For example, the value -10 sorts undefined numbers as if they were set to -10. 603# Use 'maximum' for the largest possible number. Use 'minimum' for the smallest 604# possible number. Quotes are optional if entering a number. 605# Examples: 606# value_for_undefined_numbers_when_sorting = -100 607# value_for_undefined_numbers_when_sorting = '2' 608# value_for_undefined_numbers_when_sorting = -0.01 609# value_for_undefined_numbers_when_sorting = 'minimum' 610# value_for_undefined_numbers_when_sorting = 'maximum' 611value_for_undefined_numbers_when_sorting = 0 612