diff --git a/resources/default_tweaks.py b/resources/default_tweaks.py index b18789565d..5c15651f9c 100644 --- a/resources/default_tweaks.py +++ b/resources/default_tweaks.py @@ -41,4 +41,23 @@ bool_custom_columns_are_tristate = 'yes' # Order is 0 for ascending, 1 for descending # For example, set it to [('authors',0),('title',0)] to sort by # title within authors. -sort_columns_at_startup = None \ No newline at end of file +sort_columns_at_startup = None + +# Format to be used for publication date +# A string controlling how the publication date is displayed in the GUI +# d the day as number without a leading zero (1 to 31) +# dd the day as number with a leading zero (01 to 31) +# ddd the abbreviated localized day name (e.g. 'Mon' to 'Sun'). +# dddd the long localized day name (e.g. 'Monday' to 'Qt::Sunday'). +# M the month as number without a leading zero (1-12) +# MM the month as number with a leading zero (01-12) +# MMM the abbreviated localized month name (e.g. 'Jan' to 'Dec'). +# MMMM the long localized month name (e.g. 'January' to 'December'). +# yy the year as two digit number (00-99) +# yyyy the year as four digit number +# For example, given the date of 9 Jan 2010, the following formats show +# MMM yyyy ==> Jan 2010 yyyy ==> 2010 dd MMM yyyy ==> 09 Jan 2010 +# MM/yyyy ==> 01/2010 d/M/yy ==> 9/1/10 yy ==> 10 +# default if not set: MMM yyyy +gui_pubdate_display_format = 'MMM yyyy' + diff --git a/src/calibre/gui2/dialogs/metadata_single.py b/src/calibre/gui2/dialogs/metadata_single.py index 95a2102cc1..1ea6743ae2 100644 --- a/src/calibre/gui2/dialogs/metadata_single.py +++ b/src/calibre/gui2/dialogs/metadata_single.py @@ -313,6 +313,9 @@ class MetadataSingleDialog(ResizableDialog, Ui_MetadataSingleDialog): self.cpixmap = None self.cover.setAcceptDrops(True) self.pubdate.setMinimumDate(QDate(100,1,1)) + pubdate_format = tweaks['gui_pubdate_display_format'] + if pubdate_format is not None: + self.pubdate.setDisplayFormat(pubdate_format) self.date.setMinimumDate(QDate(100,1,1)) self.connect(self.cover, SIGNAL('cover_changed(PyQt_PyObject)'), self.cover_dropped) diff --git a/src/calibre/gui2/library.py b/src/calibre/gui2/library.py index ba9a5b0b29..e40403f1f4 100644 --- a/src/calibre/gui2/library.py +++ b/src/calibre/gui2/library.py @@ -124,7 +124,10 @@ class PubDateDelegate(QStyledItemDelegate): d = val.toDate() if d == UNDEFINED_QDATE: return '' - return d.toString('MMM yyyy') + format = tweaks['gui_pubdate_display_format'] + if format is None: + format = 'MMM yyyy' + return d.toString(format) def createEditor(self, parent, option, index): qde = QStyledItemDelegate.createEditor(self, parent, option, index)