diff --git a/src/calibre/devices/kobo/books.py b/src/calibre/devices/kobo/books.py index 48033b3522..32bf9a9828 100644 --- a/src/calibre/devices/kobo/books.py +++ b/src/calibre/devices/kobo/books.py @@ -8,6 +8,7 @@ import time from calibre.utils.date import parse_date from calibre.devices.usbms.books import Book as Book_ +from calibre.ebooks.metadata import author_to_author_sort class Book(Book_): @@ -20,6 +21,7 @@ class Book(Book_): self.authors = [''] else: self.authors = [authors] + self.author_sort = author_to_author_sort(self.authors[0]) if not title: self.title = _('Unknown') diff --git a/src/calibre/gui2/library/models.py b/src/calibre/gui2/library/models.py index f0296a32c7..246b0835a5 100644 --- a/src/calibre/gui2/library/models.py +++ b/src/calibre/gui2/library/models.py @@ -1193,7 +1193,10 @@ class DeviceBooksModel(BooksModel): # {{{ ax = authors_to_string(self.db[x].authors) except: ax = '' - return ax + try: + return sort_key(ax) + except: + return ax keygen = { 'title': ('title_sorter', lambda x: sort_key(x) if x else ''),