mirror of
git://github.com/kovidgoyal/calibre.git
synced 2026-01-24 05:55:24 +01:00
When sorting by series, use the language of the book to decide what leading articles to remove, just as is done for sorting by title
This commit is contained in:
parent
501c4279dc
commit
509c214de0
1 changed files with 7 additions and 1 deletions
|
|
@ -1106,6 +1106,7 @@ def __init__(self, fields, field_metadata, data, db_prefs):
|
|||
self.library_order = tweaks['title_series_sorting'] == 'library_order'
|
||||
self.data = data
|
||||
self.string_sort_key = sort_key
|
||||
self.lang_idx = field_metadata['languages']['rec_index']
|
||||
|
||||
def __call__(self, record):
|
||||
values = tuple(self.itervals(self.data[record]))
|
||||
|
|
@ -1159,7 +1160,12 @@ def itervals(self, record):
|
|||
val = ('', 1)
|
||||
else:
|
||||
if self.library_order:
|
||||
val = title_sort(val)
|
||||
try:
|
||||
lang = record[self.lang_idx].partition(u',')[0]
|
||||
except (AttributeError, ValueError, KeyError,
|
||||
IndexError, TypeError):
|
||||
lang = None
|
||||
val = title_sort(val, order='library_order', lang=lang)
|
||||
sidx_fm = self.field_metadata[name + '_index']
|
||||
sidx = record[sidx_fm['rec_index']]
|
||||
val = (self.string_sort_key(val), sidx)
|
||||
|
|
|
|||
Loading…
Reference in a new issue