home *** CD-ROM | disk | FTP | other *** search
/ Chip 2011 November / CHIP_2011_11.iso / Programy / Narzedzia / Calibre / calibre-0.8.18.msi / file_344 < prev    next >
Text File  |  2011-09-04  |  23KB  |  406 lines

  1. #!/usr/bin/env python
  2. # vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai
  3. __license__   = 'GPL v3'
  4. __copyright__ = '2010, Kovid Goyal <kovid@kovidgoyal.net>'
  5. __docformat__ = 'restructuredtext en'
  6.  
  7. '''
  8. Contains various tweaks that affect calibre behavior. Only edit this file if
  9. you know what you are doing. If you delete this file, it will be recreated from
  10. defaults.
  11. '''
  12.  
  13. #: Auto increment series index
  14. # The algorithm used to assign a book added to an existing series a series number.
  15. # New series numbers assigned using this tweak are always integer values, except
  16. # if a constant non-integer is specified.
  17. # Possible values are:
  18. # next - First available integer larger than the largest existing number
  19. # first_free - First available integer larger than 0
  20. # next_free - First available integer larger than the smallest existing number
  21. # last_free - First available integer smaller than the largest existing number
  22. #             Return largest existing + 1 if no free number is found
  23. # const - Assign the number 1 always
  24. # a number - Assign that number always. The number is not in quotes. Note that
  25. #            0.0 can be used here.
  26. # Examples:
  27. # series_index_auto_increment = 'next'
  28. # series_index_auto_increment = 'next_free'
  29. # series_index_auto_increment = 16.5
  30. #
  31. # Set the use_series_auto_increment_tweak_when_importing tweak to True to
  32. # use the above values when importing/adding books. If this tweak is set to
  33. # False (the default) then the series number will be set to 1 if it is not
  34. # explicitly set to during the import. If set to True, then the
  35. # series index will be set according to the series_index_auto_increment setting.
  36. # Note that the use_series_auto_increment_tweak_when_importing tweak is used
  37. # only when a value is not provided during import. If the importing regular
  38. # expression produces a value for series_index, or if you are reading metadata
  39. # from books and the import plugin produces a value, than that value will
  40. # be used irrespective of the setting of the tweak.
  41. series_index_auto_increment = 'next'
  42. use_series_auto_increment_tweak_when_importing = False
  43.  
  44. #: Add separator after completing an author name
  45. # Should the completion separator be append
  46. # to the end of the completed text to
  47. # automatically begin a new completion operation
  48. # for authors.
  49. # Can be either True or False
  50. authors_completer_append_separator = False
  51.  
  52. #: Author sort name algorithm
  53. # The algorithm used to copy author to author_sort
  54. # Possible values are:
  55. #  invert: use "fn ln" -> "ln, fn"
  56. #  copy  : copy author to author_sort without modification
  57. #  comma : use 'copy' if there is a ',' in the name, otherwise use 'invert'
  58. #  nocomma : "fn ln" -> "ln fn" (without the comma)
  59. # When this tweak is changed, the author_sort values stored with each author
  60. # must be recomputed by right-clicking on an author in the left-hand tags pane,
  61. # selecting 'manage authors', and pressing 'Recalculate all author sort values'.
  62. # The author name suffixes are words that are ignored when they occur at the
  63. # end of an author name. The case of the suffix is ignored and trailing
  64. # periods are automatically handled.
  65. # The author name copy words are a set of words which if they occur in an
  66. # author name cause the automatically generated author sort string to be
  67. # identical to the author name. This means that the sort for a string like Acme
  68. # Inc. will be Acme Inc. instead of Inc., Acme
  69. author_sort_copy_method = 'comma'
  70. author_name_suffixes = ('Jr', 'Sr', 'Inc', 'Ph.D', 'Phd',
  71.                         'MD', 'M.D', 'I', 'II', 'III', 'IV',
  72.                         'Junior', 'Senior')
  73. author_name_prefixes = ('Mr', 'Mrs', 'Ms', 'Dr', 'Prof')
  74. author_name_copywords = ('Corporation', 'Company', 'Co.', 'Agency', 'Council',
  75.         'Committee', 'Inc.', 'Institute', 'Society', 'Club', 'Team')
  76.  
  77. #: Splitting multiple author names
  78. # By default, calibre splits a string containing multiple author names on
  79. # ampersands and the words "and" and "with". You can customize the splitting
  80. # by changing the regular expression below. Strings are split on whatever the
  81. # specified regular expression matches.
  82. # Default: r'(?i),?\s+(and|with)\s+'
  83. authors_split_regex = r'(?i),?\s+(and|with)\s+'
  84.  
  85. #: Use author sort in Tag Browser
  86. # Set which author field to display in the tags pane (the list of authors,
  87. # series, publishers etc on the left hand side). The choices are author and
  88. # author_sort. This tweak affects only what is displayed under the authors
  89. # category in the tags pane and content server. Please note that if you set this
  90. # to author_sort, it is very possible to see duplicate names in the list because
  91. # although it is guaranteed that author names are unique, there is no such
  92. # guarantee for author_sort values. Showing duplicates won't break anything, but
  93. # it could lead to some confusion. When using 'author_sort', the tooltip will
  94. # show the author's name.
  95. # Examples:
  96. #   categories_use_field_for_author_name = 'author'
  97. #   categories_use_field_for_author_name = 'author_sort'
  98. categories_use_field_for_author_name = 'author'
  99.  
  100. #: Completion sort order: choose when to change from lexicographic to ASCII-like
  101. # Calibre normally uses locale-dependent lexicographic ordering when showing
  102. # completion values. This means that the sort order is correct for the user's
  103. # language. However, this can be slow. Performance is improved by switching to
  104. # ascii ordering. This tweak controls when that switch happens. Set it to zero
  105. # to always use ascii ordering. Set it to something larger than zero to switch
  106. # to ascii ordering for performance reasons.
  107. completion_change_to_ascii_sorting = 2500
  108.  
  109. #: Control partitioning of Tag Browser
  110. # When partitioning the tags 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.
  127. categories_collapsed_name_template = r'{first.sort:shorten(4,,0)} - {last.sort:shorten(4,,0)}'
  128. categories_collapsed_rating_template = r'{first.avg_rating:4.2f:ifempty(0)} - {last.avg_rating:4.2f:ifempty(0)}'
  129. categories_collapsed_popularity_template = r'{first.count:d} - {last.count:d}'
  130.  
  131. #: Specify columns to sort the booklist by on startup
  132. # Provide a set of columns to be sorted on when calibre starts
  133. #  The argument is None if saved sort history is to be used
  134. #  otherwise it is a list of column,order pairs. Column is the
  135. #  lookup/search name, found using the tooltip for the column
  136. #  Order is 0 for ascending, 1 for descending
  137. # For example, set it to [('authors',0),('title',0)] to sort by
  138. # title within authors.
  139. sort_columns_at_startup = None
  140.  
  141. #: Control how dates are displayed
  142. # Format to be used for publication date and the timestamp (date).
  143. #  A string controlling how the publication date is displayed in the GUI
  144. #  d    the day as number without a leading zero (1 to 31)
  145. #  dd    the day as number with a leading zero (01 to 31)
  146. #  ddd    the abbreviated localized day name (e.g. 'Mon' to 'Sun').
  147. #  dddd    the long localized day name (e.g. 'Monday' to 'Qt::Sunday').
  148. #  M    the month as number without a leading zero (1-12)
  149. #  MM    the month as number with a leading zero (01-12)
  150. #  MMM    the abbreviated localized month name (e.g. 'Jan' to 'Dec').
  151. #  MMMM    the long localized month name (e.g. 'January' to 'December').
  152. #  yy    the year as two digit number (00-99)
  153. #  yyyy    the year as four digit number
  154. #  For example, given the date of 9 Jan 2010, the following formats show
  155. #  MMM yyyy ==> Jan 2010    yyyy ==> 2010       dd MMM yyyy ==> 09 Jan 2010
  156. #  MM/yyyy ==> 01/2010      d/M/yy ==> 9/1/10   yy ==> 10
  157. # publication default if not set: MMM yyyy
  158. # timestamp default if not set: dd MMM yyyy
  159. gui_pubdate_display_format = 'MMM yyyy'
  160. gui_timestamp_display_format = 'dd MMM yyyy'
  161. gui_last_modified_display_format = 'dd MMM yyyy'
  162.  
  163. #: Control sorting of titles and series in the library display
  164. # Control title and series sorting in the library view. If set to
  165. # 'library_order', the title sort field will be used instead of the title.
  166. # Unless you have manually edited the title sort field, leading articles such as
  167. # The and A will be ignored. If set to 'strictly_alphabetic', the titles will be
  168. # sorted as-is (sort by title instead of title sort). For example, with
  169. # library_order, The Client will sort under 'C'. With strictly_alphabetic, the
  170. # book will sort under 'T'.
  171. # This flag affects Calibre's library display. It has no effect on devices. In
  172. # addition, titles for books added before changing the flag will retain their
  173. # order until the title is edited. Double-clicking on a title and hitting return
  174. # without changing anything is sufficient to change the sort.
  175. title_series_sorting = 'library_order'
  176.  
  177. #: Control formatting of title and series when used in templates
  178. # Control how title and series names are formatted when saving to disk/sending
  179. # to device. The behavior depends on the field being processed. If processing
  180. # title, then if this tweak is set to 'library_order', the title will be
  181. # replaced with title_sort. If it is set to 'strictly_alphabetic', then the
  182. # title will not be changed. If processing series, then if set to
  183. # 'library_order', articles such as 'The' and 'An' will be moved to the end. If
  184. # set to 'strictly_alphabetic', the series will be sent without change.
  185. # For example, if the tweak is set to library_order, "The Lord of the Rings"
  186. # will become "Lord of the Rings, The". If the tweak is set to
  187. # strictly_alphabetic, it would remain "The Lord of the Rings".
  188. save_template_title_series_sorting = 'library_order'
  189.  
  190. #: Set the list of words considered to be "articles" for sort strings
  191. # Set the list of words that are to be considered 'articles' when computing the
  192. # title sort strings. The list is a regular expression, with the articles
  193. # separated by 'or' bars. Comparisons are case insensitive, and that cannot be
  194. # changed. Changes to this tweak won't have an effect until the book is modified
  195. # in some way. If you enter an invalid pattern, it is silently ignored.
  196. # To disable use the expression: '^$'
  197. # This expression is designed for articles that are followed by spaces. If you
  198. # also need to match articles that are followed by other characters, for example L'
  199. # in French, use: "^(A\s+|The\s+|An\s+|L')" instead.
  200. # Default: '^(A|The|An)\s+'
  201. title_sort_articles=r'^(A|The|An)\s+'
  202.  
  203. #: Specify a folder calibre should connect to at startup
  204. # Specify a folder that calibre should connect to at startup using
  205. # connect_to_folder. This must be a full path to the folder. If the folder does
  206. # not exist when calibre starts, it is ignored. If there are '\' characters in
  207. # the path (such as in Windows paths), you must double them.
  208. # Examples:
  209. #     auto_connect_to_folder = 'C:\\Users\\someone\\Desktop\\testlib'
  210. #     auto_connect_to_folder = '/home/dropbox/My Dropbox/someone/library'
  211. auto_connect_to_folder = ''
  212.  
  213. #: Specify renaming rules for SONY collections
  214. # Specify renaming rules for sony collections. This tweak is only applicable if
  215. # metadata management is set to automatic. Collections on Sonys are named
  216. # depending upon whether the field is standard or custom. A collection derived
  217. # from a standard field is named for the value in that field. For example, if
  218. # the standard 'series' column contains the value 'Darkover', then the
  219. # collection name is 'Darkover'. A collection derived from a custom field will
  220. # have the name of the field added to the value. For example, if a custom series
  221. # column named 'My Series' contains the name 'Darkover', then the collection
  222. # will by default be named 'Darkover (My Series)'. For purposes of this
  223. # documentation, 'Darkover' is called the value and 'My Series' is called the
  224. # category. If two books have fields that generate the same collection name,
  225. # then both books will be in that collection.
  226. # This set of tweaks lets you specify for a standard or custom field how
  227. # the collections are to be named. You can use it to add a description to a
  228. # standard field, for example 'Foo (Tag)' instead of the 'Foo'. You can also use
  229. # it to force multiple fields to end up in the same collection. For example, you
  230. # could force the values in 'series', '#my_series_1', and '#my_series_2' to
  231. # appear in collections named 'some_value (Series)', thereby merging all of the
  232. # fields into one set of collections.
  233. # There are two related tweaks. The first determines the category name to use
  234. # for a metadata field.  The second is a template, used to determines how the
  235. # value and category are combined to create the collection name.
  236. # The syntax of the first tweak, sony_collection_renaming_rules, is:
  237. # {'field_lookup_name':'category_name_to_use', 'lookup_name':'name', ...}
  238. # The second tweak, sony_collection_name_template, is a template. It uses the
  239. # same template language as plugboards and save templates. This tweak controls
  240. # how the value and category are combined together to make the collection name.
  241. # The only two fields available are {category} and {value}. The {value} field is
  242. # never empty. The {category} field can be empty. The default is to put the
  243. # value first, then the category enclosed in parentheses, it is isn't empty:
  244. # '{value} {category:|(|)}'
  245. # Examples: The first three examples assume that the second tweak
  246. # has not been changed.
  247. # 1: I want three series columns to be merged into one set of collections. The
  248. # column lookup names are 'series', '#series_1' and '#series_2'. I want nothing
  249. # in the parenthesis. The value to use in the tweak value would be:
  250. #    sony_collection_renaming_rules={'series':'', '#series_1':'', '#series_2':''}
  251. # 2: I want the word '(Series)' to appear on collections made from series, and
  252. # the word '(Tag)' to appear on collections made from tags. Use:
  253. #    sony_collection_renaming_rules={'series':'Series', 'tags':'Tag'}
  254. # 3: I want 'series' and '#myseries' to be merged, and for the collection name
  255. # to have '(Series)' appended. The renaming rule is:
  256. #    sony_collection_renaming_rules={'series':'Series', '#myseries':'Series'}
  257. # 4: Same as example 2, but instead of having the category name in parentheses
  258. # and appended to the value, I want it prepended and separated by a colon, such
  259. # as in Series: Darkover. I must change the template used to format the category name
  260. # The resulting two tweaks are:
  261. #    sony_collection_renaming_rules={'series':'Series', 'tags':'Tag'}
  262. #    sony_collection_name_template='{category:||: }{value}'
  263. sony_collection_renaming_rules={}
  264. sony_collection_name_template='{value}{category:| (|)}'
  265.  
  266. #: Specify how SONY collections are sorted
  267. # Specify how sony collections are sorted. This tweak is only applicable if
  268. # metadata management is set to automatic. You can indicate which metadata is to
  269. # be used to sort on a collection-by-collection basis. The format of the tweak
  270. # is a list of metadata fields from which collections are made, followed by the
  271. # name of the metadata field containing the sort value.
  272. # Example: The following indicates that collections built from pubdate and tags
  273. # are to be sorted by the value in the custom column '#mydate', that collections
  274. # built from 'series' are to be sorted by 'series_index', and that all other
  275. # collections are to be sorted by title. If a collection metadata field is not
  276. # named, then if it is a series- based collection it is sorted by series order,
  277. # otherwise it is sorted by title order.
  278. # [(['pubdate', 'tags'],'#mydate'), (['series'],'series_index'), (['*'], 'title')]
  279. # Note that the bracketing and parentheses are required. The syntax is
  280. # [ ( [list of fields], sort field ) , ( [ list of fields ] , sort field ) ]
  281. # Default: empty (no rules), so no collection attributes are named.
  282. sony_collection_sorting_rules = []
  283.  
  284. #: Control how tags are applied when copying books to another library
  285. # Set this to True to ensure that tags in 'Tags to add when adding
  286. # a book' are added when copying books to another library
  287. add_new_book_tags_when_importing_books = False
  288.  
  289. #: Set the maximum number of tags to show per book in the content server
  290. max_content_server_tags_shown=5
  291.  
  292. #: Set custom metadata fields that the content server will or will not display.
  293. # content_server_will_display is a list of custom fields to be displayed.
  294. # content_server_wont_display is a list of custom fields not to be displayed.
  295. # wont_display has priority over will_display.
  296. # The special value '*' means all custom fields. The value [] means no entries.
  297. # Defaults:
  298. #    content_server_will_display = ['*']
  299. #    content_server_wont_display = []
  300. # Examples:
  301. # To display only the custom fields #mytags and #genre:
  302. #   content_server_will_display = ['#mytags', '#genre']
  303. #   content_server_wont_display = []
  304. # To display all fields except #mycomments:
  305. #   content_server_will_display = ['*']
  306. #   content_server_wont_display['#mycomments']
  307. content_server_will_display = ['*']
  308. content_server_wont_display = []
  309.  
  310. #: Set the maximum number of sort 'levels'
  311. # Set the maximum number of sort 'levels' that calibre will use to resort the
  312. # library after certain operations such as searches or device insertion. Each
  313. # sort level adds a performance penalty. If the database is large (thousands of
  314. # books) the penalty might be noticeable. If you are not concerned about multi-
  315. # level sorts, and if you are seeing a slowdown, reduce the value of this tweak.
  316. maximum_resort_levels = 5
  317.  
  318. #: Specify which font to use when generating a default cover
  319. # Absolute path to .ttf font files to use as the fonts for the title, author
  320. # and footer when generating a default cover. Useful if the default font (Liberation
  321. # Serif) does not contain glyphs for the language of the books in your library.
  322. generate_cover_title_font = None
  323. generate_cover_foot_font = None
  324.  
  325. #: Control behavior of the book list
  326. # You can control the behavior of doubleclicks on the books list.
  327. # Choices: open_viewer, do_nothing,
  328. # edit_cell, edit_metadata. Selecting edit_metadata has the side effect of
  329. # disabling editing a field using a single click.
  330. # Default: open_viewer.
  331. # Example: doubleclick_on_library_view = 'do_nothing'
  332. # You can also control whether the book list scrolls horizontal per column or
  333. # per pixel. Default is per column.
  334. doubleclick_on_library_view = 'open_viewer'
  335. horizontal_scrolling_per_column = True
  336.  
  337. #: Language to use when sorting.
  338. # Setting this tweak will force sorting to use the
  339. # collating order for the specified language. This might be useful if you run
  340. # calibre in English but want sorting to work in the language where you live.
  341. # Set the tweak to the desired ISO 639-1 language code, in lower case.
  342. # You can find the list of supported locales at
  343. # http://publib.boulder.ibm.com/infocenter/iseries/v5r3/topic/nls/rbagsicusortsequencetables.htm
  344. # Default: locale_for_sorting = '' -- use the language calibre displays in
  345. # Example: locale_for_sorting = 'fr' -- sort using French rules.
  346. # Example: locale_for_sorting = 'nb' -- sort using Norwegian rules.
  347. locale_for_sorting =  ''
  348.  
  349. #: Number of columns for custom metadata in the edit metadata dialog
  350. # Set whether to use one or two columns for custom metadata when editing
  351. # metadata  one book at a time. If True, then the fields are laid out using two
  352. # columns. If False, one column is used.
  353. metadata_single_use_2_cols_for_custom_fields = True
  354.  
  355. #: The number of seconds to wait before sending emails
  356. # The number of seconds to wait before sending emails when using a
  357. # public email server like gmail or hotmail. Default is: 5 minutes
  358. # Setting it to lower may cause the server's SPAM controls to kick in,
  359. # making email sending fail. Changes will take effect only after a restart of
  360. # calibre.
  361. public_smtp_relay_delay = 301
  362.  
  363. #: Remove the bright yellow lines at the edges of the book list
  364. # Control whether the bright yellow lines at the edges of book list are drawn
  365. # when a section of the user interface is hidden. Changes will take effect
  366. # after a restart of calibre.
  367. draw_hidden_section_indicators = True
  368.  
  369. #: The maximum width and height for covers saved in the calibre library
  370. # All covers in the calibre library will be resized, preserving aspect ratio,
  371. # to fit within this size. This is to prevent slowdowns caused by extremely
  372. # large covers
  373. maximum_cover_size = (1200, 1600)
  374.  
  375. #: Where to send downloaded news
  376. # When automatically sending downloaded news to a connected device, calibre
  377. # will by default send it to the main memory. By changing this tweak, you can
  378. # control where it is sent. Valid values are "main", "carda", "cardb". Note
  379. # that if there isn't enough free space available on the location you choose,
  380. # the files will be sent to the location with the most free space.
  381. send_news_to_device_location = "main"
  382.  
  383. #: What interfaces should the content server listen on
  384. # By default, the calibre content server listens on '0.0.0.0' which means that it
  385. # accepts IPv4 connections on all interfaces. You can change this to, for
  386. # example, '127.0.0.1' to only listen for connections from the local machine, or
  387. # to '::' to listen to all incoming IPv6 and IPv4 connections (this may not
  388. # work on all operating systems)
  389. server_listen_on = '0.0.0.0'
  390.  
  391. #: Unified toolbar on OS X
  392. # If you enable this option and restart calibre, the toolbar will be 'unified'
  393. # with the titlebar as is normal for OS X applications. However, doing this has
  394. # various bugs, for instance the minimum width of the toolbar becomes twice
  395. # what it should be and it causes other random bugs on some systems, so turn it
  396. # on at your own risk!
  397. unified_title_toolbar_on_osx = False
  398.  
  399. #: Save original file when converting from same format to same format
  400. # When calibre does a conversion from the same format to the same format, for
  401. # example, from EPUB to EPUB, the original file is saved, so that in case the
  402. # conversion is poor, you can tweak the settings and run it again. By setting
  403. # this to False you can prevent calibre from saving the original file.
  404. save_original_format = True
  405.  
  406.