diff --git a/Changelog.yaml b/Changelog.yaml
index b3b025ef29..12f1b570bc 100644
--- a/Changelog.yaml
+++ b/Changelog.yaml
@@ -4,6 +4,368 @@
# for important features/bug fixes.
# Also, each release can have new and improved recipes.
+- version: 0.7.33
+ date: 2010-12-10
+
+ new features:
+ - title: "Language sensitive sorting"
+ type: major
+ description: >
+ "calibre now sorts using language specific rules. The language used is the language of the calibre interface, which can be changed via Preferences->Look & Feel. There is also
+ a tweak that allows you to use a different language from the one used for the calibre interface. Powered by the ICU library."
+
+ - title: "Add an action to merge only formats and leave metadata alone (Shift+Alt+M)"
+ tickets: [7709]
+
+ - title: "Add a tweak to control which custom columns are displayed in the Book details panel."
+
+ - title: "Implement a more sophisticated 'functional programming' template language. See the User Manual for details."
+
+ - title: "Speed up deleting of large numbers of books and show progress while doing so"
+
+ - title: "Adding books: Dont refresh the Tag Browser while adding multiple books. Should speed up the adding of large numbers of books."
+
+ - title: "Edit metadata dialog: When trying to download metadata, if there are multiple matches indicate which matches have a cover and summary in the list. Also add an option to automatically download the cover of the selected match."
+
+ - title: "Drivers for the HTC Legend and Samsung Epic"
+
+ - title: "FB2 Output: Convert SVG images in the input document to raster images"
+
+ - title: "News download: Localize the navigation bars in the downloaded news to the language the user has selected for their calibre interface"
+
+ bug fixes:
+ - title: "Various fixes to the Title Case function"
+ tickets: [7846]
+
+ - title: "Content server: Fix --url-prefix being ignored for links at the Top level"
+
+ - title: "News download: When generating periodicals for the SONY use the local timezone in the SONY specific metadata"
+
+ - title: "Fix bug in cover cache that could cause it to keep a large number of covers in memory. Showed up when adding large numbers of books to calibre."
+ tickets: [7813]
+
+ - title: "Adding books: Run in the main thread to prevent unfortunate interactions with the metadata backup. Also fix regression that broke the Abort button."
+
+ - title: "Fix a crash on OS X if OK is clicked inthe edit metadata button while downloading a cover"
+ tickets: [7716]
+
+ - title: "E-book viewer: Fix a regression that prevented booksmarks from working with some EPUB files"
+ tickets: [7812]
+
+ - title: "Save to disk: Refactor to not open a database connection in the worker process. Also fix a bug that could lead to save failures not being reported."
+
+ - title: "Fix regression in 0.7.32 that broke opening formats in the ebook viewer from the edit metadata dialog"
+
+ - title: "FB2 Output: Generate output 100% compliant with the FB2 spec"
+
+ - title: "Fix Saved search dropdown box looses selected search"
+ tickets: [7787]
+
+ - title: "TXT Output: Fix an issue where the br to space conversion was not being handled properly."
+
+ improved recipes:
+ - Le Monde
+ - Ming Pao
+ - New Yorker
+
+ new recipes:
+ - title: "ToyoKeizai News and Nikkei Social News"
+ author: "Hiroshi Miura"
+
+ - title: "St. Louis Post Dispatch"
+ author: "cisaak"
+
+ - title: "Heise Open and Technology Review"
+ author: "Anton Gillert"
+
+
+- version: 0.7.32
+ date: 2010-12-03
+
+ new features:
+ - title: "All new linux binary build. With updated libraries and replacing cx_Freeze with my own C python launcher code."
+
+ - title: "Edit metadata dialog: Add Next and Previous buttons and show cover size in tooltip"
+ tickets: [7706, 7711]
+
+ - title: "A new custom column type: Enumeration. This column can take one of a user defined set of values."
+
+ - title: "PML Output: Add option to reduce image sizes/bit depth to allow PML Output to be used with DropBook"
+
+ - title: "TXT Output: Add option to generate Markdown output. Turn
tags into spaces."
+
+ - title: "Add a count function to the template language. Make author_sort searchable."
+
+ - title: "Various consistency and usability enhancements to the search box."
+ tickets: [7726]
+ description: >
+ "Always select first book in result set of a search. Similar books searches added to search history. Search history order is no longer randomized. When focussing the search box with a keyboard shortcut, select all text. If you press enter in the search box, the search is executed and the book list os automatically focussed."
+
+ - title: "Driver for samsung fascinate and PocketBook 902"
+
+ - title: "FB2 Output: Add option to create FB2 sections based on internal file structure of input file (useful for EPUB files that have been split on chapter boundaries). Also add options to mark h1/h2/h3 tags as section titles in the FB2 file."
+ tickets: [7738]
+
+ - title: "Metadata jacket: Add publisher information to jacket."
+
+ - title: "Catalog generation: Allow use of custom columns as well as tags to indicate read books. Note that your previously saved read books setting will be lost."
+
+ - title: "Bulk metadata edit dialog: Add an Apply button to allow you to perform multiple operations in sequence"
+
+ - title: "Allow drag and drop of books onto user categories. If you drag a book from a particular column (say authors) and drop it onto a user category, the column value will be added to the user category. So for authors, the authros will be added to the user category."
+
+ - title: "Check Library can now check and repair the has_cover cache"
+
+ - title: "Allow GUI plugins to be distributed in ZIP files. See http://www.mobileread.com/forums/showthread.php?t=108774"
+
+ - title: "Allow searching by the number of tags/authors/formats/etc. See User Manual for details."
+
+ - title: "Tiny speed up when loading large libraries and make various metadata editing tasks a little faster by reducing the number of times the Tag Browser is refreshed"
+
+ bug fixes:
+ - title: "E-book viewer: Fix broken backwards searching"
+
+ - title: "Fix custom ratings column values being displayed incorrectly in book details area"
+ tickets: [7740]
+
+ - title: "Fix book details dialog not using internal viewer to view ebooks"
+ tickets: [7424]
+
+ - title: "MOBI Output: When the input document does not explicitly specify a size for images, set the size to be the natural size of the image. This works around Amazon's *truly wonderful* MOBI renderer's tendency to expand images that do not have a width and height specified."
+
+ - title: "Conversion pipeline: Fix bug that caused height/width specified in %/em of screen size to be incorrectly calculated by a factor of 72./DPI"
+
+ - title: "Conversion pipeline: Respect max-width and max-height when calculating the effective size of an element"
+
+ - title: "Conversion pipeline: Do not override CSS for images with the value of the img width/height attributes, unless no CSS is specified for the image"
+
+ - title: "E-book viewer: Resize automatically to fit on smaller screens"
+
+ - title: "Use the same MIME database on all platforms that calibre runs on, works around python 2.7's crazy insistence on reading MIME data from the registry"
+
+ - title: "Kobo driver: Allow html, txt and rtf documents to be deleted"
+
+ - title: "Always overwrite title/author metadata when downloading metadata for books added by ISBN"
+
+ - title: "Nook Color profile: Reduce screen height to 900px"
+
+ - title: "Fix regression that broke RTF conversion on some linux systems"
+
+ - title: "Fix bug that could break searching after copying and deleting a book from the current library"
+ tickets: [7459]
+
+ improved recipes:
+ - NZZ
+ - Frankfurter Rundschau
+ - JiJi Press
+ - Revista Muy Intersante
+
+ new recipes:
+ - title: "Global Times"
+ author: "malfi"
+
+ - title: "The Philosopher's Magazine"
+ author: "Darko Miletic"
+
+ - title: "Poughkeepsie Journal"
+ author: "weebl"
+
+ - title: "Business Spectator and ABC Australia"
+ author: "Dean Cording"
+
+ - title: "La Rijoa and NacionRed"
+ author: "Arturo Martinez Nieves"
+
+ - title: "Animal Politico"
+ author: "leamsi"
+
+
+- version: 0.7.31
+ date: 2010-11-27
+
+ bug fixes:
+ - title: "Fix various regressions in the calibre windows build caused by the switch to python 2.7. If you are on windows and upgraded to 0.7.30, it is highly recommended that you upgrade to 0.7.31. If you are not on windows, you can ignore 0.7.31"
+ tickets: [7685, 7694, 7691]
+
+
+- version: 0.7.30
+ date: 2010-11-26
+
+ new features:
+ - title: "Support for Acer Lumiread and PocketBook Pro 602"
+
+ - title: "When importing by ISBN also allow the specification of a file to be imported."
+ tickets: [7400]
+
+ - title: "E-mail sending: Email sends are now regular jobs that can be accessed from the jobs list. Also when sending using gmail/hotmail send at most one email every five minutes to avoid trigerring their spam controls. Failed sends are now retried one more time, automatically."
+
+ - title: "Content server: When a category contains only one item, go directly to the book list instead of forcing the user to click on that one item"
+
+ - title: "E-mail sending: Allow unencrypted connections to SMTP relay"
+
+ - title: "Improve startup times for large libraries by caching the has_cover check"
+
+ - title: "Update windows binary build to use python 2.7"
+
+ - title: "Metadata and cover download plugins from Nicebooks (disabled by default)"
+
+
+ bug fixes:
+ - title: "MOBI Input: Fix bug in cleanup regex that broke parsing of escaped XML declarations."
+ tickets: [7585]
+
+ - title: "Content server: Fix bug when user has custom categories/columns with non ascii names"
+ tickets: [7590]
+
+ - title: "RTF Output: Handle non breaking spaces correctly"
+ tickets: [7668]
+
+ - title: "Conversion pipeline: When rasterizing SVG images workaround incorrect handinlg of percentage height specifications in QSvgRenderer."
+ tickets: [7598]
+
+ - title: "News download: Update version of feedparser used to parse RSS feeds."
+ tickets: [7674]
+
+ - title: "Tag Browser: Allow user to restore hidden categories by a right click even is all categories have been hidden"
+
+ - title: "TXT/RTF Output: Handle XML processing instructions embedded in content correctly."
+ tickets: [7644]
+
+ - title: "MOBI Input: Workarounds for lack of nesting rules between block and inline tags"
+ tickets: [7618]
+
+ - title: "E-book viewer: Load all hyphenation patterns to support multi-lingual books"
+
+ - title: "E-book viewer: Fix incorrect lang names being used in hyphenation"
+
+ - title: "Check to see that the result file from a conversion is not empty before adding it, protects against the case where the conversion process crashes and the GUI adds a zero byte file to the book record"
+
+ - title: "E-book viewer: More sophisticated algorithm to resize images to fit viewer window. Should preserve aspect ratio in more cases"
+
+ - title: "Remove unneccessary calls to set_path when creating book records. Speeds up record creation by about 30% on my system"
+
+ - title: "Speedup for bibtex catalog generation."
+
+ - title: "Kobo driver: Fix missing table in deleting books process for Kobo WiFi and Kobo-O 1.8 Beta"
+
+ - title: "RTF Input: Preserve scene breaks in the form of empty paragraphs. Preprocessing: Improvements to chapter detection"
+
+ - title: "Fix custom recipe not sorted by title"
+ tickets: [7486]
+
+ - title: "Kobo driver: Fix bug in managing the Im_Reading category on windows"
+
+ improved recipes:
+ - "El Pais - Uruguay"
+ - Argentinian La Nacion
+ - comics.com
+ - Mingpao
+ - Revista Muy Intersante
+ - Telepolis
+ - New York Times
+
+ new recipes:
+ - title: "Bangkok Biz News and Matichon"
+ author: "Anat Ruangrassamee"
+
+ - title: "The Workingham Times and Deutsche Welle"
+ author: "Darko Miletic"
+
+ - title: "Biz Portal"
+ author: "marbs"
+
+ - title: "Various Japanese news sources"
+ author: "Hiroshi Miura"
+
+ - title: "Arcamax"
+ author: "Starson17"
+
+ - title: "Various Spanish news sources"
+ author: "Gustavo Azambuja"
+
+ - title: "TSN"
+ author: Nexus
+
+ - title: "Zeit Online Premium"
+ author: Steffen Siebert
+
+
+- version: 0.7.29
+ date: 2010-11-19
+
+ new features:
+ - title: "OSX binary build is now based on Qt 4.7. Also, the build is now Intel only and requires at least OS X 10.5.2. If you are on a PowerPC machine or an older OS X version, do not upgrade"
+
+ - title: "Content server: Allow direct navigation to a set of books in the book list."
+ tickets: [7453]
+
+ - title: "OS X: When deleting books, put the files into the recycle bin instead of deleting them permanently"
+
+ - title: "Add button to easy configure Hotmail as email relay. Also improve usability of easy config buttons"
+
+ - title: "Kobo driver: Support Currently_Reading category"
+
+ - title: "Catalog generation: Thumbnail caching, wishlist, improved description layout."
+ tickets: [7376]
+
+ - title: "Support for the Cybook Orizon"
+
+ bug fixes:
+ - title: "Fix restore to defaults in preferences incorrectly setting PDF unwrap factor to 0.0"
+
+ - title: "PDF Input: Fix unwrapping of accented characters"
+
+ - title: "Do not display dialogs asking for confirmation or showing conversion errors when calibre is minimized to system tray"
+ tickets: [7549]
+
+ - title: "calibre server: Fix regression that broke digest authentication when the calibre interface language was set to non English"
+
+ - title: "EPUB Output: Do not raise an error for invalid embedded fonts in the input document."
+ tickets: [7567]
+
+ - title: "RTF Input: Improved conversion of tables, with support for border styles on table cells"
+
+ - title: "E-book viewer: Fix regression that broke hyphenation. Also add more language patterns for hyphenation"
+
+ - title: "SONY driver: Fix cover thumbnails being uploaded to wrong directory on windows"
+
+ - title: "Fix UnicodeDecodeError when displaying a failed metadata fetch message"
+ tickets: [7560]
+
+ - title: "Bulk metadata edit: Speed up remove all tags operation"
+
+ - title: "MOBI Output: Specify image sizes in pixels instead of em to accomodate Amazon's @#$%#@! MOBI renderer"
+
+ - title: "Fix bug preventing customizing of builtin recipes if they are not ascii encoded"
+
+ - title: "SONY XML cache: Handle case where XML db contains reference to a file that does not exist gracefully"
+
+ improved recipes:
+ - Al Jazeera
+ - The Moscow Times
+ - GLobe and Mail
+ - Washington Post
+
+ new recipes:
+ - title: "Hannoversche Allgemeine Zeitung"
+ author: "Artemis"
+
+ - title: "globes.co.il"
+ author: "marbs"
+
+ - title: "THN and RDS"
+ author: "Nexus"
+
+ - title: "pclab.pl"
+ author: "ravcio"
+
+ - title: "Now Toronto"
+ author: "Starson17"
+
+ - title: "Press releases of the German government and EU Commission"
+ author: "malfi"
+
+
- version: 0.7.28
date: 2010-11-12
diff --git a/resources/content_server/read/monocle.js b/resources/content_server/read/monocle.js
index c0642743f7..8d58ba8a06 100644
--- a/resources/content_server/read/monocle.js
+++ b/resources/content_server/read/monocle.js
@@ -38,6 +38,7 @@ Monocle.Browser.on = {
iPad: navigator.userAgent.indexOf("iPad") != -1,
BlackBerry: navigator.userAgent.indexOf("BlackBerry") != -1,
Android: navigator.userAgent.indexOf('Android') != -1,
+ MacOSX: navigator.userAgent.indexOf('Mac OS X') != -1,
Kindle3: navigator.userAgent.match(/Kindle\/3/)
}
@@ -162,12 +163,23 @@ Monocle.Browser.has.transform3d = Monocle.Browser.CSSProps.isSupported([
'OPerspective',
'msPerspective'
]) && Monocle.Browser.CSSProps.supportsMediaQueryProperty('transform-3d');
+Monocle.Browser.has.embedded = (top != self);
+
Monocle.Browser.has.iframeTouchBug = Monocle.Browser.iOSVersionBelow("4.2");
+
Monocle.Browser.has.selectThruBug = Monocle.Browser.iOSVersionBelow("4.2");
+
Monocle.Browser.has.mustScrollSheaf = Monocle.Browser.is.MobileSafari;
Monocle.Browser.has.iframeDoubleWidthBug = Monocle.Browser.has.mustScrollSheaf;
+
Monocle.Browser.has.floatColumnBug = Monocle.Browser.is.WebKit;
+Monocle.Browser.has.relativeIframeWidthBug = Monocle.Browser.on.Android;
+
+
+Monocle.Browser.has.jumpFlickerBug =
+ Monocle.Browser.on.MacOSX && Monocle.Browser.is.WebKit;
+
if (typeof window.console == "undefined") {
window.console = {
@@ -1091,11 +1103,29 @@ Monocle.Reader = function (node, bookData, options, onLoadCallback) {
cmpt.dom.setStyles(Monocle.Styles.component);
Monocle.Styles.applyRules(cmpt.contentDocument.body, Monocle.Styles.body);
}
+ lockFrameWidths();
dom.find('overlay').dom.setStyles(Monocle.Styles.overlay);
dispatchEvent('monocle:styles');
}
+ function lockingFrameWidths() {
+ if (!Monocle.Browser.has.relativeIframeWidthBug) { return; }
+ for (var i = 0, cmpt; cmpt = dom.find('component', i); ++i) {
+ cmpt.style.display = "none";
+ }
+ }
+
+
+ function lockFrameWidths() {
+ if (!Monocle.Browser.has.relativeIframeWidthBug) { return; }
+ for (var i = 0, cmpt; cmpt = dom.find('component', i); ++i) {
+ cmpt.style.width = cmpt.parentNode.offsetWidth+"px";
+ cmpt.style.display = "block";
+ }
+ }
+
+
function setBook(bk, place, callback) {
p.book = bk;
var pageCount = 0;
@@ -1121,12 +1151,14 @@ Monocle.Reader = function (node, bookData, options, onLoadCallback) {
if (!p.initialized) {
console.warn('Attempt to resize book before initialization.');
}
+ lockingFrameWidths();
if (!dispatchEvent("monocle:resizing", {}, true)) {
return;
}
clearTimeout(p.resizeTimer);
p.resizeTimer = setTimeout(
function () {
+ lockFrameWidths();
p.flipper.moveTo({ page: pageNumber() });
dispatchEvent("monocle:resize");
},
@@ -1765,12 +1797,7 @@ Monocle.Book = function (dataSource) {
function componentIdMatching(str) {
- for (var i = 0; i < p.componentIds.length; ++i) {
- if (str.indexOf(p.componentIds[i]) > -1) {
- return p.componentIds[i];
- }
- }
- return null;
+ return p.componentIds.indexOf(str) >= 0 ? str : null;
}
@@ -2018,6 +2045,12 @@ Monocle.Component = function (book, id, index, chapters, source) {
function loadFrameFromURL(url, frame, callback) {
+ if (!url.match(/^\//)) {
+ var link = document.createElement('a');
+ link.setAttribute('href', url);
+ url = link.href;
+ delete(link);
+ }
frame.onload = function () {
frame.onload = null;
Monocle.defer(callback);
@@ -2460,7 +2493,7 @@ Monocle.Flippers.Legacy = function (reader) {
function moveTo(locus, callback) {
var fn = frameToLocus;
if (typeof callback == "function") {
- fn = function () { frameToLocus(); callback(); }
+ fn = function (locus) { frameToLocus(locus); callback(locus); }
}
p.reader.getBook().setOrLoadPageAt(page(), locus, fn);
}
@@ -2794,7 +2827,9 @@ Monocle.Dimensions.Columns = function (pageDiv) {
function scrollerWidth() {
var bdy = p.page.m.activeFrame.contentDocument.body;
if (Monocle.Browser.has.iframeDoubleWidthBug) {
- if (Monocle.Browser.iOSVersion < "4.1") {
+ if (Monocle.Browser.on.Android) {
+ return bdy.scrollWidth * 1.5; // I actually have no idea why 1.5.
+ } else if (Monocle.Browser.iOSVersion < "4.1") {
var hbw = bdy.scrollWidth / 2;
var sew = scrollerElement().scrollWidth;
return Math.max(sew, hbw);
@@ -2969,6 +3004,7 @@ Monocle.Flippers.Slider = function (reader) {
function setPage(pageDiv, locus, callback) {
+ ensureWaitControl();
p.reader.getBook().setOrLoadPageAt(
pageDiv,
locus,
@@ -3048,6 +3084,7 @@ Monocle.Flippers.Slider = function (reader) {
checkPoint(boxPointX);
p.turnData.releasing = true;
+ showWaitControl(lowerPage());
if (dir == k.FORWARDS) {
if (
@@ -3088,14 +3125,18 @@ Monocle.Flippers.Slider = function (reader) {
function onGoingBackward(x) {
- var lp = lowerPage();
+ var lp = lowerPage(), up = upperPage();
+ showWaitControl(up);
jumpOut(lp, // move lower page off-screen
function () {
flipPages(); // flip lower to upper
setPage( // set upper page to previous
lp,
getPlace(lowerPage()).getLocus({ direction: k.BACKWARDS }),
- function () { lifted(x); }
+ function () {
+ lifted(x);
+ hideWaitControl(up);
+ }
);
}
);
@@ -3103,8 +3144,10 @@ Monocle.Flippers.Slider = function (reader) {
function afterGoingForward() {
- var up = upperPage();
+ var up = upperPage(), lp = lowerPage();
if (p.interactive) {
+ showWaitControl(up);
+ showWaitControl(lp);
setPage( // set upper (off screen) to current
up,
getPlace().getLocus({ direction: k.FORWARDS }),
@@ -3113,6 +3156,7 @@ Monocle.Flippers.Slider = function (reader) {
}
);
} else {
+ showWaitControl(lp);
flipPages();
jumpIn(up, function () { prepareNextPage(announceTurn); });
}
@@ -3171,6 +3215,8 @@ Monocle.Flippers.Slider = function (reader) {
function announceTurn() {
+ hideWaitControl(upperPage());
+ hideWaitControl(lowerPage());
p.reader.dispatchEvent('monocle:turn');
resetTurnData();
}
@@ -3319,12 +3365,14 @@ Monocle.Flippers.Slider = function (reader) {
function jumpIn(pageDiv, callback) {
- setX(pageDiv, 0, { duration: 1 }, callback);
+ var dur = Monocle.Browser.has.jumpFlickerBug ? 1 : 0;
+ setX(pageDiv, 0, { duration: dur }, callback);
}
function jumpOut(pageDiv, callback) {
- setX(pageDiv, 0 - pageDiv.offsetWidth, { duration: 1 }, callback);
+ var dur = Monocle.Browser.has.jumpFlickerBug ? 1 : 0;
+ setX(pageDiv, 0 - pageDiv.offsetWidth, { duration: dur }, callback);
}
@@ -3357,6 +3405,28 @@ Monocle.Flippers.Slider = function (reader) {
}
+ function ensureWaitControl() {
+ if (p.waitControl) { return; }
+ p.waitControl = {
+ createControlElements: function (holder) {
+ return holder.dom.make('div', 'flippers_slider_wait');
+ }
+ }
+ p.reader.addControl(p.waitControl, 'page');
+ }
+
+
+ function showWaitControl(page) {
+ var ctrl = p.reader.dom.find('flippers_slider_wait', page.m.pageIndex);
+ ctrl.style.opacity = 0.5;
+ }
+
+
+ function hideWaitControl(page) {
+ var ctrl = p.reader.dom.find('flippers_slider_wait', page.m.pageIndex);
+ ctrl.style.opacity = 0;
+ }
+
API.pageCount = p.pageCount;
API.addPage = addPage;
API.getPlace = getPlace;
diff --git a/resources/default_tweaks.py b/resources/default_tweaks.py
index 692349283f..081112444a 100644
--- a/resources/default_tweaks.py
+++ b/resources/default_tweaks.py
@@ -181,19 +181,25 @@ max_content_server_tags_shown=5
# content_server_will_display is a list of custom fields to be displayed.
# content_server_wont_display is a list of custom fields not to be displayed.
# wont_display has priority over will_display.
-# The special value '*' means all custom fields.
+# The special value '*' means all custom fields. The value [] means no entries.
# Defaults:
# content_server_will_display = ['*']
-# content_server_wont_display = ['']
+# content_server_wont_display = []
# Examples:
# To display only the custom fields #mytags and #genre:
# content_server_will_display = ['#mytags', '#genre']
-# content_server_wont_display = ['']
+# content_server_wont_display = []
# To display all fields except #mycomments:
# content_server_will_display = ['*']
# content_server_wont_display['#mycomments']
content_server_will_display = ['*']
-content_server_wont_display = ['']
+content_server_wont_display = []
+
+# Same as above (content server) but for the book details pane. Same syntax.
+# As above, this tweak affects only display of custom fields. The standard
+# fields are not affected
+book_details_will_display = ['*']
+book_details_wont_display = []
# Set the maximum number of sort 'levels' that calibre will use to resort the
@@ -217,3 +223,15 @@ generate_cover_foot_font = None
# open_viewer, do_nothing, edit_cell. Default: open_viewer.
# Example: doubleclick_on_library_view = 'do_nothing'
doubleclick_on_library_view = 'open_viewer'
+
+
+# Language to use when sorting. Setting this tweak will force sorting to use the
+# collating order for the specified language. This might be useful if you run
+# calibre in English but want sorting to work in the language where you live.
+# Set the tweak to the desired ISO 639-1 language code, in lower case.
+# You can find the list of supported locales at
+# http://publib.boulder.ibm.com/infocenter/iseries/v5r3/topic/nls/rbagsicusortsequencetables.htm
+# Default: locale_for_sorting = '' -- use the language calibre displays in
+# Example: locale_for_sorting = 'fr' -- sort using French rules.
+# Example: locale_for_sorting = 'nb' -- sort using Norwegian rules.
+locale_for_sorting = ''
diff --git a/resources/images/news/cnetjapan.png b/resources/images/news/cnetjapan.png
new file mode 100644
index 0000000000..9a0dcc8f7f
Binary files /dev/null and b/resources/images/news/cnetjapan.png differ
diff --git a/resources/images/news/cnetjapan_digital.png b/resources/images/news/cnetjapan_digital.png
new file mode 100644
index 0000000000..9a0dcc8f7f
Binary files /dev/null and b/resources/images/news/cnetjapan_digital.png differ
diff --git a/resources/images/news/cnetjapan_release.png b/resources/images/news/cnetjapan_release.png
new file mode 100644
index 0000000000..9a0dcc8f7f
Binary files /dev/null and b/resources/images/news/cnetjapan_release.png differ
diff --git a/resources/images/news/deutsche_welle_bs.png b/resources/images/news/deutsche_welle_bs.png
new file mode 100644
index 0000000000..cb3ad5a77f
Binary files /dev/null and b/resources/images/news/deutsche_welle_bs.png differ
diff --git a/resources/images/news/deutsche_welle_en.png b/resources/images/news/deutsche_welle_en.png
new file mode 100644
index 0000000000..cb3ad5a77f
Binary files /dev/null and b/resources/images/news/deutsche_welle_en.png differ
diff --git a/resources/images/news/deutsche_welle_es.png b/resources/images/news/deutsche_welle_es.png
new file mode 100644
index 0000000000..cb3ad5a77f
Binary files /dev/null and b/resources/images/news/deutsche_welle_es.png differ
diff --git a/resources/images/news/deutsche_welle_hr.png b/resources/images/news/deutsche_welle_hr.png
new file mode 100644
index 0000000000..cb3ad5a77f
Binary files /dev/null and b/resources/images/news/deutsche_welle_hr.png differ
diff --git a/resources/images/news/deutsche_welle_pt.png b/resources/images/news/deutsche_welle_pt.png
new file mode 100644
index 0000000000..cb3ad5a77f
Binary files /dev/null and b/resources/images/news/deutsche_welle_pt.png differ
diff --git a/resources/images/news/deutsche_welle_sr.png b/resources/images/news/deutsche_welle_sr.png
new file mode 100644
index 0000000000..cb3ad5a77f
Binary files /dev/null and b/resources/images/news/deutsche_welle_sr.png differ
diff --git a/resources/images/news/endgadget_ja.png b/resources/images/news/endgadget_ja.png
new file mode 100644
index 0000000000..94e8f1219c
Binary files /dev/null and b/resources/images/news/endgadget_ja.png differ
diff --git a/resources/images/news/jijinews.png b/resources/images/news/jijinews.png
new file mode 100644
index 0000000000..b87865fc34
Binary files /dev/null and b/resources/images/news/jijinews.png differ
diff --git a/resources/images/news/mainichi.png b/resources/images/news/mainichi.png
new file mode 100644
index 0000000000..9f8e8f319f
Binary files /dev/null and b/resources/images/news/mainichi.png differ
diff --git a/resources/images/news/mainichi_it_news.png b/resources/images/news/mainichi_it_news.png
new file mode 100644
index 0000000000..9f8e8f319f
Binary files /dev/null and b/resources/images/news/mainichi_it_news.png differ
diff --git a/resources/images/news/msnsankei.png b/resources/images/news/msnsankei.png
new file mode 100644
index 0000000000..7e92af7b20
Binary files /dev/null and b/resources/images/news/msnsankei.png differ
diff --git a/resources/images/news/nikkei_free.png b/resources/images/news/nikkei_free.png
new file mode 100644
index 0000000000..308f4b3085
Binary files /dev/null and b/resources/images/news/nikkei_free.png differ
diff --git a/resources/images/news/nikkei_sub.png b/resources/images/news/nikkei_sub.png
new file mode 100644
index 0000000000..308f4b3085
Binary files /dev/null and b/resources/images/news/nikkei_sub.png differ
diff --git a/resources/images/news/nikkei_sub_economy.png b/resources/images/news/nikkei_sub_economy.png
new file mode 100644
index 0000000000..308f4b3085
Binary files /dev/null and b/resources/images/news/nikkei_sub_economy.png differ
diff --git a/resources/images/news/nikkei_sub_industry.png b/resources/images/news/nikkei_sub_industry.png
new file mode 100644
index 0000000000..308f4b3085
Binary files /dev/null and b/resources/images/news/nikkei_sub_industry.png differ
diff --git a/resources/images/news/nikkei_sub_life.png b/resources/images/news/nikkei_sub_life.png
new file mode 100644
index 0000000000..308f4b3085
Binary files /dev/null and b/resources/images/news/nikkei_sub_life.png differ
diff --git a/resources/images/news/nikkei_sub_main.png b/resources/images/news/nikkei_sub_main.png
new file mode 100644
index 0000000000..308f4b3085
Binary files /dev/null and b/resources/images/news/nikkei_sub_main.png differ
diff --git a/resources/images/news/nikkei_sub_sports.png b/resources/images/news/nikkei_sub_sports.png
new file mode 100644
index 0000000000..308f4b3085
Binary files /dev/null and b/resources/images/news/nikkei_sub_sports.png differ
diff --git a/resources/images/news/novaya_gazeta.png b/resources/images/news/novaya_gazeta.png
new file mode 100644
index 0000000000..41886a64b9
Binary files /dev/null and b/resources/images/news/novaya_gazeta.png differ
diff --git a/resources/images/news/reuters.png b/resources/images/news/reuters.png
new file mode 100644
index 0000000000..f13abce7b6
Binary files /dev/null and b/resources/images/news/reuters.png differ
diff --git a/resources/images/news/reuters_ja.png b/resources/images/news/reuters_ja.png
new file mode 100644
index 0000000000..f13abce7b6
Binary files /dev/null and b/resources/images/news/reuters_ja.png differ
diff --git a/resources/images/news/the_workingham_times.png b/resources/images/news/the_workingham_times.png
new file mode 100644
index 0000000000..c22c910c9c
Binary files /dev/null and b/resources/images/news/the_workingham_times.png differ
diff --git a/resources/images/news/tpm_uk.png b/resources/images/news/tpm_uk.png
new file mode 100644
index 0000000000..d8c586a296
Binary files /dev/null and b/resources/images/news/tpm_uk.png differ
diff --git a/resources/images/news/vedomosti.png b/resources/images/news/vedomosti.png
new file mode 100644
index 0000000000..3187308f4e
Binary files /dev/null and b/resources/images/news/vedomosti.png differ
diff --git a/resources/images/news/yomiuri.png b/resources/images/news/yomiuri.png
new file mode 100644
index 0000000000..4a197f888f
Binary files /dev/null and b/resources/images/news/yomiuri.png differ
diff --git a/resources/jacket/stylesheet.css b/resources/jacket/stylesheet.css
index 5f4f012d01..c45f8fe977 100644
--- a/resources/jacket/stylesheet.css
+++ b/resources/jacket/stylesheet.css
@@ -36,22 +36,37 @@
/*
** Title
*/
-.cbj_title {
+table.cbj_header td.cbj_title {
font-size: x-large;
+ font-style: italic;
+ text-align: center;
+}
+
+/*
+** Series
+*/
+table.cbj_header td.cbj_series {
+ font-size: medium;
text-align: center;
}
/*
** Author
*/
-.cbj_author {
+table.cbj_header td.cbj_author {
font-size: medium;
text-align: center;
- margin-bottom: 1ex;
}
/*
-** Table containing Series, Publication Year, Rating and Tags
+** Publisher/published
+*/
+table.cbj_header td.cbj_pubdata {
+ text-align: center;
+}
+
+/*
+** Table containing Rating and Tags
*/
table.cbj_header {
width: 100%;
@@ -62,9 +77,8 @@ table.cbj_header {
*/
table.cbj_header td.cbj_label {
font-family: sans-serif;
- font-weight: bold;
text-align: right;
- width: 40%;
+ width: 33%;
}
/*
@@ -73,9 +87,23 @@ table.cbj_header td.cbj_label {
table.cbj_header td.cbj_content {
font-family: sans-serif;
text-align: left;
- width:60%;
+ width:67%;
}
+/*
+** Metadata divider
+*/
+hr.metadata_divider {
+ width:90%;
+ margin-left:5%;
+ border-top: solid white 0px;
+ border-right: solid white 0px;
+ border-bottom: solid black 1px;
+ border-left: solid white 0px;
+ }
+
+
+
/*
** To skip a banner item (Series|Published|Rating|Tags),
** edit the appropriate CSS rule below.
diff --git a/resources/jacket/template.xhtml b/resources/jacket/template.xhtml
index 8447b1d6b3..056ac0aad3 100644
--- a/resources/jacket/template.xhtml
+++ b/resources/jacket/template.xhtml
@@ -6,17 +6,24 @@