Merge from trunk

This commit is contained in:
Charles Haley 2012-12-03 10:04:56 +01:00
commit a8972b1f6a
138 changed files with 6372 additions and 4957 deletions

View File

@ -19,6 +19,56 @@
# new recipes: # new recipes:
# - title: # - title:
- version: 0.9.8
date: 2012-11-30
new features:
- title: "Add an option to show the cover size in the book details panel on the right. Option is in Preferences->Look & Feel->Book Details"
- title: "Kobo driver: Add support for firmware 2.2. Also add an option to send series information to the device."
description: "The newest Kobo firmware can display series information. Unfortunately, the Kobo does not read this information from the ebook file itself. It has to be sent separately after the Kobo has finished processing the new files. So you might have to connect - send books - disconnect and then re-connect for the series infor to show up. Fixes #1084388 (Add support for series on Kobo devices)"
- title: "Catalogs: Allow using custom columns as the source for Genres when generating catalogs"
- title: "When the user asks calibre to convert a book, show a small animation to highlight that the convert job has been queued to run in the background"
- title: "Add support for the notification center in OS X 10.8"
- title: "calibredb: Add an option to specify the cover to use when adding books with calibredb add."
tickets: [1083932]
- title: "EPUB Input: Add support for EPUB files with broken central directory records *and* data descriptors"
- title: "Comic metadata: Support reading metadata from cbr files. Also read the comments and published date info from the metadata."
tickets: [1082340]
- title: "Speed up processing of RAR and CBR files by avoiding an extra file copy"
- title: "Add driver for Nexus 10 on linux."
tickets: [1082563]
bug fixes:
- title: "KF8 Input: Handle invalid KF8 files with links pointing to non-existent locations and incorrect values in the div table."
tickets: [1082669]
- title: "Viewer: Fix handling of empty self closing tags."
tickets: [1083278]
- title: "Fix use of {formats} in save to disk templates. Fix some formatter functions causing plugboards to not validate."
- title: "Fix calibre quitting when minimized to system tray and an update available message is shown and then closed."
tickets: [1082630]
- title: "Viewer: Fix vertical margin at the top of the first page of a chapter incorrect in a certain rare circumstance (first child of body being an empty paragraph)."
tickets: [1082640]
- title: "E-book viewer: Fix bug that caused the default language for hyphenation to be ignored for books that do not specify a language"
improved recipes:
- Pro Physik
- Aachener Nachrichten
- Science News
- version: 0.9.7 - version: 0.9.7
date: 2012-11-23 date: 2012-11-23

View File

@ -2,41 +2,70 @@ from calibre.web.feeds.recipes import BasicNewsRecipe
class AdvancedUserRecipe(BasicNewsRecipe): class AdvancedUserRecipe(BasicNewsRecipe):
title = u'Aachener Nachrichten' title = u'Aachener Nachrichten'
__author__ = 'schuster' __author__ = 'schuster' #AGE update 2012-11-28
oldest_article = 1 oldest_article = 1
max_articles_per_feed = 100 max_articles_per_feed = 100
use_embedded_content = False no_stylesheets = True
language = 'de'
remove_javascript = True remove_javascript = True
cover_url = 'http://www.an-online.de/einwaage/images/an_logo.png' remove_empty_feeds = True
masthead_url = 'http://www.an-online.de/einwaage/images/an_logo.png' language = 'de'
extra_css = '''
.fliesstext_detail:{margin-bottom:10%;}
.headline_1:{margin-bottom:25%;}
b{font-family:Arial,Helvetica,sans-serif; font-weight:200;font-size:large;}
a{font-family:Arial,Helvetica,sans-serif; font-weight:400;font-size:large;}
ll{font-family:Arial,Helvetica,sans-serif; font-weight:100;font-size:large;}
h4{font-family:Arial,Helvetica,sans-serif; font-weight:normal;font-size:small;}
img {min-width:300px; max-width:600px; min-height:300px; max-height:800px}
dd{font-family:Arial,Helvetica,sans-serif;font-size:large;}
body{font-family:Helvetica,Arial,sans-serif;font-size:small;}
'''
# cover_url = 'http://www.aachener-nachrichten.de/img/logos/an_website_retina.png'
masthead_url = 'http://www.aachener-nachrichten.de/img/logos/an_website_retina.png'
keep_only_tags = [ keep_only_tags = [
dict(name='span', attrs={'class':['fliesstext_detail', 'headline_1', 'autor_detail']}), dict(name='article', attrs={'class':['single']})
dict(id=['header-logo'])
] ]
feeds = [(u'Euregio', u'http://www.an-online.de/an/rss/Euregio.xml'), remove_tags = [
(u'Aachen', u'http://www.an-online.de/an/rss/Aachen.xml'), dict(name='div', attrs={'class':["clearfix navi-wrapper"]}),
(u'Nordkreis', u'http://www.an-online.de/an/rss/Nordkreis.xml'), dict(name='div', attrs={'id':["article_actions"]}),
(u'Düren', u'http://www.an-online.de/an/rss/Dueren.xml'), dict(name='style', attrs={'type':["text/css"]}),
(u'Eiffel', u'http://www.an-online.de/an/rss/Eifel.xml'), dict(name='aside'),
(u'Eschweiler', u'http://www.an-online.de/an/rss/Eschweiler.xml'), dict(name='a', attrs={'class':["btn btn-action"]})
(u'Geilenkirchen', u'http://www.an-online.de/an/rss/Geilenkirchen.xml'), ]
(u'Heinsberg', u'http://www.an-online.de/an/rss/Heinsberg.xml'),
(u'Jülich', u'http://www.an-online.de/an/rss/Juelich.xml'), feeds = [
(u'Stolberg', u'http://www.an-online.de/an/rss/Stolberg.xml'), (u'Lokales - Euregio', u'http://www.aachener-nachrichten.de/cmlink/euregio-rss-1.357285'),
(u'Ratgebenr', u'http://www.an-online.de/an/rss/Ratgeber.xml')] (u'Lokales - Aachen', u'http://www.aachener-nachrichten.de/cmlink/aachen-rss-1.357286'),
(u'Lokales - Nordkreis', u'http://www.aachener-nachrichten.de/cmlink/nordkreis-rss-1.358150'),
(u'Lokales - Düren', u'http://www.aachener-nachrichten.de/cmlink/dueren-rss-1.358626'),
(u'Lokales - Eiffel', u'http://www.aachener-nachrichten.de/cmlink/eifel-rss-1.358978'),
(u'Lokales - Eschweiler', u'http://www.aachener-nachrichten.de/cmlink/eschweiler-rss-1.359332'),
(u'Lokales - Geilenkirchen', u'http://www.aachener-nachrichten.de/cmlink/geilenkirchen-rss-1.359643'),
(u'Lokales - Heinsberg', u'http://www.aachener-nachrichten.de/cmlink/heinsberg-rss-1.359724'),
(u'Lokales - Jülich', u'http://www.aachener-nachrichten.de/cmlink/juelich-rss-1.359725'),
(u'Lokales - Stolberg', u'http://www.aachener-nachrichten.de/cmlink/stolberg-rss-1.359726'),
(u'News - Politik', u'http://www.aachener-nachrichten.de/cmlink/politik-rss-1.359727'),
(u'News - Aus aller Welt', u'http://www.aachener-nachrichten.de/cmlink/ausallerwelt-rss-1.453282'),
(u'News - Wirtschaft', u'http://www.aachener-nachrichten.de/cmlink/wirtschaft-rss-1.359872'),
(u'News - Kultur', u'http://www.aachener-nachrichten.de/cmlink/kultur-rss-1.365018'),
(u'News - Kino', u'http://www.aachener-nachrichten.de/cmlink/kino-rss-1.365019'),
(u'News - Digital', u'http://www.aachener-nachrichten.de/cmlink/digital-rss-1.365020'),
(u'News - Wissenschaft', u'http://www.aachener-nachrichten.de/cmlink/wissenschaft-rss-1.365021'),
(u'News - Hochschule', u'http://www.aachener-nachrichten.de/cmlink/hochschule-rss-1.365022'),
(u'News - Auto', u'http://www.aachener-nachrichten.de/cmlink/auto-rss-1.365023'),
(u'News - Kurioses', u'http://www.aachener-nachrichten.de/cmlink/kurioses-rss-1.365067'),
(u'News - Musik', u'http://www.aachener-nachrichten.de/cmlink/musik-rss-1.365305'),
(u'News - Tagesthema', u'http://www.aachener-nachrichten.de/cmlink/tagesthema-rss-1.365519'),
(u'News - Newsticker', u'http://www.aachener-nachrichten.de/cmlink/newsticker-rss-1.451948'),
(u'Sport - Aktuell', u'http://www.aachener-nachrichten.de/cmlink/aktuell-rss-1.366716'),
(u'Sport - Fußball', u'http://www.aachener-nachrichten.de/cmlink/fussball-rss-1.367060'),
(u'Sport - Bundesliga', u'http://www.aachener-nachrichten.de/cmlink/bundesliga-rss-1.453367'),
(u'Sport - Alemannia Aachen', u'http://www.aachener-nachrichten.de/cmlink/alemanniaaachen-rss-1.366057'),
(u'Sport - Volleyball', u'http://www.aachener-nachrichten.de/cmlink/volleyball-rss-1.453370'),
(u'Sport - Chio', u'http://www.aachener-nachrichten.de/cmlink/chio-rss-1.453371'),
(u'Dossier - Kinderuni', u'http://www.aachener-nachrichten.de/cmlink/kinderuni-rss-1.453375'),
(u'Dossier - Karlspreis', u'http://www.aachener-nachrichten.de/cmlink/karlspreis-rss-1.453376'),
(u'Dossier - Ritterorden', u'http://www.aachener-nachrichten.de/cmlink/ritterorden-rss-1.453377'),
(u'Dossier - ZAB-Aachen', u'http://www.aachener-nachrichten.de/cmlink/zabaachen-rss-1.453380'),
(u'Dossier - Karneval', u'http://www.aachener-nachrichten.de/cmlink/karneval-rss-1.453384'),
(u'Ratgeber - Geld', u'http://www.aachener-nachrichten.de/cmlink/geld-rss-1.453385'),
(u'Ratgeber - Recht', u'http://www.aachener-nachrichten.de/cmlink/recht-rss-1.453386'),
(u'Ratgeber - Gesundheit', u'http://www.aachener-nachrichten.de/cmlink/gesundheit-rss-1.453387'),
(u'Ratgeber - Familie', u'http://www.aachener-nachrichten.de/cmlink/familie-rss-1.453388'),
(u'Ratgeber - Livestyle', u'http://www.aachener-nachrichten.de/cmlink/lifestyle-rss-1.453389'),
(u'Ratgeber - Reisen', u'http://www.aachener-nachrichten.de/cmlink/reisen-rss-1.453390'),
(u'Ratgeber - Bauen und Wohnen', u'http://www.aachener-nachrichten.de/cmlink/bauen-rss-1.453398'),
(u'Ratgeber - Bildung und Beruf', u'http://www.aachener-nachrichten.de/cmlink/bildung-rss-1.453400'),
]

View File

@ -21,10 +21,11 @@ class Engadget(BasicNewsRecipe):
use_embedded_content = False use_embedded_content = False
remove_javascript = True remove_javascript = True
remove_empty_feeds = True remove_empty_feeds = True
auto_cleanup = True
keep_only_tags = [dict(name='div', attrs={'class':['post_content permalink ','post_content permalink alt-post-full']})] #keep_only_tags = [dict(name='div', attrs={'class':['post_content permalink ','post_content permalink alt-post-full']})]
remove_tags = [dict(name='div', attrs={'class':['filed_under','post_footer']})] #remove_tags = [dict(name='div', attrs={'class':['filed_under','post_footer']})]
remove_tags_after = [dict(name='div', attrs={'class':['post_footer']})] #remove_tags_after = [dict(name='div', attrs={'class':['post_footer']})]
feeds = [(u'Posts', u'http://www.engadget.com/rss.xml')] feeds = [(u'Posts', u'http://www.engadget.com/rss.xml')]

View File

@ -2,21 +2,46 @@ from calibre.web.feeds.recipes import BasicNewsRecipe
class AdvancedUserRecipe1303841067(BasicNewsRecipe): class AdvancedUserRecipe1303841067(BasicNewsRecipe):
title = u'Pro Physik' title = u'Pro Physik'
__author__ = 'schuster' __author__ = 'schuster, Armin Geller' # AGE Upd. 2012-11-28
oldest_article = 4 oldest_article = 4
max_articles_per_feed = 100 max_articles_per_feed = 100
no_stylesheets = True no_stylesheets = True
use_embedded_content = False
language = 'de'
remove_javascript = True remove_javascript = True
cover_url = 'http://www.pro-physik.de/Phy/images/site/prophysik_logo1.jpg' remove_empty_feeds = True
language = 'de'
cover_url = 'http://www.pro-physik.de/prophy/images/bg_logo_prophy.gif'
def print_version(self, url): keep_only_tags = [
return url.replace('leadArticle.do', 'print.do') dict(name='div', attrs={'class':['leftColRight']})
]
remove_tags = [
dict(name='div', attrs={'class':["withMargin socialWrapper addthis_toolbox addthis_default_style"]}),
# AGe: If you don't like to see further informations for the article
# and additional links please remove # in belows next line
# dict(name='div', attrs={'class':["insideBox"]}),
]
feeds = [(u'Hightech', u'http://www.pro-physik.de/Phy/hightechfeed.xml'), feeds = [
(u'Forschung', u'http://www.pro-physik.de/Phy/forschungfeed.xml'), (u'Nachrichten', u'http://www.pro-physik.de/graphicalrss/prophy/newsFeed.xml'),
(u'Magazin', u'http://www.pro-physik.de/Phy/magazinfeed.xml')] (u'Forschung', u'http://www.pro-physik.de/graphicalrss/prophy/newsforschungFeed.xml'),
(u'Techologie', u'http://www.pro-physik.de/graphicalrss/prophy/newstechnologieFeed.xml'),
(u'Industrie', u'http://www.pro-physik.de/graphicalrss/prophy/newsindustrieFeed.xml'),
(u'Hochschule', u'http://www.pro-physik.de/graphicalrss/prophy/newshochschuleFeed.xml'),
(u'Panorama', u'http://www.pro-physik.de/graphicalrss/prophy/newspanoramaFeed.xml'),
(u'DPG', u'http://www.pro-physik.de/graphicalrss/prophy/newsdpgFeed.xml'),
(u'Physik Jornal', u'http://www.pro-physik.de/graphicalrss/prophy/pjnewsFeed.xml'),
(u'Veranstaltungen', u'http://www.pro-physik.de/rss/prophy/eventsFeed.xml'),
# AGe if you like to see job offers please remove # on next lines below
# (u'Stellenmarkt', u'http://www.pro-physik.de/rss/prophy/jobsFeed.xml'),
# (u'Industrie Stellenanzeigen', u'http://www.pro-physik.de/rss/prophy/jobsindustrieFeed.xml'),
# (u'PhD Stellenanzeigen', u'http://www.pro-physik.de/rss/prophy/jobsphdFeed.xml'),
# (u'PostDoc Stellenanzeigen', u'http://www.pro-physik.de/rss/prophy/jobspostdocFeed.xml'),
# (u'Öffentlicher Dienst Stellenanzeigen', u'http://www.pro-physik.de/rss/prophy/jobsdienstFeed.xml'),
# (u'Hochschule Stellenanzeigen', u'http://www.pro-physik.de/rss/prophy/jobshochschuleFeed.xml'),
]

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 24 KiB

View File

@ -215,6 +215,8 @@ class Command(object):
sys.stdout.flush() sys.stdout.flush()
def installer_name(ext, is64bit=False): def installer_name(ext, is64bit=False):
if is64bit and ext == 'msi':
return 'dist/%s-64bit-%s.msi'%(__appname__, __version__)
if ext in ('exe', 'msi'): if ext in ('exe', 'msi'):
return 'dist/%s-%s.%s'%(__appname__, __version__, ext) return 'dist/%s-%s.%s'%(__appname__, __version__, ext)
if ext == 'dmg': if ext == 'dmg':

View File

@ -11,12 +11,11 @@ from distutils.spawn import find_executable
from PyQt4 import pyqtconfig from PyQt4 import pyqtconfig
from setup import isosx, iswindows, islinux from setup import isosx, iswindows, islinux, is64bit
OSX_SDK = '/Developer/SDKs/MacOSX10.5.sdk' OSX_SDK = '/Developer/SDKs/MacOSX10.5.sdk'
os.environ['MACOSX_DEPLOYMENT_TARGET'] = '10.5' os.environ['MACOSX_DEPLOYMENT_TARGET'] = '10.5'
is64bit = sys.maxsize > 2**32
NMAKE = RC = msvc = MT = win_inc = win_lib = win_ddk = win_ddk_lib_dirs = None NMAKE = RC = msvc = MT = win_inc = win_lib = win_ddk = win_ddk_lib_dirs = None
if iswindows: if iswindows:

View File

@ -20,7 +20,7 @@ __all__ = [
'upload_user_manual', 'upload_demo', 'reupload', 'upload_user_manual', 'upload_demo', 'reupload',
'linux32', 'linux64', 'linux', 'linux_freeze', 'linux32', 'linux64', 'linux', 'linux_freeze',
'osx32_freeze', 'osx', 'rsync', 'push', 'osx32_freeze', 'osx', 'rsync', 'push',
'win32_freeze', 'win32', 'win', 'win32_freeze', 'win32', 'win64', 'win',
'stage1', 'stage2', 'stage3', 'stage4', 'stage5', 'publish' 'stage1', 'stage2', 'stage3', 'stage4', 'stage5', 'publish'
] ]
@ -91,9 +91,10 @@ osx = OSX()
from setup.installer.osx.app.main import OSX32_Freeze from setup.installer.osx.app.main import OSX32_Freeze
osx32_freeze = OSX32_Freeze() osx32_freeze = OSX32_Freeze()
from setup.installer.windows import Win, Win32 from setup.installer.windows import Win, Win32, Win64
win = Win() win = Win()
win32 = Win32() win32 = Win32()
win64 = Win64()
from setup.installer.windows.freeze import Win32Freeze from setup.installer.windows.freeze import Win32Freeze
win32_freeze = Win32Freeze() win32_freeze = Win32Freeze()

View File

@ -597,6 +597,8 @@ class Py2App(object):
else: else:
os.symlink(join('../..', x), os.symlink(join('../..', x),
join(cc_dir, x)) join(cc_dir, x))
shutil.copytree(join(SW, 'build/notifier.app'), join(
self.contents_dir, 'calibre-notifier.app'))
@flush @flush
def copy_site(self): def copy_site(self):

View File

@ -1,12 +1,12 @@
/* /*
* Memory DLL loading code * Memory DLL loading code
* Version 0.0.2 with additions from Thomas Heller * Version 0.0.3
* *
* Copyright (c) 2004-2005 by Joachim Bauch / mail@joachim-bauch.de * Copyright (c) 2004-2012 by Joachim Bauch / mail@joachim-bauch.de
* http://www.joachim-bauch.de * http://www.joachim-bauch.de
* *
* The contents of this file are subject to the Mozilla Public License Version * The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with * 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at * the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/ * http://www.mozilla.org/MPL/
* *
@ -19,156 +19,48 @@
* *
* The Initial Developer of the Original Code is Joachim Bauch. * The Initial Developer of the Original Code is Joachim Bauch.
* *
* Portions created by Joachim Bauch are Copyright (C) 2004-2005 * Portions created by Joachim Bauch are Copyright (C) 2004-2012
* Joachim Bauch. All Rights Reserved. * Joachim Bauch. All Rights Reserved.
* *
* Portions Copyright (C) 2005 Thomas Heller.
*
*/ */
#ifndef __GNUC__
// disable warnings about pointer <-> DWORD conversions // disable warnings about pointer <-> DWORD conversions
#pragma warning( disable : 4311 4312 ) #pragma warning( disable : 4311 4312 )
#endif
#ifdef _WIN64
#define POINTER_TYPE ULONGLONG
#else
#define POINTER_TYPE DWORD
#endif
#include <Windows.h> #include <Windows.h>
#include <winnt.h> #include <winnt.h>
#if DEBUG_OUTPUT #ifdef DEBUG_OUTPUT
#include <stdio.h> #include <stdio.h>
#endif #endif
#ifndef IMAGE_SIZEOF_BASE_RELOCATION #ifndef IMAGE_SIZEOF_BASE_RELOCATION
// Vista SDKs no longer define IMAGE_SIZEOF_BASE_RELOCATION!? // Vista SDKs no longer define IMAGE_SIZEOF_BASE_RELOCATION!?
# define IMAGE_SIZEOF_BASE_RELOCATION (sizeof(IMAGE_BASE_RELOCATION)) #define IMAGE_SIZEOF_BASE_RELOCATION (sizeof(IMAGE_BASE_RELOCATION))
#endif #endif
#include "MemoryModule.h" #include "MemoryModule.h"
/* typedef struct {
XXX We need to protect at least walking the 'loaded' linked list with a lock!
*/
/******************************************************************/
FINDPROC findproc;
void *findproc_data = NULL;
struct NAME_TABLE {
char *name;
DWORD ordinal;
};
typedef struct tagMEMORYMODULE {
PIMAGE_NT_HEADERS headers; PIMAGE_NT_HEADERS headers;
unsigned char *codeBase; unsigned char *codeBase;
HMODULE *modules; HMODULE *modules;
int numModules; int numModules;
int initialized; int initialized;
struct NAME_TABLE *name_table;
char *name;
int refcount;
struct tagMEMORYMODULE *next, *prev;
} MEMORYMODULE, *PMEMORYMODULE; } MEMORYMODULE, *PMEMORYMODULE;
typedef BOOL (WINAPI *DllEntryProc)(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpReserved); typedef BOOL (WINAPI *DllEntryProc)(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpReserved);
#define GET_HEADER_DICTIONARY(module, idx) &(module)->headers->OptionalHeader.DataDirectory[idx] #define GET_HEADER_DICTIONARY(module, idx) &(module)->headers->OptionalHeader.DataDirectory[idx]
MEMORYMODULE *loaded; /* linked list of loaded memory modules */ #ifdef DEBUG_OUTPUT
/* private - insert a loaded library in a linked list */
static void _Register(char *name, MEMORYMODULE *module)
{
module->next = loaded;
if (loaded)
loaded->prev = module;
module->prev = NULL;
loaded = module;
}
/* private - remove a loaded library from a linked list */
static void _Unregister(MEMORYMODULE *module)
{
free(module->name);
if (module->prev)
module->prev->next = module->next;
if (module->next)
module->next->prev = module->prev;
if (module == loaded)
loaded = module->next;
}
/* public - replacement for GetModuleHandle() */
HMODULE MyGetModuleHandle(LPCTSTR lpModuleName)
{
MEMORYMODULE *p = loaded;
while (p) {
// If already loaded, only increment the reference count
if (0 == stricmp(lpModuleName, p->name)) {
return (HMODULE)p;
}
p = p->next;
}
return GetModuleHandle(lpModuleName);
}
/* public - replacement for LoadLibrary, but searches FIRST for memory
libraries, then for normal libraries. So, it will load libraries AS memory
module if they are found by findproc().
*/
HMODULE MyLoadLibrary(char *lpFileName)
{
MEMORYMODULE *p = loaded;
HMODULE hMod;
while (p) {
// If already loaded, only increment the reference count
if (0 == stricmp(lpFileName, p->name)) {
p->refcount++;
return (HMODULE)p;
}
p = p->next;
}
if (findproc && findproc_data) {
void *pdata = findproc(lpFileName, findproc_data);
if (pdata) {
hMod = MemoryLoadLibrary(lpFileName, pdata);
free(p);
return hMod;
}
}
hMod = LoadLibrary(lpFileName);
return hMod;
}
/* public - replacement for GetProcAddress() */
FARPROC MyGetProcAddress(HMODULE hModule, LPCSTR lpProcName)
{
MEMORYMODULE *p = loaded;
while (p) {
if ((HMODULE)p == hModule)
return MemoryGetProcAddress(p, lpProcName);
p = p->next;
}
return GetProcAddress(hModule, lpProcName);
}
/* public - replacement for FreeLibrary() */
BOOL MyFreeLibrary(HMODULE hModule)
{
MEMORYMODULE *p = loaded;
while (p) {
if ((HMODULE)p == hModule) {
if (--p->refcount == 0) {
_Unregister(p);
MemoryFreeLibrary(p);
}
return TRUE;
}
p = p->next;
}
return FreeLibrary(hModule);
}
#if DEBUG_OUTPUT
static void static void
OutputLastError(const char *msg) OutputLastError(const char *msg)
{ {
@ -184,20 +76,6 @@ OutputLastError(const char *msg)
} }
#endif #endif
/*
static int dprintf(char *fmt, ...)
{
char Buffer[4096];
va_list marker;
int result;
va_start(marker, fmt);
result = vsprintf(Buffer, fmt, marker);
OutputDebugString(Buffer);
return result;
}
*/
static void static void
CopySections(const unsigned char *data, PIMAGE_NT_HEADERS old_headers, PMEMORYMODULE module) CopySections(const unsigned char *data, PIMAGE_NT_HEADERS old_headers, PMEMORYMODULE module)
{ {
@ -205,15 +83,12 @@ CopySections(const unsigned char *data, PIMAGE_NT_HEADERS old_headers, PMEMORYMO
unsigned char *codeBase = module->codeBase; unsigned char *codeBase = module->codeBase;
unsigned char *dest; unsigned char *dest;
PIMAGE_SECTION_HEADER section = IMAGE_FIRST_SECTION(module->headers); PIMAGE_SECTION_HEADER section = IMAGE_FIRST_SECTION(module->headers);
for (i=0; i<module->headers->FileHeader.NumberOfSections; i++, section++) for (i=0; i<module->headers->FileHeader.NumberOfSections; i++, section++) {
{ if (section->SizeOfRawData == 0) {
if (section->SizeOfRawData == 0)
{
// section doesn't contain data in the dll itself, but may define // section doesn't contain data in the dll itself, but may define
// uninitialized data // uninitialized data
size = old_headers->OptionalHeader.SectionAlignment; size = old_headers->OptionalHeader.SectionAlignment;
if (size > 0) if (size > 0) {
{
dest = (unsigned char *)VirtualAlloc(codeBase + section->VirtualAddress, dest = (unsigned char *)VirtualAlloc(codeBase + section->VirtualAddress,
size, size,
MEM_COMMIT, MEM_COMMIT,
@ -255,66 +130,72 @@ FinalizeSections(PMEMORYMODULE module)
{ {
int i; int i;
PIMAGE_SECTION_HEADER section = IMAGE_FIRST_SECTION(module->headers); PIMAGE_SECTION_HEADER section = IMAGE_FIRST_SECTION(module->headers);
#ifdef _WIN64
POINTER_TYPE imageOffset = (module->headers->OptionalHeader.ImageBase & 0xffffffff00000000);
#else
#define imageOffset 0
#endif
// loop through all sections and change access flags // loop through all sections and change access flags
for (i=0; i<module->headers->FileHeader.NumberOfSections; i++, section++) for (i=0; i<module->headers->FileHeader.NumberOfSections; i++, section++) {
{
DWORD protect, oldProtect, size; DWORD protect, oldProtect, size;
int executable = (section->Characteristics & IMAGE_SCN_MEM_EXECUTE) != 0; int executable = (section->Characteristics & IMAGE_SCN_MEM_EXECUTE) != 0;
int readable = (section->Characteristics & IMAGE_SCN_MEM_READ) != 0; int readable = (section->Characteristics & IMAGE_SCN_MEM_READ) != 0;
int writeable = (section->Characteristics & IMAGE_SCN_MEM_WRITE) != 0; int writeable = (section->Characteristics & IMAGE_SCN_MEM_WRITE) != 0;
if (section->Characteristics & IMAGE_SCN_MEM_DISCARDABLE) if (section->Characteristics & IMAGE_SCN_MEM_DISCARDABLE) {
{
// section is not needed any more and can safely be freed // section is not needed any more and can safely be freed
VirtualFree((LPVOID)section->Misc.PhysicalAddress, section->SizeOfRawData, MEM_DECOMMIT); VirtualFree((LPVOID)((POINTER_TYPE)section->Misc.PhysicalAddress | imageOffset), section->SizeOfRawData, MEM_DECOMMIT);
continue; continue;
} }
// determine protection flags based on characteristics // determine protection flags based on characteristics
protect = ProtectionFlags[executable][readable][writeable]; protect = ProtectionFlags[executable][readable][writeable];
if (section->Characteristics & IMAGE_SCN_MEM_NOT_CACHED) if (section->Characteristics & IMAGE_SCN_MEM_NOT_CACHED) {
protect |= PAGE_NOCACHE; protect |= PAGE_NOCACHE;
}
// determine size of region // determine size of region
size = section->SizeOfRawData; size = section->SizeOfRawData;
if (size == 0) if (size == 0) {
{ if (section->Characteristics & IMAGE_SCN_CNT_INITIALIZED_DATA) {
if (section->Characteristics & IMAGE_SCN_CNT_INITIALIZED_DATA)
size = module->headers->OptionalHeader.SizeOfInitializedData; size = module->headers->OptionalHeader.SizeOfInitializedData;
else if (section->Characteristics & IMAGE_SCN_CNT_UNINITIALIZED_DATA) } else if (section->Characteristics & IMAGE_SCN_CNT_UNINITIALIZED_DATA) {
size = module->headers->OptionalHeader.SizeOfUninitializedData; size = module->headers->OptionalHeader.SizeOfUninitializedData;
} }
}
if (size > 0) if (size > 0) {
{
// change memory access flags // change memory access flags
if (VirtualProtect((LPVOID)section->Misc.PhysicalAddress, section->SizeOfRawData, protect, &oldProtect) == 0) if (VirtualProtect((LPVOID)((POINTER_TYPE)section->Misc.PhysicalAddress | imageOffset), size, protect, &oldProtect) == 0)
#if DEBUG_OUTPUT #ifdef DEBUG_OUTPUT
OutputLastError("Error protecting memory page") OutputLastError("Error protecting memory page")
#endif #endif
; ;
} }
} }
#ifndef _WIN64
#undef imageOffset
#endif
} }
static void static void
PerformBaseRelocation(PMEMORYMODULE module, DWORD delta) PerformBaseRelocation(PMEMORYMODULE module, SIZE_T delta)
{ {
DWORD i; DWORD i;
unsigned char *codeBase = module->codeBase; unsigned char *codeBase = module->codeBase;
PIMAGE_DATA_DIRECTORY directory = GET_HEADER_DICTIONARY(module, IMAGE_DIRECTORY_ENTRY_BASERELOC); PIMAGE_DATA_DIRECTORY directory = GET_HEADER_DICTIONARY(module, IMAGE_DIRECTORY_ENTRY_BASERELOC);
if (directory->Size > 0) if (directory->Size > 0) {
{ PIMAGE_BASE_RELOCATION relocation = (PIMAGE_BASE_RELOCATION) (codeBase + directory->VirtualAddress);
PIMAGE_BASE_RELOCATION relocation = (PIMAGE_BASE_RELOCATION)(codeBase + directory->VirtualAddress); for (; relocation->VirtualAddress > 0; ) {
for (; relocation->VirtualAddress > 0; ) unsigned char *dest = codeBase + relocation->VirtualAddress;
{
unsigned char *dest = (unsigned char *)(codeBase + relocation->VirtualAddress);
unsigned short *relInfo = (unsigned short *)((unsigned char *)relocation + IMAGE_SIZEOF_BASE_RELOCATION); unsigned short *relInfo = (unsigned short *)((unsigned char *)relocation + IMAGE_SIZEOF_BASE_RELOCATION);
for (i=0; i<((relocation->SizeOfBlock-IMAGE_SIZEOF_BASE_RELOCATION) / 2); i++, relInfo++) for (i=0; i<((relocation->SizeOfBlock-IMAGE_SIZEOF_BASE_RELOCATION) / 2); i++, relInfo++) {
{
DWORD *patchAddrHL; DWORD *patchAddrHL;
#ifdef _WIN64
ULONGLONG *patchAddr64;
#endif
int type, offset; int type, offset;
// the upper 4 bits define the type of relocation // the upper 4 bits define the type of relocation
@ -330,10 +211,17 @@ PerformBaseRelocation(PMEMORYMODULE module, DWORD delta)
case IMAGE_REL_BASED_HIGHLOW: case IMAGE_REL_BASED_HIGHLOW:
// change complete 32 bit address // change complete 32 bit address
patchAddrHL = (DWORD *)(dest + offset); patchAddrHL = (DWORD *) (dest + offset);
*patchAddrHL += delta; *patchAddrHL += (DWORD)delta;
break; break;
#ifdef _WIN64
case IMAGE_REL_BASED_DIR64:
patchAddr64 = (ULONGLONG *) (dest + offset);
*patchAddr64 += delta;
break;
#endif
default: default:
//printf("Unknown relocation: %d\n", type); //printf("Unknown relocation: %d\n", type);
break; break;
@ -341,7 +229,7 @@ PerformBaseRelocation(PMEMORYMODULE module, DWORD delta)
} }
// advance to next relocation block // advance to next relocation block
relocation = (PIMAGE_BASE_RELOCATION)(((DWORD)relocation) + relocation->SizeOfBlock); relocation = (PIMAGE_BASE_RELOCATION) (((char *) relocation) + relocation->SizeOfBlock);
} }
} }
} }
@ -353,18 +241,13 @@ BuildImportTable(PMEMORYMODULE module)
unsigned char *codeBase = module->codeBase; unsigned char *codeBase = module->codeBase;
PIMAGE_DATA_DIRECTORY directory = GET_HEADER_DICTIONARY(module, IMAGE_DIRECTORY_ENTRY_IMPORT); PIMAGE_DATA_DIRECTORY directory = GET_HEADER_DICTIONARY(module, IMAGE_DIRECTORY_ENTRY_IMPORT);
if (directory->Size > 0) if (directory->Size > 0) {
{ PIMAGE_IMPORT_DESCRIPTOR importDesc = (PIMAGE_IMPORT_DESCRIPTOR) (codeBase + directory->VirtualAddress);
PIMAGE_IMPORT_DESCRIPTOR importDesc = (PIMAGE_IMPORT_DESCRIPTOR)(codeBase + directory->VirtualAddress); for (; !IsBadReadPtr(importDesc, sizeof(IMAGE_IMPORT_DESCRIPTOR)) && importDesc->Name; importDesc++) {
for (; !IsBadReadPtr(importDesc, sizeof(IMAGE_IMPORT_DESCRIPTOR)) && importDesc->Name; importDesc++) POINTER_TYPE *thunkRef;
{ FARPROC *funcRef;
DWORD *thunkRef, *funcRef; HMODULE handle = LoadLibrary((LPCSTR) (codeBase + importDesc->Name));
HMODULE handle; if (handle == NULL) {
handle = MyLoadLibrary(codeBase + importDesc->Name);
if (handle == INVALID_HANDLE_VALUE)
{
//LastError should already be set
#if DEBUG_OUTPUT #if DEBUG_OUTPUT
OutputLastError("Can't load library"); OutputLastError("Can't load library");
#endif #endif
@ -373,81 +256,54 @@ BuildImportTable(PMEMORYMODULE module)
} }
module->modules = (HMODULE *)realloc(module->modules, (module->numModules+1)*(sizeof(HMODULE))); module->modules = (HMODULE *)realloc(module->modules, (module->numModules+1)*(sizeof(HMODULE)));
if (module->modules == NULL) if (module->modules == NULL) {
{
SetLastError(ERROR_NOT_ENOUGH_MEMORY);
result = 0; result = 0;
break; break;
} }
module->modules[module->numModules++] = handle; module->modules[module->numModules++] = handle;
if (importDesc->OriginalFirstThunk) if (importDesc->OriginalFirstThunk) {
{ thunkRef = (POINTER_TYPE *) (codeBase + importDesc->OriginalFirstThunk);
thunkRef = (DWORD *)(codeBase + importDesc->OriginalFirstThunk); funcRef = (FARPROC *) (codeBase + importDesc->FirstThunk);
funcRef = (DWORD *)(codeBase + importDesc->FirstThunk);
} else { } else {
// no hint table // no hint table
thunkRef = (DWORD *)(codeBase + importDesc->FirstThunk); thunkRef = (POINTER_TYPE *) (codeBase + importDesc->FirstThunk);
funcRef = (DWORD *)(codeBase + importDesc->FirstThunk); funcRef = (FARPROC *) (codeBase + importDesc->FirstThunk);
} }
for (; *thunkRef; thunkRef++, funcRef++) for (; *thunkRef; thunkRef++, funcRef++) {
{ if (IMAGE_SNAP_BY_ORDINAL(*thunkRef)) {
if IMAGE_SNAP_BY_ORDINAL(*thunkRef) { *funcRef = (FARPROC)GetProcAddress(handle, (LPCSTR)IMAGE_ORDINAL(*thunkRef));
*funcRef = (DWORD)MyGetProcAddress(handle, (LPCSTR)IMAGE_ORDINAL(*thunkRef));
} else { } else {
PIMAGE_IMPORT_BY_NAME thunkData = (PIMAGE_IMPORT_BY_NAME)(codeBase + *thunkRef); PIMAGE_IMPORT_BY_NAME thunkData = (PIMAGE_IMPORT_BY_NAME) (codeBase + (*thunkRef));
*funcRef = (DWORD)MyGetProcAddress(handle, (LPCSTR)&thunkData->Name); *funcRef = (FARPROC)GetProcAddress(handle, (LPCSTR)&thunkData->Name);
} }
if (*funcRef == 0) if (*funcRef == 0) {
{
SetLastError(ERROR_PROC_NOT_FOUND);
result = 0; result = 0;
break; break;
} }
} }
if (!result) if (!result) {
break; break;
} }
} }
}
return result; return result;
} }
/* HMEMORYMODULE MemoryLoadLibrary(const void *data)
MemoryLoadLibrary - load a library AS MEMORY MODULE, or return
existing MEMORY MODULE with increased refcount.
This allows to load a library AGAIN as memory module which is
already loaded as HMODULE!
*/
HMEMORYMODULE MemoryLoadLibrary(char *name, const void *data)
{ {
PMEMORYMODULE result; PMEMORYMODULE result;
PIMAGE_DOS_HEADER dos_header; PIMAGE_DOS_HEADER dos_header;
PIMAGE_NT_HEADERS old_header; PIMAGE_NT_HEADERS old_header;
unsigned char *code, *headers; unsigned char *code, *headers;
DWORD locationDelta; SIZE_T locationDelta;
DllEntryProc DllEntry; DllEntryProc DllEntry;
BOOL successfull; BOOL successfull;
MEMORYMODULE *p = loaded;
while (p) {
// If already loaded, only increment the reference count
if (0 == stricmp(name, p->name)) {
p->refcount++;
return (HMODULE)p;
}
p = p->next;
}
/* Do NOT check for GetModuleHandle here! */
dos_header = (PIMAGE_DOS_HEADER)data; dos_header = (PIMAGE_DOS_HEADER)data;
if (dos_header->e_magic != IMAGE_DOS_SIGNATURE) if (dos_header->e_magic != IMAGE_DOS_SIGNATURE) {
{
SetLastError(ERROR_BAD_FORMAT);
#if DEBUG_OUTPUT #if DEBUG_OUTPUT
OutputDebugString("Not a valid executable file.\n"); OutputDebugString("Not a valid executable file.\n");
#endif #endif
@ -455,9 +311,7 @@ HMEMORYMODULE MemoryLoadLibrary(char *name, const void *data)
} }
old_header = (PIMAGE_NT_HEADERS)&((const unsigned char *)(data))[dos_header->e_lfanew]; old_header = (PIMAGE_NT_HEADERS)&((const unsigned char *)(data))[dos_header->e_lfanew];
if (old_header->Signature != IMAGE_NT_SIGNATURE) if (old_header->Signature != IMAGE_NT_SIGNATURE) {
{
SetLastError(ERROR_BAD_FORMAT);
#if DEBUG_OUTPUT #if DEBUG_OUTPUT
OutputDebugString("No PE header found.\n"); OutputDebugString("No PE header found.\n");
#endif #endif
@ -470,31 +324,25 @@ HMEMORYMODULE MemoryLoadLibrary(char *name, const void *data)
MEM_RESERVE, MEM_RESERVE,
PAGE_READWRITE); PAGE_READWRITE);
if (code == NULL) if (code == NULL) {
// try to allocate memory at arbitrary position // try to allocate memory at arbitrary position
code = (unsigned char *)VirtualAlloc(NULL, code = (unsigned char *)VirtualAlloc(NULL,
old_header->OptionalHeader.SizeOfImage, old_header->OptionalHeader.SizeOfImage,
MEM_RESERVE, MEM_RESERVE,
PAGE_READWRITE); PAGE_READWRITE);
if (code == NULL) {
if (code == NULL)
{
SetLastError(ERROR_NOT_ENOUGH_MEMORY);
#if DEBUG_OUTPUT #if DEBUG_OUTPUT
OutputLastError("Can't reserve memory"); OutputLastError("Can't reserve memory");
#endif #endif
return NULL; return NULL;
} }
}
result = (PMEMORYMODULE)HeapAlloc(GetProcessHeap(), 0, sizeof(MEMORYMODULE)); result = (PMEMORYMODULE)HeapAlloc(GetProcessHeap(), 0, sizeof(MEMORYMODULE));
result->codeBase = code; result->codeBase = code;
result->numModules = 0; result->numModules = 0;
result->modules = NULL; result->modules = NULL;
result->initialized = 0; result->initialized = 0;
result->next = result->prev = NULL;
result->refcount = 1;
result->name = strdup(name);
result->name_table = NULL;
// XXX: is it correct to commit the complete memory region at once? // XXX: is it correct to commit the complete memory region at once?
// calling DllEntry raises an exception if we don't... // calling DllEntry raises an exception if we don't...
@ -514,31 +362,30 @@ HMEMORYMODULE MemoryLoadLibrary(char *name, const void *data)
result->headers = (PIMAGE_NT_HEADERS)&((const unsigned char *)(headers))[dos_header->e_lfanew]; result->headers = (PIMAGE_NT_HEADERS)&((const unsigned char *)(headers))[dos_header->e_lfanew];
// update position // update position
result->headers->OptionalHeader.ImageBase = (DWORD)code; result->headers->OptionalHeader.ImageBase = (POINTER_TYPE)code;
// copy sections from DLL file block to new memory location // copy sections from DLL file block to new memory location
CopySections(data, old_header, result); CopySections(data, old_header, result);
// adjust base address of imported data // adjust base address of imported data
locationDelta = (DWORD)(code - old_header->OptionalHeader.ImageBase); locationDelta = (SIZE_T)(code - old_header->OptionalHeader.ImageBase);
if (locationDelta != 0) if (locationDelta != 0) {
PerformBaseRelocation(result, locationDelta); PerformBaseRelocation(result, locationDelta);
}
// load required dlls and adjust function table of imports // load required dlls and adjust function table of imports
if (!BuildImportTable(result)) if (!BuildImportTable(result)) {
goto error; goto error;
}
// mark memory pages depending on section headers and release // mark memory pages depending on section headers and release
// sections that are marked as "discardable" // sections that are marked as "discardable"
FinalizeSections(result); FinalizeSections(result);
// get entry point of loaded library // get entry point of loaded library
if (result->headers->OptionalHeader.AddressOfEntryPoint != 0) if (result->headers->OptionalHeader.AddressOfEntryPoint != 0) {
{ DllEntry = (DllEntryProc) (code + result->headers->OptionalHeader.AddressOfEntryPoint);
DllEntry = (DllEntryProc)(code + result->headers->OptionalHeader.AddressOfEntryPoint); if (DllEntry == 0) {
if (DllEntry == 0)
{
SetLastError(ERROR_BAD_FORMAT); /* XXX ? */
#if DEBUG_OUTPUT #if DEBUG_OUTPUT
OutputDebugString("Library has no entry point.\n"); OutputDebugString("Library has no entry point.\n");
#endif #endif
@ -547,8 +394,7 @@ HMEMORYMODULE MemoryLoadLibrary(char *name, const void *data)
// notify library about attaching to process // notify library about attaching to process
successfull = (*DllEntry)((HINSTANCE)code, DLL_PROCESS_ATTACH, 0); successfull = (*DllEntry)((HINSTANCE)code, DLL_PROCESS_ATTACH, 0);
if (!successfull) if (!successfull) {
{
#if DEBUG_OUTPUT #if DEBUG_OUTPUT
OutputDebugString("Can't attach library.\n"); OutputDebugString("Can't attach library.\n");
#endif #endif
@ -557,99 +403,55 @@ HMEMORYMODULE MemoryLoadLibrary(char *name, const void *data)
result->initialized = 1; result->initialized = 1;
} }
_Register(name, result);
return (HMEMORYMODULE)result; return (HMEMORYMODULE)result;
error: error:
// cleanup // cleanup
free(result->name);
MemoryFreeLibrary(result); MemoryFreeLibrary(result);
return NULL; return NULL;
} }
int _compare(const struct NAME_TABLE *p1, const struct NAME_TABLE *p2)
{
return stricmp(p1->name, p2->name);
}
int _find(const char **name, const struct NAME_TABLE *p)
{
return stricmp(*name, p->name);
}
struct NAME_TABLE *GetNameTable(PMEMORYMODULE module)
{
unsigned char *codeBase;
PIMAGE_EXPORT_DIRECTORY exports;
PIMAGE_DATA_DIRECTORY directory;
DWORD i, *nameRef;
WORD *ordinal;
struct NAME_TABLE *p, *ptab;
if (module->name_table)
return module->name_table;
codeBase = module->codeBase;
directory = GET_HEADER_DICTIONARY(module, IMAGE_DIRECTORY_ENTRY_EXPORT);
exports = (PIMAGE_EXPORT_DIRECTORY)(codeBase + directory->VirtualAddress);
nameRef = (DWORD *)(codeBase + exports->AddressOfNames);
ordinal = (WORD *)(codeBase + exports->AddressOfNameOrdinals);
p = ((PMEMORYMODULE)module)->name_table = (struct NAME_TABLE *)malloc(sizeof(struct NAME_TABLE)
* exports->NumberOfNames);
if (p == NULL)
return NULL;
ptab = p;
for (i=0; i<exports->NumberOfNames; ++i) {
p->name = (char *)(codeBase + *nameRef++);
p->ordinal = *ordinal++;
++p;
}
qsort(ptab, exports->NumberOfNames, sizeof(struct NAME_TABLE), _compare);
return ptab;
}
FARPROC MemoryGetProcAddress(HMEMORYMODULE module, const char *name) FARPROC MemoryGetProcAddress(HMEMORYMODULE module, const char *name)
{ {
unsigned char *codeBase = ((PMEMORYMODULE)module)->codeBase; unsigned char *codeBase = ((PMEMORYMODULE)module)->codeBase;
int idx=-1; int idx=-1;
DWORD i, *nameRef;
WORD *ordinal;
PIMAGE_EXPORT_DIRECTORY exports; PIMAGE_EXPORT_DIRECTORY exports;
PIMAGE_DATA_DIRECTORY directory = GET_HEADER_DICTIONARY((PMEMORYMODULE)module, IMAGE_DIRECTORY_ENTRY_EXPORT); PIMAGE_DATA_DIRECTORY directory = GET_HEADER_DICTIONARY((PMEMORYMODULE)module, IMAGE_DIRECTORY_ENTRY_EXPORT);
if (directory->Size == 0) {
if (directory->Size == 0)
// no export table found // no export table found
return NULL; return NULL;
}
exports = (PIMAGE_EXPORT_DIRECTORY)(codeBase + directory->VirtualAddress); exports = (PIMAGE_EXPORT_DIRECTORY) (codeBase + directory->VirtualAddress);
if (exports->NumberOfNames == 0 || exports->NumberOfFunctions == 0) if (exports->NumberOfNames == 0 || exports->NumberOfFunctions == 0) {
// DLL doesn't export anything // DLL doesn't export anything
return NULL; return NULL;
}
if (HIWORD(name)) { // search function name in list of exported names
struct NAME_TABLE *ptab; nameRef = (DWORD *) (codeBase + exports->AddressOfNames);
struct NAME_TABLE *found; ordinal = (WORD *) (codeBase + exports->AddressOfNameOrdinals);
ptab = GetNameTable((PMEMORYMODULE)module); for (i=0; i<exports->NumberOfNames; i++, nameRef++, ordinal++) {
if (ptab == NULL) if (_stricmp(name, (const char *) (codeBase + (*nameRef))) == 0) {
// some failure idx = *ordinal;
return NULL; break;
found = bsearch(&name, ptab, exports->NumberOfNames, sizeof(struct NAME_TABLE), _find); }
if (found == NULL) }
if (idx == -1) {
// exported symbol not found // exported symbol not found
return NULL; return NULL;
idx = found->ordinal;
} }
else
idx = LOWORD(name) - exports->Base;
if ((DWORD)idx > exports->NumberOfFunctions) if ((DWORD)idx > exports->NumberOfFunctions) {
// name <-> ordinal number don't match // name <-> ordinal number don't match
return NULL; return NULL;
}
// AddressOfFunctions contains the RVAs to the "real" functions // AddressOfFunctions contains the RVAs to the "real" functions
return (FARPROC)(codeBase + *(DWORD *)(codeBase + exports->AddressOfFunctions + (idx*4))); return (FARPROC) (codeBase + (*(DWORD *) (codeBase + exports->AddressOfFunctions + (idx*4))));
} }
void MemoryFreeLibrary(HMEMORYMODULE mod) void MemoryFreeLibrary(HMEMORYMODULE mod)
@ -657,32 +459,29 @@ void MemoryFreeLibrary(HMEMORYMODULE mod)
int i; int i;
PMEMORYMODULE module = (PMEMORYMODULE)mod; PMEMORYMODULE module = (PMEMORYMODULE)mod;
if (module != NULL) if (module != NULL) {
{ if (module->initialized != 0) {
if (module->initialized != 0)
{
// notify library about detaching from process // notify library about detaching from process
DllEntryProc DllEntry = (DllEntryProc)(module->codeBase + module->headers->OptionalHeader.AddressOfEntryPoint); DllEntryProc DllEntry = (DllEntryProc) (module->codeBase + module->headers->OptionalHeader.AddressOfEntryPoint);
(*DllEntry)((HINSTANCE)module->codeBase, DLL_PROCESS_DETACH, 0); (*DllEntry)((HINSTANCE)module->codeBase, DLL_PROCESS_DETACH, 0);
module->initialized = 0; module->initialized = 0;
} }
if (module->modules != NULL) if (module->modules != NULL) {
{
// free previously opened libraries // free previously opened libraries
for (i=0; i<module->numModules; i++) for (i=0; i<module->numModules; i++) {
if (module->modules[i] != INVALID_HANDLE_VALUE) if (module->modules[i] != INVALID_HANDLE_VALUE) {
MyFreeLibrary(module->modules[i]); FreeLibrary(module->modules[i]);
}
}
free(module->modules); free(module->modules);
} }
if (module->codeBase != NULL) if (module->codeBase != NULL) {
// release memory of library // release memory of library
VirtualFree(module->codeBase, 0, MEM_RELEASE); VirtualFree(module->codeBase, 0, MEM_RELEASE);
}
if (module->name_table != NULL)
free(module->name_table);
HeapFree(GetProcessHeap(), 0, module); HeapFree(GetProcessHeap(), 0, module);
} }

View File

@ -1,12 +1,12 @@
/* /*
* Memory DLL loading code * Memory DLL loading code
* Version 0.0.2 * Version 0.0.3
* *
* Copyright (c) 2004-2005 by Joachim Bauch / mail@joachim-bauch.de * Copyright (c) 2004-2012 by Joachim Bauch / mail@joachim-bauch.de
* http://www.joachim-bauch.de * http://www.joachim-bauch.de
* *
* The contents of this file are subject to the Mozilla Public License Version * The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with * 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at * the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/ * http://www.mozilla.org/MPL/
* *
@ -19,7 +19,7 @@
* *
* The Initial Developer of the Original Code is Joachim Bauch. * The Initial Developer of the Original Code is Joachim Bauch.
* *
* Portions created by Joachim Bauch are Copyright (C) 2004-2005 * Portions created by Joachim Bauch are Copyright (C) 2004-2012
* Joachim Bauch. All Rights Reserved. * Joachim Bauch. All Rights Reserved.
* *
*/ */
@ -35,22 +35,12 @@ typedef void *HMEMORYMODULE;
extern "C" { extern "C" {
#endif #endif
typedef void *(*FINDPROC)(); HMEMORYMODULE MemoryLoadLibrary(const void *);
extern FINDPROC findproc;
extern void *findproc_data;
HMEMORYMODULE MemoryLoadLibrary(char *, const void *);
FARPROC MemoryGetProcAddress(HMEMORYMODULE, const char *); FARPROC MemoryGetProcAddress(HMEMORYMODULE, const char *);
void MemoryFreeLibrary(HMEMORYMODULE); void MemoryFreeLibrary(HMEMORYMODULE);
BOOL MyFreeLibrary(HMODULE hModule);
HMODULE MyLoadLibrary(char *lpFileName);
FARPROC MyGetProcAddress(HMODULE hModule, LPCSTR lpProcName);
HMODULE MyGetModuleHandle(LPCTSTR lpModuleName);
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif

View File

@ -8,53 +8,84 @@ __docformat__ = 'restructuredtext en'
import os, shutil, subprocess import os, shutil, subprocess
from setup import Command, __appname__, __version__ from setup import Command, __appname__, __version__, installer_name
from setup.installer import VMInstaller from setup.installer import VMInstaller
class Win(Command): class Win(Command):
description = 'Build windows binary installers' description = 'Build windows binary installers'
sub_commands = ['win32'] sub_commands = ['win64', 'win32']
def run(self, opts): def run(self, opts):
pass pass
class WinBase(VMInstaller):
class Win32(VMInstaller):
description = 'Build 32bit windows binary installer'
INSTALLER_EXT = 'exe'
VM_NAME = 'xp_build'
VM = '/vmware/bin/%s'%VM_NAME
VM_CHECK = 'calibre_windows_xp_home'
FREEZE_COMMAND = 'win32_freeze' FREEZE_COMMAND = 'win32_freeze'
FREEZE_TEMPLATE = 'python -OO setup.py {freeze_command} --no-ice' FREEZE_TEMPLATE = 'python -OO setup.py {freeze_command} --no-ice'
INSTALLER_EXT = 'msi' INSTALLER_EXT = 'msi'
SHUTDOWN_CMD = ['shutdown.exe', '-s', '-f', '-t', '0'] SHUTDOWN_CMD = ['shutdown.exe', '-s', '-f', '-t', '0']
class Win32(WinBase):
description = 'Build 32bit windows binary installer'
VM_NAME = 'xp_build'
VM = '/vmware/bin/%s'%VM_NAME
VM_CHECK = 'calibre_windows_xp_home'
@property
def msi64(self):
return installer_name('msi', is64bit=True)
def sign_msi(self): def sign_msi(self):
import xattr
print ('Signing installers ...') print ('Signing installers ...')
sign64 = False
msi64 = self.msi64
if os.path.exists(msi64) and 'user.signed' not in xattr.list(msi64):
subprocess.check_call(['scp', msi64, self.VM_NAME +
':build/%s/%s'%(__appname__, msi64)])
sign64 = True
subprocess.check_call(['ssh', self.VM_NAME, '~/sign.sh'], shell=False) subprocess.check_call(['ssh', self.VM_NAME, '~/sign.sh'], shell=False)
return sign64
def do_dl(self, installer, errmsg):
subprocess.check_call(('scp',
'%s:build/%s/%s'%(self.VM_NAME, __appname__, installer), 'dist'))
if not os.path.exists(installer):
self.warn(errmsg)
raise SystemExit(1)
def download_installer(self): def download_installer(self):
installer = self.installer() installer = self.installer()
if os.path.exists('build/winfrozen'): if os.path.exists('build/winfrozen'):
shutil.rmtree('build/winfrozen') shutil.rmtree('build/winfrozen')
self.sign_msi() sign64 = self.sign_msi()
if sign64:
self.do_dl(self.msi64, 'Failed to d/l signed 64 bit installer')
import xattr
xattr.set(self.msi64, 'user.signed', 'true')
subprocess.check_call(('scp', self.do_dl(installer, 'Failed to freeze')
'xp_build:build/%s/%s'%(__appname__, installer), 'dist'))
if not os.path.exists(installer):
self.warn('Failed to freeze')
raise SystemExit(1)
installer = 'dist/%s-portable-installer-%s.exe'%(__appname__, __version__) installer = 'dist/%s-portable-installer-%s.exe'%(__appname__, __version__)
subprocess.check_call(('scp', self.do_dl(installer, 'Failed to get portable installer')
'xp_build:build/%s/%s'%(__appname__, installer), 'dist'))
if not os.path.exists(installer): class Win64(WinBase):
self.warn('Failed to get portable installer')
raise SystemExit(1) description = 'Build 64bit windows binary installer'
VM_NAME = 'win64'
VM = '/vmware/bin/%s'%VM_NAME
VM_CHECK = 'win64'
IS_64_BIT = True
BUILD_PREFIX = WinBase.BUILD_PREFIX + [
'if [ -f "$HOME/.bash_profile" ] ; then',
' source "$HOME/.bash_profile"',
'fi',
]

View File

@ -25,6 +25,7 @@ LZMA = r'Q:\easylzma\build\easylzma-0.0.8'
VERSION = re.sub('[a-z]\d+', '', __version__) VERSION = re.sub('[a-z]\d+', '', __version__)
WINVER = VERSION+'.0' WINVER = VERSION+'.0'
machine = 'X64' if is64bit else 'X86'
DESCRIPTIONS = { DESCRIPTIONS = {
'calibre' : 'The main calibre program', 'calibre' : 'The main calibre program',
@ -110,7 +111,7 @@ class Win32Freeze(Command, WixMixIn):
self.info('Removing CRT dependency from manifest of: %s'%bn) self.info('Removing CRT dependency from manifest of: %s'%bn)
# Blank out the bytes corresponding to the dependency specification # Blank out the bytes corresponding to the dependency specification
nraw = repl_pat.sub(lambda m: b' '*len(m.group()), raw) nraw = repl_pat.sub(lambda m: b' '*len(m.group()), raw)
if len(nraw) != len(raw): if len(nraw) != len(raw) or nraw == raw:
raise Exception('Something went wrong with %s'%bn) raise Exception('Something went wrong with %s'%bn)
with open(dll, 'wb') as f: with open(dll, 'wb') as f:
f.write(nraw) f.write(nraw)
@ -132,6 +133,23 @@ class Win32Freeze(Command, WixMixIn):
# used instead # used instead
shutil.copy2(f, tgt) shutil.copy2(f, tgt)
def fix_pyd_bootstraps_in(self, folder):
for dirpath, dirnames, filenames in os.walk(folder):
for f in filenames:
name, ext = os.path.splitext(f)
bpy = self.j(dirpath, name + '.py')
if ext == '.pyd' and os.path.exists(bpy):
with open(bpy, 'rb') as f:
raw = f.read().strip()
if (not raw.startswith('def __bootstrap__') or not
raw.endswith('__bootstrap__()')):
raise Exception('The file %r has non'
' bootstrap code'%self.j(dirpath, f))
for ext in ('.py', '.pyc', '.pyo'):
x = self.j(dirpath, name+ext)
if os.path.exists(x):
os.remove(x)
def freeze(self): def freeze(self):
shutil.copy2(self.j(self.src_root, 'LICENSE'), self.base) shutil.copy2(self.j(self.src_root, 'LICENSE'), self.base)
@ -184,23 +202,12 @@ class Win32Freeze(Command, WixMixIn):
shutil.copytree(self.j(comext, 'shell'), self.j(sp_dir, 'win32com', 'shell')) shutil.copytree(self.j(comext, 'shell'), self.j(sp_dir, 'win32com', 'shell'))
shutil.rmtree(comext) shutil.rmtree(comext)
# Fix PyCrypto, removing the bootstrap .py modules that load the .pyd # Fix PyCrypto and Pillow, removing the bootstrap .py modules that load
# modules, since they do not work when in a zip file # the .pyd modules, since they do not work when in a zip file
for crypto_dir in glob.glob(self.j(sp_dir, 'pycrypto-*', 'Crypto')): for folder in os.listdir(sp_dir):
for dirpath, dirnames, filenames in os.walk(crypto_dir): folder = self.j(sp_dir, folder)
for f in filenames: if os.path.isdir(folder):
name, ext = os.path.splitext(f) self.fix_pyd_bootstraps_in(folder)
if ext == '.pyd':
with open(self.j(dirpath, name+'.py')) as f:
raw = f.read().strip()
if (not raw.startswith('def __bootstrap__') or not
raw.endswith('__bootstrap__()')):
raise Exception('The PyCrypto file %r has non'
' bootstrap code'%self.j(dirpath, f))
for ext in ('.py', '.pyc', '.pyo'):
x = self.j(dirpath, name+ext)
if os.path.exists(x):
os.remove(x)
for pat in (r'PyQt4\uic\port_v3', ): for pat in (r'PyQt4\uic\port_v3', ):
x = glob.glob(self.j(self.lib_dir, 'site-packages', pat))[0] x = glob.glob(self.j(self.lib_dir, 'site-packages', pat))[0]
@ -367,7 +374,7 @@ class Win32Freeze(Command, WixMixIn):
if not self.opts.keep_site: if not self.opts.keep_site:
os.remove(y) os.remove(y)
def run_builder(self, cmd): def run_builder(self, cmd, show_output=False):
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, p = subprocess.Popen(cmd, stdout=subprocess.PIPE,
stderr=subprocess.PIPE) stderr=subprocess.PIPE)
if p.wait() != 0: if p.wait() != 0:
@ -376,6 +383,9 @@ class Win32Freeze(Command, WixMixIn):
self.info(p.stdout.read()) self.info(p.stdout.read())
self.info(p.stderr.read()) self.info(p.stderr.read())
sys.exit(1) sys.exit(1)
if show_output:
self.info(p.stdout.read())
self.info(p.stderr.read())
def build_portable_installer(self): def build_portable_installer(self):
zf = self.a(self.j('dist', 'calibre-portable-%s.zip.lz'%VERSION)) zf = self.a(self.j('dist', 'calibre-portable-%s.zip.lz'%VERSION))
@ -401,7 +411,7 @@ class Win32Freeze(Command, WixMixIn):
exe = self.j('dist', 'calibre-portable-installer-%s.exe'%VERSION) exe = self.j('dist', 'calibre-portable-installer-%s.exe'%VERSION)
if self.newer(exe, [obj, xobj]): if self.newer(exe, [obj, xobj]):
self.info('Linking', exe) self.info('Linking', exe)
cmd = [msvc.linker] + ['/INCREMENTAL:NO', '/MACHINE:X86', cmd = [msvc.linker] + ['/INCREMENTAL:NO', '/MACHINE:'+machine,
'/LIBPATH:'+self.obj_dir, '/SUBSYSTEM:WINDOWS', '/LIBPATH:'+self.obj_dir, '/SUBSYSTEM:WINDOWS',
'/LIBPATH:'+(LZMA+r'\lib\Release'), '/LIBPATH:'+(LZMA+r'\lib\Release'),
'/RELEASE', '/MANIFEST', '/MANIFESTUAC:level="asInvoker" uiAccess="false"', '/RELEASE', '/MANIFEST', '/MANIFESTUAC:level="asInvoker" uiAccess="false"',
@ -458,7 +468,7 @@ class Win32Freeze(Command, WixMixIn):
exe = self.j(base, 'calibre-portable.exe') exe = self.j(base, 'calibre-portable.exe')
if self.newer(exe, [obj]): if self.newer(exe, [obj]):
self.info('Linking', exe) self.info('Linking', exe)
cmd = [msvc.linker] + ['/INCREMENTAL:NO', '/MACHINE:X86', cmd = [msvc.linker] + ['/INCREMENTAL:NO', '/MACHINE:'+machine,
'/LIBPATH:'+self.obj_dir, '/SUBSYSTEM:WINDOWS', '/LIBPATH:'+self.obj_dir, '/SUBSYSTEM:WINDOWS',
'/RELEASE', '/RELEASE',
'/ENTRY:wWinMainCRTStartup', '/ENTRY:wWinMainCRTStartup',
@ -499,9 +509,11 @@ class Win32Freeze(Command, WixMixIn):
finally: finally:
os.chdir(cwd) os.chdir(cwd)
def build_launchers(self): def build_launchers(self, debug=False):
if not os.path.exists(self.obj_dir): if not os.path.exists(self.obj_dir):
os.makedirs(self.obj_dir) os.makedirs(self.obj_dir)
dflags = (['/Zi'] if debug else [])
dlflags = (['/DEBUG'] if debug else ['/INCREMENTAL:NO'])
base = self.j(self.src_root, 'setup', 'installer', 'windows') base = self.j(self.src_root, 'setup', 'installer', 'windows')
sources = [self.j(base, x) for x in ['util.c', 'MemoryModule.c']] sources = [self.j(base, x) for x in ['util.c', 'MemoryModule.c']]
headers = [self.j(base, x) for x in ['util.h', 'MemoryModule.h']] headers = [self.j(base, x) for x in ['util.h', 'MemoryModule.h']]
@ -510,20 +522,20 @@ class Win32Freeze(Command, WixMixIn):
cflags += ['/DPYDLL="python%s.dll"'%self.py_ver, '/IC:/Python%s/include'%self.py_ver] cflags += ['/DPYDLL="python%s.dll"'%self.py_ver, '/IC:/Python%s/include'%self.py_ver]
for src, obj in zip(sources, objects): for src, obj in zip(sources, objects):
if not self.newer(obj, headers+[src]): continue if not self.newer(obj, headers+[src]): continue
cmd = [msvc.cc] + cflags + ['/Fo'+obj, '/Tc'+src] cmd = [msvc.cc] + cflags + dflags + ['/Fo'+obj, '/Tc'+src]
self.run_builder(cmd) self.run_builder(cmd, show_output=True)
dll = self.j(self.obj_dir, 'calibre-launcher.dll') dll = self.j(self.obj_dir, 'calibre-launcher.dll')
ver = '.'.join(__version__.split('.')[:2]) ver = '.'.join(__version__.split('.')[:2])
if self.newer(dll, objects): if self.newer(dll, objects):
cmd = [msvc.linker, '/DLL', '/INCREMENTAL:NO', '/VERSION:'+ver, cmd = [msvc.linker, '/DLL', '/VERSION:'+ver, '/OUT:'+dll,
'/OUT:'+dll, '/nologo', '/MACHINE:X86'] + objects + \ '/nologo', '/MACHINE:'+machine] + dlflags + objects + \
[self.embed_resources(dll), [self.embed_resources(dll),
'/LIBPATH:C:/Python%s/libs'%self.py_ver, '/LIBPATH:C:/Python%s/libs'%self.py_ver,
'python%s.lib'%self.py_ver, 'python%s.lib'%self.py_ver,
'/delayload:python%s.dll'%self.py_ver] '/delayload:python%s.dll'%self.py_ver]
self.info('Linking calibre-launcher.dll') self.info('Linking calibre-launcher.dll')
self.run_builder(cmd) self.run_builder(cmd, show_output=True)
src = self.j(base, 'main.c') src = self.j(base, 'main.c')
shutil.copy2(dll, self.base) shutil.copy2(dll, self.base)
@ -541,16 +553,16 @@ class Win32Freeze(Command, WixMixIn):
dest = self.j(self.obj_dir, bname+'.obj') dest = self.j(self.obj_dir, bname+'.obj')
if self.newer(dest, [src]+headers): if self.newer(dest, [src]+headers):
self.info('Compiling', bname) self.info('Compiling', bname)
cmd = [msvc.cc] + xflags + ['/Tc'+src, '/Fo'+dest] cmd = [msvc.cc] + xflags + dflags + ['/Tc'+src, '/Fo'+dest]
self.run_builder(cmd) self.run_builder(cmd)
exe = self.j(self.base, bname+'.exe') exe = self.j(self.base, bname+'.exe')
lib = dll.replace('.dll', '.lib') lib = dll.replace('.dll', '.lib')
if self.newer(exe, [dest, lib, self.rc_template, __file__]): if self.newer(exe, [dest, lib, self.rc_template, __file__]):
self.info('Linking', bname) self.info('Linking', bname)
cmd = [msvc.linker] + ['/INCREMENTAL:NO', '/MACHINE:X86', cmd = [msvc.linker] + ['/MACHINE:'+machine,
'/LIBPATH:'+self.obj_dir, '/SUBSYSTEM:'+subsys, '/LIBPATH:'+self.obj_dir, '/SUBSYSTEM:'+subsys,
'/LIBPATH:C:/Python%s/libs'%self.py_ver, '/RELEASE', '/LIBPATH:C:/Python%s/libs'%self.py_ver, '/RELEASE',
'/OUT:'+exe, self.embed_resources(exe), '/OUT:'+exe] + dlflags + [self.embed_resources(exe),
dest, lib] dest, lib]
self.run_builder(cmd) self.run_builder(cmd)
@ -563,12 +575,18 @@ class Win32Freeze(Command, WixMixIn):
for x in (self.plugins_dir, self.dll_dir): for x in (self.plugins_dir, self.dll_dir):
for pyd in os.listdir(x): for pyd in os.listdir(x):
if pyd.endswith('.pyd') and pyd not in { if pyd.endswith('.pyd') and pyd not in {
'unrar.pyd', 'sqlite_custom.pyd', 'calibre_style.pyd'}:
# sqlite_custom has to be a file for # sqlite_custom has to be a file for
# sqlite_load_extension to work # sqlite_load_extension to work
# For some reason unrar.pyd crashes when processing 'sqlite_custom.pyd',
# password protected RAR files if loaded from inside # calibre_style has to be loaded by Qt therefore it
# pylib.zip # must be a file
'calibre_style.pyd',
# Because of https://github.com/fancycode/MemoryModule/issues/4
# any extensions that use C++ exceptions must be loaded
# from files
'unrar.pyd', 'wpd.pyd', 'podofo.pyd',
'progress_indicator.pyd',
}:
self.add_to_zipfile(zf, pyd, x) self.add_to_zipfile(zf, pyd, x)
os.remove(self.j(x, pyd)) os.remove(self.j(x, pyd))
@ -581,6 +599,7 @@ class Win32Freeze(Command, WixMixIn):
sp = self.j(self.lib_dir, 'site-packages') sp = self.j(self.lib_dir, 'site-packages')
# Special handling for PIL and pywin32 # Special handling for PIL and pywin32
handled = set(['PIL.pth', 'pywin32.pth', 'PIL', 'win32']) handled = set(['PIL.pth', 'pywin32.pth', 'PIL', 'win32'])
if not is64bit:
self.add_to_zipfile(zf, 'PIL', sp) self.add_to_zipfile(zf, 'PIL', sp)
base = self.j(sp, 'win32', 'lib') base = self.j(sp, 'win32', 'lib')
for x in os.listdir(base): for x in os.listdir(base):
@ -593,16 +612,17 @@ class Win32Freeze(Command, WixMixIn):
self.add_to_zipfile(zf, x, base) self.add_to_zipfile(zf, x, base)
handled.add('easy-install.pth') handled.add('easy-install.pth')
# We dont want the site.py from site-packages
handled.add('site.pyo')
for d in self.get_pth_dirs(self.j(sp, 'easy-install.pth')): for d in self.get_pth_dirs(self.j(sp, 'easy-install.pth')):
handled.add(self.b(d)) handled.add(self.b(d))
for x in os.listdir(d): for x in os.listdir(d):
if x == 'EGG-INFO': if x in {'EGG-INFO', 'site.py', 'site.pyc', 'site.pyo'}:
continue continue
self.add_to_zipfile(zf, x, d) self.add_to_zipfile(zf, x, d)
# The rest of site-packages # The rest of site-packages
# We dont want the site.py from site-packages
handled.add('site.pyo')
for x in os.listdir(sp): for x in os.listdir(sp):
if x in handled or x.endswith('.egg-info'): if x in handled or x.endswith('.egg-info'):
continue continue
@ -622,8 +642,10 @@ class Win32Freeze(Command, WixMixIn):
line = line.strip() line = line.strip()
if not line or line.startswith('#') or line.startswith('import'): if not line or line.startswith('#') or line.startswith('import'):
continue continue
candidate = self.j(base, line) candidate = os.path.abspath(self.j(base, line))
if os.path.exists(candidate): if os.path.exists(candidate):
if not os.path.isdir(candidate):
raise ValueError('%s is not a directory'%candidate)
yield candidate yield candidate
def add_to_zipfile(self, zf, name, base, exclude=frozenset()): def add_to_zipfile(self, zf, name, base, exclude=frozenset()):

View File

@ -109,10 +109,8 @@ of mimetypes from the windows registry
Python packages Python packages
------------------ ------------------
Install setuptools from http://pypi.python.org/pypi/setuptools If there are no Install setuptools from http://pypi.python.org/pypi/setuptools. Use the source
windows binaries already compiled for the version of python you are using then tarball. Edit setup.py and set zip_safe=False. Then run::
download the source and run the following command in the folder where the
source has been unpacked::
python setup.py install python setup.py install

View File

@ -418,9 +418,12 @@ static BOOL move_program() {
} }
if (MoveFileEx(L"Calibre Portable\\Calibre", L"..\\Calibre", 0) == 0) { if (MoveFileEx(L"Calibre Portable\\Calibre", L"..\\Calibre", 0) == 0) {
show_last_error(L"Failed to move calibre program folder"); Sleep(4000); // Sleep and try again
if (MoveFileEx(L"Calibre Portable\\Calibre", L"..\\Calibre", 0) == 0) {
show_last_error(L"Failed to move calibre program folder. This is usually caused by an antivirus program or a file sync program like DropBox. Turn them off temporarily and try again. Underlying error: ");
return false; return false;
} }
}
if (!directory_exists(L"..\\Calibre Library")) { if (!directory_exists(L"..\\Calibre Library")) {
MoveFileEx(L"Calibre Portable\\Calibre Library", L"..\\Calibre Library", 0); MoveFileEx(L"Calibre Portable\\Calibre Library", L"..\\Calibre Library", 0);

View File

@ -16,6 +16,7 @@ static char python_dll[] = PYDLL;
void set_gui_app(char yes) { GUI_APP = yes; } void set_gui_app(char yes) { GUI_APP = yes; }
char is_gui_app() { return GUI_APP; } char is_gui_app() { return GUI_APP; }
int calibre_show_python_error(const wchar_t *preamble, int code);
// memimporter {{{ // memimporter {{{
@ -63,17 +64,6 @@ static void* FindLibrary(char *name, PyObject *callback)
return p; return p;
} }
static PyObject *set_find_proc(PyObject *self, PyObject *args)
{
PyObject *callback = NULL;
if (!PyArg_ParseTuple(args, "|O:set_find_proc", &callback))
return NULL;
Py_DECREF((PyObject *)findproc_data);
Py_INCREF(callback);
findproc_data = (void *)callback;
return Py_BuildValue("i", 1);
}
static PyObject * static PyObject *
import_module(PyObject *self, PyObject *args) import_module(PyObject *self, PyObject *args)
{ {
@ -92,7 +82,7 @@ import_module(PyObject *self, PyObject *args)
&data, &size, &data, &size,
&initfuncname, &modname, &pathname)) &initfuncname, &modname, &pathname))
return NULL; return NULL;
hmem = MemoryLoadLibrary(pathname, data); hmem = MemoryLoadLibrary(data);
if (!hmem) { if (!hmem) {
PyErr_Format(*DLL_ImportError, PyErr_Format(*DLL_ImportError,
"MemoryLoadLibrary() failed loading %s", pathname); "MemoryLoadLibrary() failed loading %s", pathname);
@ -119,14 +109,14 @@ import_module(PyObject *self, PyObject *args)
static PyMethodDef methods[] = { static PyMethodDef methods[] = {
{ "import_module", import_module, METH_VARARGS, { "import_module", import_module, METH_VARARGS,
"import_module(code, initfunc, dllname[, finder]) -> module" }, "import_module(code, initfunc, dllname[, finder]) -> module" },
{ "set_find_proc", set_find_proc, METH_VARARGS },
{ NULL, NULL }, /* Sentinel */ { NULL, NULL }, /* Sentinel */
}; };
// }}} // }}}
static int _show_error(const wchar_t *preamble, const wchar_t *msg, const int code) { static int _show_error(const wchar_t *preamble, const wchar_t *msg, const int code) {
wchar_t *buf, *cbuf; wchar_t *buf;
char *cbuf;
buf = (wchar_t*)LocalAlloc(LMEM_ZEROINIT, sizeof(wchar_t)* buf = (wchar_t*)LocalAlloc(LMEM_ZEROINIT, sizeof(wchar_t)*
(wcslen(msg) + wcslen(preamble) + 80)); (wcslen(msg) + wcslen(preamble) + 80));
@ -142,7 +132,7 @@ static int _show_error(const wchar_t *preamble, const wchar_t *msg, const int co
else { else {
cbuf = (char*) calloc(10+(wcslen(buf)*4), sizeof(char)); cbuf = (char*) calloc(10+(wcslen(buf)*4), sizeof(char));
if (cbuf) { if (cbuf) {
if (WideCharToMultiByte(CP_UTF8, 0, buf, -1, cbuf, 10+(wcslen(buf)*4), NULL, NULL) != 0) printf_s(cbuf); if (WideCharToMultiByte(CP_UTF8, 0, buf, -1, cbuf, (int)(10+(wcslen(buf)*4)), NULL, NULL) != 0) printf_s(cbuf);
free(cbuf); free(cbuf);
} }
} }
@ -165,6 +155,7 @@ int show_last_error_crt(wchar_t *preamble) {
int show_last_error(wchar_t *preamble) { int show_last_error(wchar_t *preamble) {
wchar_t *msg = NULL; wchar_t *msg = NULL;
DWORD dw = GetLastError(); DWORD dw = GetLastError();
int ret;
FormatMessage( FormatMessage(
FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_ALLOCATE_BUFFER |
@ -173,10 +164,13 @@ int show_last_error(wchar_t *preamble) {
NULL, NULL,
dw, dw,
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
&msg, (LPWSTR)&msg,
0, NULL ); 0,
NULL );
return _show_error(preamble, msg, (int)dw); ret = _show_error(preamble, msg, (int)dw);
if (msg != NULL) LocalFree(msg);
return ret;
} }
char* get_app_dir() { char* get_app_dir() {
@ -254,10 +248,10 @@ void setup_stream(const char *name, const char *errors, UINT cp) {
else if (cp == CP_UTF7) _snprintf_s(buf, 100, _TRUNCATE, "%s", "utf-7"); else if (cp == CP_UTF7) _snprintf_s(buf, 100, _TRUNCATE, "%s", "utf-7");
else _snprintf_s(buf, 100, _TRUNCATE, "cp%d", cp); else _snprintf_s(buf, 100, _TRUNCATE, "cp%d", cp);
stream = PySys_GetObject(name); stream = PySys_GetObject((char*)name);
if (!PyFile_SetEncodingAndErrors(stream, buf, errors)) if (!PyFile_SetEncodingAndErrors(stream, buf, (char*)errors))
ExitProcess(calibre_show_python_error("Failed to set stream encoding", 1)); ExitProcess(calibre_show_python_error(L"Failed to set stream encoding", 1));
free(buf); free(buf);
@ -372,7 +366,6 @@ void initialize_interpreter(wchar_t *outr, wchar_t *errr,
} }
PySys_SetObject("argv", argv); PySys_SetObject("argv", argv);
findproc = FindLibrary;
Py_InitModule3("_memimporter", methods, module_doc); Py_InitModule3("_memimporter", methods, module_doc);
} }

View File

@ -2,7 +2,7 @@
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi' xmlns:util="http://schemas.microsoft.com/wix/UtilExtension" <Wix xmlns='http://schemas.microsoft.com/wix/2006/wi' xmlns:util="http://schemas.microsoft.com/wix/UtilExtension"
> >
<Product Name='{app}' Id='*' UpgradeCode='{upgrade_code}' <Product Name='{app}{x64}' Id='*' UpgradeCode='{upgrade_code}'
Language='1033' Codepage='1252' Version='{version}' Manufacturer='Kovid Goyal'> Language='1033' Codepage='1252' Version='{version}' Manufacturer='Kovid Goyal'>
<Package Id='*' Keywords='Installer' Description="{app} Installer" <Package Id='*' Keywords='Installer' Description="{app} Installer"
@ -29,19 +29,24 @@
Language="1033" Language="1033"
Property="NEWPRODUCTFOUND"/> Property="NEWPRODUCTFOUND"/>
</Upgrade> </Upgrade>
<CustomAction Id="PreventDowngrading" Error="Newer version already installed."/> <CustomAction Id="PreventDowngrading" Error="Newer version of {app} already installed. If you want to downgrade you must uninstall {app} first."/>
<Property Id="APPLICATIONFOLDER"> <Property Id="APPLICATIONFOLDER">
<RegistrySearch Id='calibreInstDir' Type='raw' <RegistrySearch Id='calibreInstDir' Type='raw'
Root='HKLM' Key="Software\{app}\Installer" Name="InstallPath" /> Root='HKLM' Key="Software\{app}{x64}\Installer" Name="InstallPath" />
</Property> </Property>
<Directory Id='TARGETDIR' Name='SourceDir'> <Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id='ProgramFilesFolder' Name='PFiles'> <Directory Id='{ProgramFilesFolder}' Name='PFiles'>
<Directory Id='APPLICATIONFOLDER' Name='{app}' /> <!-- The name must be calibre on 32 bit to ensure
that the component guids dont change compared
to previous msis. However, on 64 bit it must
be Calibre2 otherwise by default it will
install to C:\Program Files\calibre -->
<Directory Id='APPLICATIONFOLDER' Name="{appfolder}" />
</Directory> </Directory>
<Directory Id="ProgramMenuFolder"> <Directory Id="ProgramMenuFolder">
<Directory Id="ApplicationProgramsFolder" Name="{app} - E-book Management"/> <Directory Id="ApplicationProgramsFolder" Name="{app}{x64} - E-book Management"/>
</Directory> </Directory>
<Directory Id="DesktopFolder" Name="Desktop"/> <Directory Id="DesktopFolder" Name="Desktop"/>
</Directory> </Directory>
@ -50,24 +55,24 @@
{app_components} {app_components}
<Component Id="AddToPath" Guid="*"> <Component Id="AddToPath" Guid="*">
<Environment Id='UpdatePath' Name='PATH' Action='set' System='yes' Part='last' Value='[APPLICATIONFOLDER]' /> <Environment Id='UpdatePath' Name='PATH' Action='set' System='yes' Part='last' Value='[APPLICATIONFOLDER]' />
<RegistryValue Root="HKCU" Key="Software\Microsoft\{app}" Name="system_path_updated" Type="integer" Value="1" KeyPath="yes"/> <RegistryValue Root="HKCU" Key="Software\Microsoft\{app}{x64}" Name="system_path_updated" Type="integer" Value="1" KeyPath="yes"/>
</Component> </Component>
<Component Id="RememberInstallDir" Guid="*"> <Component Id="RememberInstallDir" Guid="*">
<RegistryValue Root="HKLM" Key="Software\{app}\Installer" Name="InstallPath" Type="string" Value="[APPLICATIONFOLDER]" KeyPath="yes"/> <RegistryValue Root="HKLM" Key="Software\{app}{x64}\Installer" Name="InstallPath" Type="string" Value="[APPLICATIONFOLDER]" KeyPath="yes"/>
</Component> </Component>
</DirectoryRef> </DirectoryRef>
<DirectoryRef Id="ApplicationProgramsFolder"> <DirectoryRef Id="ApplicationProgramsFolder">
<Component Id="StartMenuShortcuts" Guid="*"> <Component Id="StartMenuShortcuts" Guid="*">
<Shortcut Id="s1" Name="{app} - E-book management" <Shortcut Id="s1" Name="{app}{x64} - E-book management"
Description="Manage your e-book collection and download news" Description="Manage your e-book collection and download news"
Target="[#{exe_map[calibre]}]" Target="[#{exe_map[calibre]}]"
WorkingDirectory="APPLICATIONROOTDIRECTORY" /> WorkingDirectory="APPLICATIONROOTDIRECTORY" />
<Shortcut Id="s2" Name="E-book viewer" <Shortcut Id="s2" Name="E-book viewer{x64}"
Description="Viewer for all the major e-book formats" Description="Viewer for all the major e-book formats"
Target="[#{exe_map[ebook-viewer]}]" Target="[#{exe_map[ebook-viewer]}]"
WorkingDirectory="APPLICATIONROOTDIRECTORY" /> WorkingDirectory="APPLICATIONROOTDIRECTORY" />
<Shortcut Id="s3" Name="LRF viewer" <Shortcut Id="s3" Name="LRF viewer{x64}"
Description="Viewer for LRF format e-books" Description="Viewer for LRF format e-books"
Target="[#{exe_map[lrfviewer]}]" Target="[#{exe_map[lrfviewer]}]"
WorkingDirectory="APPLICATIONROOTDIRECTORY" /> WorkingDirectory="APPLICATIONROOTDIRECTORY" />
@ -79,17 +84,17 @@
Target="http://calibre-ebook.com/get-involved"/> Target="http://calibre-ebook.com/get-involved"/>
<RemoveFolder Id="ApplicationProgramsFolder" On="uninstall"/> <RemoveFolder Id="ApplicationProgramsFolder" On="uninstall"/>
<RegistryValue Root="HKCU" Key="Software\Microsoft\{app}" Name="start_menu_shortcuts_installed" Type="integer" Value="1" KeyPath="yes"/> <RegistryValue Root="HKCU" Key="Software\Microsoft\{app}{x64}" Name="start_menu_shortcuts_installed" Type="integer" Value="1" KeyPath="yes"/>
</Component> </Component>
</DirectoryRef> </DirectoryRef>
<DirectoryRef Id="DesktopFolder"> <DirectoryRef Id="DesktopFolder">
<Component Id="DesktopShortcut" Guid="*"> <Component Id="DesktopShortcut" Guid="*">
<Shortcut Id="ds1" Name="{app} - E-book management" <Shortcut Id="ds1" Name="{app}{x64} - E-book management"
Description="Manage your e-book collection and download news" Description="Manage your e-book collection and download news"
Target="[#{exe_map[calibre]}]" Target="[#{exe_map[calibre]}]"
WorkingDirectory="APPLICATIONROOTDIRECTORY" /> WorkingDirectory="APPLICATIONROOTDIRECTORY" />
<RegistryValue Root="HKCU" Key="Software\Microsoft\{app}" Name="desktop_shortcut_installed" Type="integer" Value="1" KeyPath="yes"/> <RegistryValue Root="HKCU" Key="Software\Microsoft\{app}{x64}" Name="desktop_shortcut_installed" Type="integer" Value="1" KeyPath="yes"/>
</Component> </Component>
</DirectoryRef> </DirectoryRef>
@ -122,17 +127,35 @@
<!-- Add icon to entry in Add/Remove programs --> <!-- Add icon to entry in Add/Remove programs -->
<Icon Id="main_icon" SourceFile="{main_icon}"/> <Icon Id="main_icon" SourceFile="{main_icon}"/>
<Property Id="ARPPRODUCTICON" Value="main_icon" /> <Property Id="ARPPRODUCTICON" Value="main_icon" />
<Property Id="ARPURLINFOABOUT" Value="http://calibre-ebook.com" />
<Property Id='ARPHELPLINK' Value="http://calibre-ebook.com/help" />
<Property Id='ARPURLUPDATEINFO' Value="http://calibre-ebook.com/download_windows" />
<SetProperty Id="ARPINSTALLLOCATION" Value="[APPLICATIONFOLDER]" After="CostFinalize" />
<Condition <Condition
Message="This application is only supported on Windows XP SP3, or higher."> Message="This application is only supported on {minverhuman}, or higher.">
<![CDATA[Installed OR (VersionNT >= 501)]]> <![CDATA[Installed OR (VersionNT >= {minver})]]>
</Condition> </Condition>
<!-- On 64 bit installers there is a bug in WiX that causes the
WixSetDefaultPerMachineFolder action to incorrectly set
APPLICATIONFOLDER to the x86 value, so we override it. See
http://stackoverflow.com/questions/5479790/wix-how-to-override-c-program-files-x86-on-x64-machine-in-wixui-advanced-s
-->
<CustomAction
Id="OverwriteWixSetDefaultPerMachineFolder"
Property="WixPerMachineFolder"
Value="[APPLICATIONFOLDER]"
Execute="immediate"
/>
<InstallExecuteSequence> <InstallExecuteSequence>
<Custom Action="PreventDowngrading" After="FindRelatedProducts">NEWPRODUCTFOUND</Custom> <Custom Action="PreventDowngrading" After="FindRelatedProducts">NEWPRODUCTFOUND</Custom>
{fix_wix}
<RemoveExistingProducts After="InstallFinalize" /> <RemoveExistingProducts After="InstallFinalize" />
</InstallExecuteSequence> </InstallExecuteSequence>
<InstallUISequence> <InstallUISequence>
<Custom Action="PreventDowngrading" After="FindRelatedProducts">NEWPRODUCTFOUND</Custom> <Custom Action="PreventDowngrading" After="FindRelatedProducts">NEWPRODUCTFOUND</Custom>
{fix_wix}
</InstallUISequence> </InstallUISequence>
<UI> <UI>

View File

@ -6,11 +6,20 @@ __license__ = 'GPL v3'
__copyright__ = '2009, Kovid Goyal <kovid@kovidgoyal.net>' __copyright__ = '2009, Kovid Goyal <kovid@kovidgoyal.net>'
__docformat__ = 'restructuredtext en' __docformat__ = 'restructuredtext en'
import os, shutil, subprocess import os, shutil, subprocess, sys
from setup import __appname__, __version__, basenames from setup import __appname__, __version__, basenames
from setup.build_environment import is64bit
if is64bit:
WIXP = r'C:\Program Files (x86)\WiX Toolset v3.6'
UPGRADE_CODE = '5DD881FF-756B-4097-9D82-8C0F11D521EA'
MINVERHUMAN = 'Windows Vista'
else:
WIXP = r'C:\Program Files\WiX Toolset v3.6'
UPGRADE_CODE = 'BEB2A80D-E902-4DAD-ADF9-8BD2DA42CFE1'
MINVERHUMAN = 'Windows XP SP3'
WIXP = r'C:\Program Files\Windows Installer XML v3.5'
CANDLE = WIXP+r'\bin\candle.exe' CANDLE = WIXP+r'\bin\candle.exe'
LIGHT = WIXP+r'\bin\light.exe' LIGHT = WIXP+r'\bin\light.exe'
@ -28,8 +37,14 @@ class WixMixIn:
components = self.get_components_from_files() components = self.get_components_from_files()
wxs = template.format( wxs = template.format(
app = __appname__, app = __appname__,
appfolder = 'Calibre2' if is64bit else __appname__,
version = __version__, version = __version__,
upgrade_code = 'BEB2A80D-E902-4DAD-ADF9-8BD2DA42CFE1', upgrade_code = UPGRADE_CODE,
ProgramFilesFolder = 'ProgramFiles64Folder' if is64bit else 'ProgramFilesFolder',
x64 = ' 64bit' if is64bit else '',
minverhuman = MINVERHUMAN,
minver = '600' if is64bit else '501',
fix_wix = '<Custom Action="OverwriteWixSetDefaultPerMachineFolder" After="WixSetDefaultPerMachineFolder" />' if is64bit else '',
compression = self.opts.msi_compression, compression = self.opts.msi_compression,
app_components = components, app_components = components,
exe_map = self.smap, exe_map = self.smap,
@ -48,14 +63,15 @@ class WixMixIn:
with open(enusf, 'wb') as f: with open(enusf, 'wb') as f:
f.write(enus) f.write(enus)
wixobj = self.j(self.installer_dir, __appname__+'.wixobj') wixobj = self.j(self.installer_dir, __appname__+'.wixobj')
cmd = [CANDLE, '-nologo', '-ext', 'WiXUtilExtension', '-o', wixobj, wxsf] arch = 'x64' if is64bit else 'x86'
cmd = [CANDLE, '-nologo', '-arch', arch, '-ext', 'WiXUtilExtension', '-o', wixobj, wxsf]
self.info(*cmd) self.info(*cmd)
subprocess.check_call(cmd) self.run_wix(cmd)
self.installer = self.j(self.src_root, 'dist') self.installer = self.j(self.src_root, 'dist')
if not os.path.exists(self.installer): if not os.path.exists(self.installer):
os.makedirs(self.installer) os.makedirs(self.installer)
self.installer = self.j(self.installer, '%s-%s.msi' % (__appname__, self.installer = self.j(self.installer, '%s%s-%s.msi' % (__appname__,
__version__)) ('-64bit' if is64bit else ''), __version__))
license = self.j(self.src_root, 'LICENSE.rtf') license = self.j(self.src_root, 'LICENSE.rtf')
banner = self.j(self.src_root, 'icons', 'wix-banner.bmp') banner = self.j(self.src_root, 'icons', 'wix-banner.bmp')
dialog = self.j(self.src_root, 'icons', 'wix-dialog.bmp') dialog = self.j(self.src_root, 'icons', 'wix-dialog.bmp')
@ -66,13 +82,27 @@ class WixMixIn:
'-dWixUILicenseRtf='+license, '-dWixUILicenseRtf='+license,
'-dWixUIBannerBmp='+banner, '-dWixUIBannerBmp='+banner,
'-dWixUIDialogBmp='+dialog] '-dWixUIDialogBmp='+dialog]
cmd.append('-sice:ICE60') # No language in dlls warning cmd.extend([
'-sice:ICE60',# No language in dlls warning
'-sice:ICE61',# Allow upgrading with same version number
'-sice:ICE40', # Re-install mode overriden
'-sice:ICE69', # Shortcut components are part of a different feature than the files they point to
])
if self.opts.no_ice: if self.opts.no_ice:
cmd.append('-sval') cmd.append('-sval')
if self.opts.verbose: if self.opts.verbose:
cmd.append('-v') cmd.append('-v')
self.info(*cmd) self.info(*cmd)
subprocess.check_call(cmd) self.run_wix(cmd)
def run_wix(self, cmd):
p = subprocess.Popen(cmd, stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
ret = p.wait()
self.info(p.stdout.read())
self.info(p.stderr.read())
if ret != 0:
sys.exit(1)
def get_components_from_files(self): def get_components_from_files(self):
@ -103,7 +133,20 @@ class WixMixIn:
(fid, f, x, checksum), (fid, f, x, checksum),
'</Component>' '</Component>'
] ]
components.append(''.join(c)) if x.endswith('.exe') and not x.startswith('pdf'):
# Add the executable to app paths so that users can
# launch it from the run dialog even if it is not on
# the path. See http://msdn.microsoft.com/en-us/library/windows/desktop/ee872121(v=vs.85).aspx
c[-1:-1] = [
('<RegistryValue Root="HKLM" '
r'Key="SOFTWARE\Microsoft\Windows\CurrentVersion\App '
r'Paths\%s" Value="[#file_%d]" Type="string" />'%(x, fid)),
('<RegistryValue Root="HKLM" '
r'Key="SOFTWARE\Microsoft\Windows\CurrentVersion\App '
r'Paths\{0}" Name="Path" Value="[APPLICATIONFOLDER]" '
'Type="string" />'.format(x)),
]
components.append('\n'.join(c))
return components return components
components = process_dir(os.path.abspath(self.base)) components = process_dir(os.path.abspath(self.base))
@ -114,4 +157,3 @@ class WixMixIn:
return '\t\t\t\t'+'\n\t\t\t\t'.join(components) return '\t\t\t\t'+'\n\t\t\t\t'.join(components)

View File

@ -12,14 +12,14 @@ msgstr ""
"Report-Msgid-Bugs-To: Debian iso-codes team <pkg-isocodes-" "Report-Msgid-Bugs-To: Debian iso-codes team <pkg-isocodes-"
"devel@lists.alioth.debian.org>\n" "devel@lists.alioth.debian.org>\n"
"POT-Creation-Date: 2011-11-25 14:01+0000\n" "POT-Creation-Date: 2011-11-25 14:01+0000\n"
"PO-Revision-Date: 2012-11-18 13:55+0000\n" "PO-Revision-Date: 2012-11-25 22:19+0000\n"
"Last-Translator: Ferran Rius <frius64@hotmail.com>\n" "Last-Translator: Ferran Rius <frius64@hotmail.com>\n"
"Language-Team: Catalan <linux@softcatala.org>\n" "Language-Team: Catalan <linux@softcatala.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-19 04:37+0000\n" "X-Launchpad-Export-Date: 2012-11-26 04:39+0000\n"
"X-Generator: Launchpad (build 16278)\n" "X-Generator: Launchpad (build 16293)\n"
"Language: ca\n" "Language: ca\n"
#. name for aaa #. name for aaa
@ -15820,7 +15820,7 @@ msgstr "Ma'anyan"
#. name for mhz #. name for mhz
msgid "Mor (Mor Islands)" msgid "Mor (Mor Islands)"
msgstr "" msgstr "Mor (Illes de Mor)"
#. name for mia #. name for mia
msgid "Miami" msgid "Miami"
@ -15972,19 +15972,19 @@ msgstr "Malankuravan"
#. name for mjp #. name for mjp
msgid "Malapandaram" msgid "Malapandaram"
msgstr "" msgstr "Malapandaram"
#. name for mjq #. name for mjq
msgid "Malaryan" msgid "Malaryan"
msgstr "" msgstr "Malaryan"
#. name for mjr #. name for mjr
msgid "Malavedan" msgid "Malavedan"
msgstr "" msgstr "Malavedan"
#. name for mjs #. name for mjs
msgid "Miship" msgid "Miship"
msgstr "" msgstr "Miship"
#. name for mjt #. name for mjt
msgid "Sauria Paharia" msgid "Sauria Paharia"
@ -15992,11 +15992,11 @@ msgstr ""
#. name for mju #. name for mju
msgid "Manna-Dora" msgid "Manna-Dora"
msgstr "" msgstr "Manna-Dora"
#. name for mjv #. name for mjv
msgid "Mannan" msgid "Mannan"
msgstr "" msgstr "Mannan"
#. name for mjw #. name for mjw
msgid "Karbi" msgid "Karbi"
@ -16004,23 +16004,23 @@ msgstr "Karbi"
#. name for mjx #. name for mjx
msgid "Mahali" msgid "Mahali"
msgstr "" msgstr "Mahali"
#. name for mjy #. name for mjy
msgid "Mahican" msgid "Mahican"
msgstr "" msgstr "Mohicà"
#. name for mjz #. name for mjz
msgid "Majhi" msgid "Majhi"
msgstr "" msgstr "Majhi"
#. name for mka #. name for mka
msgid "Mbre" msgid "Mbre"
msgstr "" msgstr "Mbre"
#. name for mkb #. name for mkb
msgid "Mal Paharia" msgid "Mal Paharia"
msgstr "" msgstr "Mal Paharia"
#. name for mkc #. name for mkc
msgid "Siliput" msgid "Siliput"
@ -16032,15 +16032,15 @@ msgstr "Macedoni"
#. name for mke #. name for mke
msgid "Mawchi" msgid "Mawchi"
msgstr "" msgstr "Mawchi"
#. name for mkf #. name for mkf
msgid "Miya" msgid "Miya"
msgstr "" msgstr "Miya"
#. name for mkg #. name for mkg
msgid "Mak (China)" msgid "Mak (China)"
msgstr "" msgstr "Mak (Xina)"
#. name for mki #. name for mki
msgid "Dhatki" msgid "Dhatki"
@ -16048,7 +16048,7 @@ msgstr ""
#. name for mkj #. name for mkj
msgid "Mokilese" msgid "Mokilese"
msgstr "" msgstr "Mokilès"
#. name for mkk #. name for mkk
msgid "Byep" msgid "Byep"
@ -16056,11 +16056,11 @@ msgstr ""
#. name for mkl #. name for mkl
msgid "Mokole" msgid "Mokole"
msgstr "" msgstr "Mokole"
#. name for mkm #. name for mkm
msgid "Moklen" msgid "Moklen"
msgstr "" msgstr "Moklen"
#. name for mkn #. name for mkn
msgid "Malay; Kupang" msgid "Malay; Kupang"
@ -16068,11 +16068,11 @@ msgstr "Malay; Kupang"
#. name for mko #. name for mko
msgid "Mingang Doso" msgid "Mingang Doso"
msgstr "" msgstr "Mingang Doso"
#. name for mkp #. name for mkp
msgid "Moikodi" msgid "Moikodi"
msgstr "" msgstr "Moikodi"
#. name for mkq #. name for mkq
msgid "Miwok; Bay" msgid "Miwok; Bay"
@ -16080,7 +16080,7 @@ msgstr "Miwok; badia"
#. name for mkr #. name for mkr
msgid "Malas" msgid "Malas"
msgstr "" msgstr "Malas"
#. name for mks #. name for mks
msgid "Mixtec; Silacayoapan" msgid "Mixtec; Silacayoapan"
@ -16092,11 +16092,11 @@ msgstr ""
#. name for mku #. name for mku
msgid "Maninka; Konyanka" msgid "Maninka; Konyanka"
msgstr "" msgstr "Maninka; Konyanka"
#. name for mkv #. name for mkv
msgid "Mafea" msgid "Mafea"
msgstr "" msgstr "Mafea"
#. name for mkw #. name for mkw
msgid "Kituba (Congo)" msgid "Kituba (Congo)"
@ -16108,19 +16108,19 @@ msgstr "Manobo; Kinamiging"
#. name for mky #. name for mky
msgid "Makian; East" msgid "Makian; East"
msgstr "" msgstr "Makià; Oriental"
#. name for mkz #. name for mkz
msgid "Makasae" msgid "Makasae"
msgstr "" msgstr "Makasae"
#. name for mla #. name for mla
msgid "Malo" msgid "Malo"
msgstr "" msgstr "Malo"
#. name for mlb #. name for mlb
msgid "Mbule" msgid "Mbule"
msgstr "" msgstr "Mbule"
#. name for mlc #. name for mlc
msgid "Cao Lan" msgid "Cao Lan"
@ -16128,15 +16128,15 @@ msgstr ""
#. name for mld #. name for mld
msgid "Malakhel" msgid "Malakhel"
msgstr "" msgstr "Malakhel"
#. name for mle #. name for mle
msgid "Manambu" msgid "Manambu"
msgstr "" msgstr "Manambu"
#. name for mlf #. name for mlf
msgid "Mal" msgid "Mal"
msgstr "" msgstr "Mal"
#. name for mlg #. name for mlg
msgid "Malagasy" msgid "Malagasy"
@ -16144,15 +16144,15 @@ msgstr "Malgaix"
#. name for mlh #. name for mlh
msgid "Mape" msgid "Mape"
msgstr "" msgstr "Mape"
#. name for mli #. name for mli
msgid "Malimpung" msgid "Malimpung"
msgstr "" msgstr "Malimpung"
#. name for mlj #. name for mlj
msgid "Miltu" msgid "Miltu"
msgstr "" msgstr "Miltu"
#. name for mlk #. name for mlk
msgid "Ilwana" msgid "Ilwana"
@ -16160,19 +16160,19 @@ msgstr ""
#. name for mll #. name for mll
msgid "Malua Bay" msgid "Malua Bay"
msgstr "" msgstr "Malua"
#. name for mlm #. name for mlm
msgid "Mulam" msgid "Mulam"
msgstr "" msgstr "Mulam"
#. name for mln #. name for mln
msgid "Malango" msgid "Malango"
msgstr "" msgstr "Malango"
#. name for mlo #. name for mlo
msgid "Mlomp" msgid "Mlomp"
msgstr "" msgstr "Mlomp"
#. name for mlp #. name for mlp
msgid "Bargam" msgid "Bargam"
@ -16188,11 +16188,11 @@ msgstr ""
#. name for mls #. name for mls
msgid "Masalit" msgid "Masalit"
msgstr "" msgstr "Masalit"
#. name for mlt #. name for mlt
msgid "Maltese" msgid "Maltese"
msgstr "" msgstr "Maltès"
#. name for mlu #. name for mlu
msgid "To'abaita" msgid "To'abaita"
@ -16200,27 +16200,27 @@ msgstr ""
#. name for mlv #. name for mlv
msgid "Motlav" msgid "Motlav"
msgstr "" msgstr "Motlau"
#. name for mlw #. name for mlw
msgid "Moloko" msgid "Moloko"
msgstr "" msgstr "Melokwo"
#. name for mlx #. name for mlx
msgid "Malfaxal" msgid "Malfaxal"
msgstr "" msgstr "Malfaxal"
#. name for mlz #. name for mlz
msgid "Malaynon" msgid "Malaynon"
msgstr "" msgstr "Malaynon"
#. name for mma #. name for mma
msgid "Mama" msgid "Mama"
msgstr "" msgstr "Mama"
#. name for mmb #. name for mmb
msgid "Momina" msgid "Momina"
msgstr "" msgstr "Momina"
#. name for mmc #. name for mmc
msgid "Mazahua; Michoacán" msgid "Mazahua; Michoacán"
@ -16228,15 +16228,15 @@ msgstr "Mazahua; Michoacan"
#. name for mmd #. name for mmd
msgid "Maonan" msgid "Maonan"
msgstr "" msgstr "Maonan"
#. name for mme #. name for mme
msgid "Mae" msgid "Mae"
msgstr "" msgstr "Mae"
#. name for mmf #. name for mmf
msgid "Mundat" msgid "Mundat"
msgstr "" msgstr "Mundat"
#. name for mmg #. name for mmg
msgid "Ambrym; North" msgid "Ambrym; North"
@ -16244,31 +16244,31 @@ msgstr ""
#. name for mmh #. name for mmh
msgid "Mehináku" msgid "Mehináku"
msgstr "" msgstr "Mehinaku"
#. name for mmi #. name for mmi
msgid "Musar" msgid "Musar"
msgstr "" msgstr "Musar"
#. name for mmj #. name for mmj
msgid "Majhwar" msgid "Majhwar"
msgstr "" msgstr "Majhwar"
#. name for mmk #. name for mmk
msgid "Mukha-Dora" msgid "Mukha-Dora"
msgstr "" msgstr "Mukha-Dora"
#. name for mml #. name for mml
msgid "Man Met" msgid "Man Met"
msgstr "" msgstr "Man Met"
#. name for mmm #. name for mmm
msgid "Maii" msgid "Maii"
msgstr "" msgstr "Maii"
#. name for mmn #. name for mmn
msgid "Mamanwa" msgid "Mamanwa"
msgstr "" msgstr "Mamanwa"
#. name for mmo #. name for mmo
msgid "Buang; Mangga" msgid "Buang; Mangga"
@ -16280,7 +16280,7 @@ msgstr ""
#. name for mmq #. name for mmq
msgid "Musak" msgid "Musak"
msgstr "" msgstr "Musak"
#. name for mmr #. name for mmr
msgid "Miao; Western Xiangxi" msgid "Miao; Western Xiangxi"
@ -16288,15 +16288,15 @@ msgstr "Miao; Xiangxi occidental"
#. name for mmt #. name for mmt
msgid "Malalamai" msgid "Malalamai"
msgstr "" msgstr "Malalamai"
#. name for mmu #. name for mmu
msgid "Mmaala" msgid "Mmaala"
msgstr "" msgstr "Mmaala"
#. name for mmv #. name for mmv
msgid "Miriti" msgid "Miriti"
msgstr "" msgstr "Mirití"
#. name for mmw #. name for mmw
msgid "Emae" msgid "Emae"
@ -16304,31 +16304,31 @@ msgstr ""
#. name for mmx #. name for mmx
msgid "Madak" msgid "Madak"
msgstr "" msgstr "Madak"
#. name for mmy #. name for mmy
msgid "Migaama" msgid "Migaama"
msgstr "" msgstr "Migaama"
#. name for mmz #. name for mmz
msgid "Mabaale" msgid "Mabaale"
msgstr "" msgstr "Mabaale"
#. name for mna #. name for mna
msgid "Mbula" msgid "Mbula"
msgstr "" msgstr "Mbula"
#. name for mnb #. name for mnb
msgid "Muna" msgid "Muna"
msgstr "" msgstr "Muna"
#. name for mnc #. name for mnc
msgid "Manchu" msgid "Manchu"
msgstr "" msgstr "Manxú"
#. name for mnd #. name for mnd
msgid "Mondé" msgid "Mondé"
msgstr "" msgstr "Mondé"
#. name for mne #. name for mne
msgid "Naba" msgid "Naba"
@ -16336,7 +16336,7 @@ msgstr ""
#. name for mnf #. name for mnf
msgid "Mundani" msgid "Mundani"
msgstr "" msgstr "Mundani"
#. name for mng #. name for mng
msgid "Mnong; Eastern" msgid "Mnong; Eastern"
@ -16344,19 +16344,19 @@ msgstr "Mnong; oriental"
#. name for mnh #. name for mnh
msgid "Mono (Democratic Republic of Congo)" msgid "Mono (Democratic Republic of Congo)"
msgstr "" msgstr "Mono (República Democràtica del Congo)"
#. name for mni #. name for mni
msgid "Manipuri" msgid "Manipuri"
msgstr "" msgstr "Manipurí"
#. name for mnj #. name for mnj
msgid "Munji" msgid "Munji"
msgstr "" msgstr "Munji"
#. name for mnk #. name for mnk
msgid "Mandinka" msgid "Mandinka"
msgstr "" msgstr "Manding"
#. name for mnl #. name for mnl
msgid "Tiale" msgid "Tiale"
@ -16364,7 +16364,7 @@ msgstr ""
#. name for mnm #. name for mnm
msgid "Mapena" msgid "Mapena"
msgstr "" msgstr "Mapena"
#. name for mnn #. name for mnn
msgid "Mnong; Southern" msgid "Mnong; Southern"
@ -16376,23 +16376,23 @@ msgstr "Xinès; Min Bei"
#. name for mnq #. name for mnq
msgid "Minriq" msgid "Minriq"
msgstr "" msgstr "Minriq"
#. name for mnr #. name for mnr
msgid "Mono (USA)" msgid "Mono (USA)"
msgstr "" msgstr "Mono (Estats Units)"
#. name for mns #. name for mns
msgid "Mansi" msgid "Mansi"
msgstr "" msgstr "Mansi"
#. name for mnt #. name for mnt
msgid "Maykulan" msgid "Maykulan"
msgstr "" msgstr "Maykulan"
#. name for mnu #. name for mnu
msgid "Mer" msgid "Mer"
msgstr "" msgstr "Mer"
#. name for mnv #. name for mnv
msgid "Rennell-Bellona" msgid "Rennell-Bellona"
@ -16400,59 +16400,59 @@ msgstr ""
#. name for mnw #. name for mnw
msgid "Mon" msgid "Mon"
msgstr "" msgstr "Mon"
#. name for mnx #. name for mnx
msgid "Manikion" msgid "Manikion"
msgstr "" msgstr "Manikion"
#. name for mny #. name for mny
msgid "Manyawa" msgid "Manyawa"
msgstr "" msgstr "Manyawa"
#. name for mnz #. name for mnz
msgid "Moni" msgid "Moni"
msgstr "" msgstr "Moni"
#. name for moa #. name for moa
msgid "Mwan" msgid "Mwan"
msgstr "" msgstr "Mwan"
#. name for moc #. name for moc
msgid "Mocoví" msgid "Mocoví"
msgstr "" msgstr "Mocobí"
#. name for mod #. name for mod
msgid "Mobilian" msgid "Mobilian"
msgstr "" msgstr "Mobilià"
#. name for moe #. name for moe
msgid "Montagnais" msgid "Montagnais"
msgstr "" msgstr "Montanyès"
#. name for mog #. name for mog
msgid "Mongondow" msgid "Mongondow"
msgstr "" msgstr "Mongondow"
#. name for moh #. name for moh
msgid "Mohawk" msgid "Mohawk"
msgstr "" msgstr "Mohawk"
#. name for moi #. name for moi
msgid "Mboi" msgid "Mboi"
msgstr "" msgstr "Mboi"
#. name for moj #. name for moj
msgid "Monzombo" msgid "Monzombo"
msgstr "" msgstr "Monzombo"
#. name for mok #. name for mok
msgid "Morori" msgid "Morori"
msgstr "" msgstr "Morori"
#. name for mom #. name for mom
msgid "Mangue" msgid "Mangue"
msgstr "" msgstr "Monimbo"
#. name for mon #. name for mon
msgid "Mongolian" msgid "Mongolian"
@ -16460,23 +16460,23 @@ msgstr "mongol"
#. name for moo #. name for moo
msgid "Monom" msgid "Monom"
msgstr "" msgstr "Monom"
#. name for mop #. name for mop
msgid "Mopán Maya" msgid "Mopán Maya"
msgstr "" msgstr "Maya; Mopan"
#. name for moq #. name for moq
msgid "Mor (Bomberai Peninsula)" msgid "Mor (Bomberai Peninsula)"
msgstr "" msgstr "Mor (Península de Bomberai)"
#. name for mor #. name for mor
msgid "Moro" msgid "Moro"
msgstr "" msgstr "Moro"
#. name for mos #. name for mos
msgid "Mossi" msgid "Mossi"
msgstr "" msgstr "Moré"
#. name for mot #. name for mot
msgid "Barí" msgid "Barí"
@ -16484,19 +16484,19 @@ msgstr ""
#. name for mou #. name for mou
msgid "Mogum" msgid "Mogum"
msgstr "" msgstr "Mogum"
#. name for mov #. name for mov
msgid "Mohave" msgid "Mohave"
msgstr "" msgstr "Mohave"
#. name for mow #. name for mow
msgid "Moi (Congo)" msgid "Moi (Congo)"
msgstr "" msgstr "Moi (Congo)"
#. name for mox #. name for mox
msgid "Molima" msgid "Molima"
msgstr "" msgstr "Molima"
#. name for moy #. name for moy
msgid "Shekkacho" msgid "Shekkacho"
@ -16504,47 +16504,47 @@ msgstr ""
#. name for moz #. name for moz
msgid "Mukulu" msgid "Mukulu"
msgstr "" msgstr "Mukulu"
#. name for mpa #. name for mpa
msgid "Mpoto" msgid "Mpoto"
msgstr "" msgstr "Mpoto"
#. name for mpb #. name for mpb
msgid "Mullukmulluk" msgid "Mullukmulluk"
msgstr "" msgstr "Mullukmulluk"
#. name for mpc #. name for mpc
msgid "Mangarayi" msgid "Mangarayi"
msgstr "" msgstr "Mangarayi"
#. name for mpd #. name for mpd
msgid "Machinere" msgid "Machinere"
msgstr "" msgstr "Machineri"
#. name for mpe #. name for mpe
msgid "Majang" msgid "Majang"
msgstr "" msgstr "Masongo"
#. name for mpg #. name for mpg
msgid "Marba" msgid "Marba"
msgstr "" msgstr "Marba"
#. name for mph #. name for mph
msgid "Maung" msgid "Maung"
msgstr "" msgstr "Maung"
#. name for mpi #. name for mpi
msgid "Mpade" msgid "Mpade"
msgstr "" msgstr "Mpade"
#. name for mpj #. name for mpj
msgid "Martu Wangka" msgid "Martu Wangka"
msgstr "" msgstr "Martu Wangka"
#. name for mpk #. name for mpk
msgid "Mbara (Chad)" msgid "Mbara (Chad)"
msgstr "" msgstr "Mbara (Txad)"
#. name for mpl #. name for mpl
msgid "Watut; Middle" msgid "Watut; Middle"
@ -16556,7 +16556,7 @@ msgstr "Mixtec; Yosondua"
#. name for mpn #. name for mpn
msgid "Mindiri" msgid "Mindiri"
msgstr "" msgstr "Mindiri"
#. name for mpo #. name for mpo
msgid "Miu" msgid "Miu"
@ -16676,7 +16676,7 @@ msgstr ""
#. name for mqs #. name for mqs
msgid "Makian; West" msgid "Makian; West"
msgstr "" msgstr "Makià; Occidental"
#. name for mqt #. name for mqt
msgid "Mok" msgid "Mok"
@ -16788,7 +16788,7 @@ msgstr "Marghi; Central"
#. name for mru #. name for mru
msgid "Mono (Cameroon)" msgid "Mono (Cameroon)"
msgstr "" msgstr "Mono (Camerun)"
#. name for mrv #. name for mrv
msgid "Mangareva" msgid "Mangareva"
@ -16820,7 +16820,7 @@ msgstr ""
#. name for msc #. name for msc
msgid "Maninka; Sankaran" msgid "Maninka; Sankaran"
msgstr "" msgstr "Maninka; Sankaran"
#. name for msd #. name for msd
msgid "Yucatec Maya Sign Language" msgid "Yucatec Maya Sign Language"
@ -16928,7 +16928,7 @@ msgstr ""
#. name for mte #. name for mte
msgid "Mono (Solomon Islands)" msgid "Mono (Solomon Islands)"
msgstr "" msgstr "Mono (Illes Salomó)"
#. name for mtf #. name for mtf
msgid "Murik (Papua New Guinea)" msgid "Murik (Papua New Guinea)"
@ -17140,7 +17140,7 @@ msgstr ""
#. name for mvl #. name for mvl
msgid "Mbara (Australia)" msgid "Mbara (Australia)"
msgstr "" msgstr "Mbara (Austràlia)"
#. name for mvm #. name for mvm
msgid "Muya" msgid "Muya"
@ -17356,7 +17356,7 @@ msgstr ""
#. name for mxn #. name for mxn
msgid "Moi (Indonesia)" msgid "Moi (Indonesia)"
msgstr "" msgstr "Moi (Indonèsia)"
#. name for mxo #. name for mxo
msgid "Mbowe" msgid "Mbowe"
@ -17468,7 +17468,7 @@ msgstr ""
#. name for myq #. name for myq
msgid "Maninka; Forest" msgid "Maninka; Forest"
msgstr "" msgstr "Maninka; Forest"
#. name for myr #. name for myr
msgid "Muniche" msgid "Muniche"
@ -20292,7 +20292,7 @@ msgstr ""
#. name for pbl #. name for pbl
msgid "Mak (Nigeria)" msgid "Mak (Nigeria)"
msgstr "" msgstr "Mak (Nigèria)"
#. name for pbn #. name for pbn
msgid "Kpasam" msgid "Kpasam"

File diff suppressed because it is too large Load Diff

View File

@ -29,6 +29,7 @@ STAGING_DIR = '/root/staging'
def installers(): def installers():
installers = list(map(installer_name, ('dmg', 'msi', 'tar.bz2'))) installers = list(map(installer_name, ('dmg', 'msi', 'tar.bz2')))
installers.append(installer_name('tar.bz2', is64bit=True)) installers.append(installer_name('tar.bz2', is64bit=True))
installers.append(installer_name('msi', is64bit=True))
installers.insert(0, 'dist/%s-%s.tar.xz'%(__appname__, __version__)) installers.insert(0, 'dist/%s-%s.tar.xz'%(__appname__, __version__))
installers.append('dist/%s-portable-installer-%s.exe'%(__appname__, __version__)) installers.append('dist/%s-portable-installer-%s.exe'%(__appname__, __version__))
return installers return installers
@ -40,7 +41,7 @@ def installer_description(fname):
bits = '32' if 'i686' in fname else '64' bits = '32' if 'i686' in fname else '64'
return bits + 'bit Linux binary' return bits + 'bit Linux binary'
if fname.endswith('.msi'): if fname.endswith('.msi'):
return 'Windows installer' return 'Windows %sinstaller'%('64bit ' if '64bit' in fname else '')
if fname.endswith('.dmg'): if fname.endswith('.dmg'):
return 'OS X dmg' return 'OS X dmg'
if fname.endswith('.exe'): if fname.endswith('.exe'):

View File

@ -4,7 +4,7 @@ __license__ = 'GPL v3'
__copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net' __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net'
__docformat__ = 'restructuredtext en' __docformat__ = 'restructuredtext en'
__appname__ = u'calibre' __appname__ = u'calibre'
numeric_version = (0, 9, 7) numeric_version = (0, 9, 8)
__version__ = u'.'.join(map(unicode, numeric_version)) __version__ = u'.'.join(map(unicode, numeric_version))
__author__ = u"Kovid Goyal <kovid@kovidgoyal.net>" __author__ = u"Kovid Goyal <kovid@kovidgoyal.net>"
@ -28,7 +28,7 @@ isunix = isosx or islinux
isportable = os.environ.get('CALIBRE_PORTABLE_BUILD', None) is not None isportable = os.environ.get('CALIBRE_PORTABLE_BUILD', None) is not None
ispy3 = sys.version_info.major > 2 ispy3 = sys.version_info.major > 2
isxp = iswindows and sys.getwindowsversion().major < 6 isxp = iswindows and sys.getwindowsversion().major < 6
is64bit = sys.maxint > (1 << 32) is64bit = sys.maxsize > (1 << 32)
isworker = os.environ.has_key('CALIBRE_WORKER') or os.environ.has_key('CALIBRE_SIMPLE_WORKER') isworker = os.environ.has_key('CALIBRE_WORKER') or os.environ.has_key('CALIBRE_SIMPLE_WORKER')
if isworker: if isworker:
os.environ.pop('CALIBRE_FORCE_ANSI', None) os.environ.pop('CALIBRE_FORCE_ANSI', None)
@ -44,6 +44,19 @@ winerror = importlib.import_module('winerror') if iswindows else None
win32api = importlib.import_module('win32api') if iswindows else None win32api = importlib.import_module('win32api') if iswindows else None
fcntl = None if iswindows else importlib.import_module('fcntl') fcntl = None if iswindows else importlib.import_module('fcntl')
_osx_ver = None
def get_osx_version():
global _osx_ver
if _osx_ver is None:
import platform
from collections import namedtuple
OSX = namedtuple('OSX', 'major minor tertiary')
try:
_osx_ver = OSX(*(map(int, platform.mac_ver()[0].split('.'))))
except:
_osx_ver = OSX(0, 0, 0)
return _osx_ver
filesystem_encoding = sys.getfilesystemencoding() filesystem_encoding = sys.getfilesystemencoding()
if filesystem_encoding is None: filesystem_encoding = 'utf-8' if filesystem_encoding is None: filesystem_encoding = 'utf-8'
else: else:

View File

@ -1565,6 +1565,7 @@ class StorePublioStore(StoreBase):
headquarters = 'PL' headquarters = 'PL'
formats = ['EPUB', 'MOBI', 'PDF'] formats = ['EPUB', 'MOBI', 'PDF']
affiliate = True
class StoreRW2010Store(StoreBase): class StoreRW2010Store(StoreBase):
name = 'RW2010' name = 'RW2010'

View File

@ -147,9 +147,11 @@ def print_basic_debug_info(out=None):
if out is None: out = sys.stdout if out is None: out = sys.stdout
out = functools.partial(prints, file=out) out = functools.partial(prints, file=out)
import platform import platform
from calibre.constants import __appname__, get_version, isportable, isosx from calibre.constants import (__appname__, get_version, isportable, isosx,
out(__appname__, get_version(), 'Portable' if isportable else '') isfrozen, is64bit)
out(platform.platform(), platform.system()) out(__appname__, get_version(), 'Portable' if isportable else '',
'isfrozen:', isfrozen, 'is64bit:', is64bit)
out(platform.platform(), platform.system(), platform.architecture())
out(platform.system_alias(platform.system(), platform.release(), out(platform.system_alias(platform.system(), platform.release(),
platform.version())) platform.version()))
out('Python', platform.python_version()) out('Python', platform.python_version())

View File

@ -182,7 +182,7 @@ def debug(ioreg_to_tmp=False, buf=None, plugins=None,
out(ioreg) out(ioreg)
if hasattr(buf, 'getvalue'): if hasattr(buf, 'getvalue'):
return buf.getvalue().decode('utf-8') return buf.getvalue().decode('utf-8', 'replace')
finally: finally:
sys.stdout = oldo sys.stdout = oldo
sys.stderr = olde sys.stderr = olde

View File

@ -232,7 +232,7 @@ class ANDROID(USBMS):
'THINKPAD_TABLET', 'SGH-T989', 'YP-G70', 'STORAGE_DEVICE', 'THINKPAD_TABLET', 'SGH-T989', 'YP-G70', 'STORAGE_DEVICE',
'ADVANCED', 'SGH-I727', 'USB_FLASH_DRIVER', 'ANDROID', 'ADVANCED', 'SGH-I727', 'USB_FLASH_DRIVER', 'ANDROID',
'S5830I_CARD', 'MID7042', 'LINK-CREATE', '7035', 'VIEWPAD_7E', 'S5830I_CARD', 'MID7042', 'LINK-CREATE', '7035', 'VIEWPAD_7E',
'NOVO7', 'MB526'] 'NOVO7', 'MB526', '_USB#WYK7MSF8KE', 'TABLET_PC']
WINDOWS_CARD_A_MEM = ['ANDROID_PHONE', 'GT-I9000_CARD', 'SGH-I897', WINDOWS_CARD_A_MEM = ['ANDROID_PHONE', 'GT-I9000_CARD', 'SGH-I897',
'FILE-STOR_GADGET', 'SGH-T959_CARD', 'SGH-T959', 'SAMSUNG_ANDROID', 'GT-P1000_CARD', 'FILE-STOR_GADGET', 'SGH-T959_CARD', 'SGH-T959', 'SAMSUNG_ANDROID', 'GT-P1000_CARD',
'A70S', 'A101IT', '7', 'INCREDIBLE', 'A7EB', 'SGH-T849_CARD', 'A70S', 'A101IT', '7', 'INCREDIBLE', 'A7EB', 'SGH-T849_CARD',
@ -243,7 +243,7 @@ class ANDROID(USBMS):
'FILE-CD_GADGET', 'GT-I9001_CARD', 'USB_2.0', 'XT875', 'FILE-CD_GADGET', 'GT-I9001_CARD', 'USB_2.0', 'XT875',
'UMS_COMPOSITE', 'PRO', '.KOBO_VOX', 'SGH-T989_CARD', 'SGH-I727', 'UMS_COMPOSITE', 'PRO', '.KOBO_VOX', 'SGH-T989_CARD', 'SGH-I727',
'USB_FLASH_DRIVER', 'ANDROID', 'MID7042', '7035', 'VIEWPAD_7E', 'USB_FLASH_DRIVER', 'ANDROID', 'MID7042', '7035', 'VIEWPAD_7E',
'NOVO7', 'ADVANCED'] 'NOVO7', 'ADVANCED', 'TABLET_PC']
OSX_MAIN_MEM = 'Android Device Main Memory' OSX_MAIN_MEM = 'Android Device Main Memory'

View File

@ -227,7 +227,7 @@ class ITUNES(DriverBase):
# 0x1297 iPhone 4 # 0x1297 iPhone 4
# 0x129a iPad # 0x129a iPad
# 0x129f iPad2 (WiFi) # 0x129f iPad2 (WiFi)
# 0x12a0 iPhone 4S # 0x12a0 iPhone 4S (GSM)
# 0x12a2 iPad2 (GSM) # 0x12a2 iPad2 (GSM)
# 0x12a3 iPad2 (CDMA) # 0x12a3 iPad2 (CDMA)
# 0x12a6 iPad3 (GSM) # 0x12a6 iPad3 (GSM)
@ -1196,10 +1196,25 @@ class ITUNES(DriverBase):
logger().error(" Device|Books playlist not found") logger().error(" Device|Books playlist not found")
# Add the passed book to the Device|Books playlist # Add the passed book to the Device|Books playlist
attempts = 2
delay = 1.0
while attempts:
try:
added = pl.add(appscript.mactypes.File(fpath),to=pl) added = pl.add(appscript.mactypes.File(fpath),to=pl)
if False: if False:
logger().info(" '%s' added to Device|Books" % metadata.title) logger().info(" '%s' added to Device|Books" % metadata.title)
break
except:
attempts -= 1
if DEBUG:
logger().warning(" failed to add book, waiting %.1f seconds to try again (attempt #%d)" %
(delay, (3 - attempts)))
time.sleep(delay)
else:
if DEBUG:
logger().error(" failed to add '%s' to Device|Books" % metadata.title)
raise UserFeedback("Unable to add '%s' in direct connect mode" % metadata.title,
details=None, level=UserFeedback.ERROR)
self._wait_for_writable_metadata(added) self._wait_for_writable_metadata(added)
return added return added

View File

@ -60,6 +60,8 @@ class Book(Book_):
self.contentID = None self.contentID = None
self.current_shelves = [] self.current_shelves = []
self.kobo_collections = [] self.kobo_collections = []
self.kobo_series = None
self.kobo_series_number = None
if thumbnail_name is not None: if thumbnail_name is not None:
self.thumbnail = ImageWrapper(thumbnail_name) self.thumbnail = ImageWrapper(thumbnail_name)

View File

@ -33,7 +33,7 @@ class KOBO(USBMS):
gui_name = 'Kobo Reader' gui_name = 'Kobo Reader'
description = _('Communicate with the Kobo Reader') description = _('Communicate with the Kobo Reader')
author = 'Timothy Legge and David Forrester' author = 'Timothy Legge and David Forrester'
version = (2, 0, 3) version = (2, 0, 4)
dbversion = 0 dbversion = 0
fwversion = 0 fwversion = 0
@ -1201,8 +1201,9 @@ class KOBOTOUCH(KOBO):
author = 'David Forrester' author = 'David Forrester'
description = 'Communicate with the Kobo Touch, Glo and Mini firmware. Based on the existing Kobo driver by %s.' % (KOBO.author) description = 'Communicate with the Kobo Touch, Glo and Mini firmware. Based on the existing Kobo driver by %s.' % (KOBO.author)
supported_dbversion = 70 supported_dbversion = 75
min_supported_dbversion = 53 min_supported_dbversion = 53
min_dbversion_series = 65
booklist_class = KTCollectionsBookList booklist_class = KTCollectionsBookList
book_class = Book book_class = Book
@ -1236,16 +1237,21 @@ class KOBOTOUCH(KOBO):
' by default they are no longer displayed as there is no good reason to ' ' by default they are no longer displayed as there is no good reason to '
'see them. Enable if you wish to see/delete them.'), 'see them. Enable if you wish to see/delete them.'),
_('Show Recommendations') + _('Show Recommendations') +
':::'+_('Kobo now shows recommendations on the device. In some case these have ' ':::'+_('Kobo shows recommendations on the device. In some cases these have '
'files but in other cases they are just pointers to the web site to buy. ' 'files but in other cases they are just pointers to the web site to buy. '
'Enable if you wish to see/delete them.'), 'Enable if you wish to see/delete them.'),
_('Set Series information') +
':::'+_('The book lists on the Kobo devices can display series information. '
'This is not read by the device from the sideloaded books. '
'Series information can only be added to the device after the book has been processed by the device. '
'Enable if you wish to set series information.'),
_('Attempt to support newer firmware') + _('Attempt to support newer firmware') +
':::'+_('Kobo routinely updates the firmware and the ' ':::'+_('Kobo routinely updates the firmware and the '
'database version. With this option Calibre will attempt ' 'database version. With this option Calibre will attempt '
'to perform full read-write functionality - Here be Dragons!! ' 'to perform full read-write functionality - Here be Dragons!! '
'Enable only if you are comfortable with restoring your kobo ' 'Enable only if you are comfortable with restoring your kobo '
'to factory defaults and testing software. ' 'to factory defaults and testing software. '
'This driver supports firmware V2.0.x and DBVersion up to ' + unicode(supported_dbversion)), 'This driver supports firmware V2.x.x and DBVersion up to ' + unicode(supported_dbversion)),
_('Title to test when debugging') + _('Title to test when debugging') +
':::'+_('Part of title of a book that can be used when doing some tests for debugging. ' ':::'+_('Part of title of a book that can be used when doing some tests for debugging. '
'The test is to see if the string is contained in the title of a book. ' 'The test is to see if the string is contained in the title of a book. '
@ -1263,6 +1269,7 @@ class KOBOTOUCH(KOBO):
False, False,
False, False,
False, False,
False,
u'' u''
] ]
@ -1275,8 +1282,9 @@ class KOBOTOUCH(KOBO):
OPT_SHOW_EXPIRED_BOOK_RECORDS = 6 OPT_SHOW_EXPIRED_BOOK_RECORDS = 6
OPT_SHOW_PREVIEWS = 7 OPT_SHOW_PREVIEWS = 7
OPT_SHOW_RECOMMENDATIONS = 8 OPT_SHOW_RECOMMENDATIONS = 8
OPT_SUPPORT_NEWER_FIRMWARE = 9 OPT_UPDATE_SERIES_DETAILS = 9
OPT_DEBUGGING_TITLE = 10 OPT_SUPPORT_NEWER_FIRMWARE = 10
OPT_DEBUGGING_TITLE = 11
opts = None opts = None
@ -1364,7 +1372,7 @@ class KOBOTOUCH(KOBO):
for idx,b in enumerate(bl): for idx,b in enumerate(bl):
bl_cache[b.lpath] = idx bl_cache[b.lpath] = idx
def update_booklist(prefix, path, title, authors, mime, date, ContentID, ContentType, ImageID, readstatus, MimeType, expired, favouritesindex, accessibility, isdownloaded, bookshelves): def update_booklist(prefix, path, title, authors, mime, date, ContentID, ContentType, ImageID, readstatus, MimeType, expired, favouritesindex, accessibility, isdownloaded, series, seriesnumber, bookshelves):
show_debug = self.is_debugging_title(title) show_debug = self.is_debugging_title(title)
# show_debug = authors == 'L. Frank Baum' # show_debug = authors == 'L. Frank Baum'
if show_debug: if show_debug:
@ -1442,9 +1450,7 @@ class KOBOTOUCH(KOBO):
debug_print('KoboTouch:update_booklist - the authors=', bl[idx].authors) debug_print('KoboTouch:update_booklist - the authors=', bl[idx].authors)
debug_print('KoboTouch:update_booklist - application_id=', bl[idx].application_id) debug_print('KoboTouch:update_booklist - application_id=', bl[idx].application_id)
bl_cache[lpath] = None bl_cache[lpath] = None
# removed to allow recognizing of ePub with an UUID inside
# if bl[idx].title_sort is not None:
# bl[idx].title = bl[idx].title_sort
if ImageID is not None: if ImageID is not None:
imagename = self.imagefilename_from_imageID(ImageID) imagename = self.imagefilename_from_imageID(ImageID)
if imagename is not None: if imagename is not None:
@ -1461,6 +1467,8 @@ class KOBOTOUCH(KOBO):
if show_debug: if show_debug:
debug_print("KoboTouch:update_booklist - ContentID='%s'"%ContentID) debug_print("KoboTouch:update_booklist - ContentID='%s'"%ContentID)
bl[idx].contentID = ContentID bl[idx].contentID = ContentID
bl[idx].kobo_series = series
bl[idx].kobo_series_number = seriesnumber
if lpath in playlist_map: if lpath in playlist_map:
bl[idx].device_collections = playlist_map.get(lpath,[]) bl[idx].device_collections = playlist_map.get(lpath,[])
@ -1508,6 +1516,8 @@ class KOBOTOUCH(KOBO):
book.current_shelves = bookshelves book.current_shelves = bookshelves
book.kobo_collections = kobo_collections book.kobo_collections = kobo_collections
book.contentID = ContentID book.contentID = ContentID
book.kobo_series = series
book.kobo_series_number = seriesnumber
# debug_print('KoboTouch:update_booklist - title=', title, 'book.device_collections', book.device_collections) # debug_print('KoboTouch:update_booklist - title=', title, 'book.device_collections', book.device_collections)
if bl.add_book(book, replace_metadata=False): if bl.add_book(book, replace_metadata=False):
@ -1558,10 +1568,23 @@ class KOBOTOUCH(KOBO):
debug_print("KoboTouch:books - shelf list:", self.bookshelvelist) debug_print("KoboTouch:books - shelf list:", self.bookshelvelist)
opts = self.settings() opts = self.settings()
if self.dbversion >= 33: if self.supports_series():
query= ('select Title, Attribution, DateCreated, ContentID, MimeType, ContentType, ' \ query= ('select Title, Attribution, DateCreated, ContentID, MimeType, ContentType, ' \
'ImageID, ReadStatus, ___ExpirationStatus, FavouritesIndex, Accessibility, IsDownloaded from content where ' \ 'ImageID, ReadStatus, ___ExpirationStatus, FavouritesIndex, Accessibility, ' \
'BookID is Null %(previews)s %(recomendations)s and not ((___ExpirationStatus=3 or ___ExpirationStatus is Null) %(expiry)s') % \ 'IsDownloaded, Series, SeriesNumber ' \
' from content ' \
' where BookID is Null %(previews)s %(recomendations)s and not ((___ExpirationStatus=3 or ___ExpirationStatus is Null) %(expiry)s') % \
dict(\
expiry=' and ContentType = 6)' if opts.extra_customization[self.OPT_SHOW_EXPIRED_BOOK_RECORDS] else ')', \
previews=' and Accessibility <> 6' if opts.extra_customization[self.OPT_SHOW_PREVIEWS] == False else '', \
recomendations=' and IsDownloaded in (\'true\', 1)' if opts.extra_customization[self.OPT_SHOW_RECOMMENDATIONS] == False else ''\
)
elif self.dbversion >= 33:
query= ('select Title, Attribution, DateCreated, ContentID, MimeType, ContentType, ' \
'ImageID, ReadStatus, ___ExpirationStatus, FavouritesIndex, Accessibility, ' \
'IsDownloaded, null as Series, null as SeriesNumber' \
' from content ' \
' where BookID is Null %(previews)s %(recomendations)s and not ((___ExpirationStatus=3 or ___ExpirationStatus is Null) %(expiry)s') % \
dict(\ dict(\
expiry=' and ContentType = 6)' if opts.extra_customization[self.OPT_SHOW_EXPIRED_BOOK_RECORDS] else ')', \ expiry=' and ContentType = 6)' if opts.extra_customization[self.OPT_SHOW_EXPIRED_BOOK_RECORDS] else ')', \
previews=' and Accessibility <> 6' if opts.extra_customization[self.OPT_SHOW_PREVIEWS] == False else '', \ previews=' and Accessibility <> 6' if opts.extra_customization[self.OPT_SHOW_PREVIEWS] == False else '', \
@ -1569,35 +1592,33 @@ class KOBOTOUCH(KOBO):
) )
elif self.dbversion >= 16 and self.dbversion < 33: elif self.dbversion >= 16 and self.dbversion < 33:
query= ('select Title, Attribution, DateCreated, ContentID, MimeType, ContentType, ' \ query= ('select Title, Attribution, DateCreated, ContentID, MimeType, ContentType, ' \
'ImageID, ReadStatus, ___ExpirationStatus, FavouritesIndex, Accessibility, "1" as IsDownloaded from content where ' \ 'ImageID, ReadStatus, ___ExpirationStatus, FavouritesIndex, Accessibility, ' \
'BookID is Null and not ((___ExpirationStatus=3 or ___ExpirationStatus is Null) %(expiry)s') % dict(expiry=' and ContentType = 6)' \ '"1" as IsDownloaded, null as Series, null as SeriesNumber' \
if opts.extra_customization[self.OPT_SHOW_EXPIRED_BOOK_RECORDS] else ')') ' from content where ' \
elif self.dbversion < 16 and self.dbversion >= 14:
query= ('select Title, Attribution, DateCreated, ContentID, MimeType, ContentType, ' \
'ImageID, ReadStatus, ___ExpirationStatus, FavouritesIndex, "-1" as Accessibility, "1" as IsDownloaded from content where ' \
'BookID is Null and not ((___ExpirationStatus=3 or ___ExpirationStatus is Null) %(expiry)s') % dict(expiry=' and ContentType = 6)' \
if opts.extra_customization[self.OPT_SHOW_EXPIRED_BOOK_RECORDS] else ')')
elif self.dbversion < 14 and self.dbversion >= 8:
query= ('select Title, Attribution, DateCreated, ContentID, MimeType, ContentType, ' \
'ImageID, ReadStatus, ___ExpirationStatus, "-1" as FavouritesIndex, "-1" as Accessibility, "1" as IsDownloaded from content where ' \
'BookID is Null and not ((___ExpirationStatus=3 or ___ExpirationStatus is Null) %(expiry)s') % dict(expiry=' and ContentType = 6)' \ 'BookID is Null and not ((___ExpirationStatus=3 or ___ExpirationStatus is Null) %(expiry)s') % dict(expiry=' and ContentType = 6)' \
if opts.extra_customization[self.OPT_SHOW_EXPIRED_BOOK_RECORDS] else ')') if opts.extra_customization[self.OPT_SHOW_EXPIRED_BOOK_RECORDS] else ')')
else: else:
query= 'select Title, Attribution, DateCreated, ContentID, MimeType, ContentType, ' \ query= 'select Title, Attribution, DateCreated, ContentID, MimeType, ContentType, ' \
'ImageID, ReadStatus, "-1" as ___ExpirationStatus, "-1" as FavouritesIndex, "-1" as Accessibility, "1" as IsDownloaded from content where BookID is Null' 'ImageID, ReadStatus, "-1" as ___ExpirationStatus, "-1" as FavouritesIndex, "-1" as Accessibility, ' \
'"1" as IsDownloaded, null as Series, null as SeriesNumber' \
' from content where BookID is Null'
debug_print("KoboTouch:books - query=", query) debug_print("KoboTouch:books - query=", query)
try: try:
cursor.execute (query) cursor.execute (query)
except Exception as e: except Exception as e:
err = str(e) err = str(e)
if not ('___ExpirationStatus' in err or 'FavouritesIndex' in err or if not ('___ExpirationStatus' in err
'Accessibility' in err or 'IsDownloaded' in err): or 'FavouritesIndex' in err
or 'Accessibility' in err
or 'IsDownloaded' in err
or 'Series' in err
):
raise raise
query= ('select Title, Attribution, DateCreated, ContentID, MimeType, ContentType, ' query= ('select Title, Attribution, DateCreated, ContentID, MimeType, ContentType, '
'ImageID, ReadStatus, "-1" as ___ExpirationStatus, "-1" as ' 'ImageID, ReadStatus, "-1" as ___ExpirationStatus, "-1" as '
'FavouritesIndex, "-1" as Accessibility, "1" as IsDownloaded from content where ' 'FavouritesIndex, "-1" as Accessibility, "1" as IsDownloaded, null as Series, null as SeriesNumber' \
'BookID is Null') ' from content where BookID is Null')
cursor.execute(query) cursor.execute(query)
changed = False changed = False
@ -1620,10 +1641,10 @@ class KOBOTOUCH(KOBO):
bookshelves = get_bookshelvesforbook(connection, row[3]) bookshelves = get_bookshelvesforbook(connection, row[3])
if oncard != 'carda' and oncard != 'cardb' and not row[3].startswith("file:///mnt/sd/"): if oncard != 'carda' and oncard != 'cardb' and not row[3].startswith("file:///mnt/sd/"):
changed = update_booklist(self._main_prefix, path, row[0], row[1], mime, row[2], row[3], row[5], row[6], row[7], row[4], row[8], row[9], row[10], row[11], bookshelves) changed = update_booklist(self._main_prefix, path, row[0], row[1], mime, row[2], row[3], row[5], row[6], row[7], row[4], row[8], row[9], row[10], row[11], row[12], row[13], bookshelves)
# print "shortbook: " + path # print "shortbook: " + path
elif oncard == 'carda' and row[3].startswith("file:///mnt/sd/"): elif oncard == 'carda' and row[3].startswith("file:///mnt/sd/"):
changed = update_booklist(self._card_a_prefix, path, row[0], row[1], mime, row[2], row[3], row[5], row[6], row[7], row[4], row[8], row[9], row[10], row[11], bookshelves) changed = update_booklist(self._card_a_prefix, path, row[0], row[1], mime, row[2], row[3], row[5], row[6], row[7], row[4], row[8], row[9], row[10], row[11], row[12], row[13], bookshelves)
if changed: if changed:
need_sync = True need_sync = True
@ -1669,9 +1690,6 @@ class KOBOTOUCH(KOBO):
for ending, cover_options in self.COVER_FILE_ENDINGS.items(): for ending, cover_options in self.COVER_FILE_ENDINGS.items():
fpath = self._main_prefix + '.kobo/images/' + ImageID + ending fpath = self._main_prefix + '.kobo/images/' + ImageID + ending
fpath = self.normalize_path(fpath.replace('/', os.sep)) fpath = self.normalize_path(fpath.replace('/', os.sep))
if show_debug:
debug_print("KoboTouch:imagefilename_from_imageID - ending=%s, path length=%d" % (ending, len(fpath)))
debug_print("KoboTouch:imagefilename_from_imageID - fpath=%s" % (fpath))
if os.path.exists(fpath): if os.path.exists(fpath):
if show_debug: if show_debug:
debug_print("KoboTouch:imagefilename_from_imageID - have cover image fpath=%s" % (fpath)) debug_print("KoboTouch:imagefilename_from_imageID - have cover image fpath=%s" % (fpath))
@ -1859,11 +1877,14 @@ class KOBOTOUCH(KOBO):
if opts.extra_customization: if opts.extra_customization:
create_bookshelves = opts.extra_customization[self.OPT_CREATE_BOOKSHELVES] and self.supports_bookshelves() create_bookshelves = opts.extra_customization[self.OPT_CREATE_BOOKSHELVES] and self.supports_bookshelves()
delete_empty_shelves = opts.extra_customization[self.OPT_DELETE_BOOKSHELVES] and self.supports_bookshelves() delete_empty_shelves = opts.extra_customization[self.OPT_DELETE_BOOKSHELVES] and self.supports_bookshelves()
update_series_details = opts.extra_customization[self.OPT_UPDATE_SERIES_DETAILS] and self.supports_series()
debugging_title = opts.extra_customization[self.OPT_DEBUGGING_TITLE] debugging_title = opts.extra_customization[self.OPT_DEBUGGING_TITLE]
debug_print("KoboTouch:update_device_database_collections - set_debugging_title to", debugging_title ) debug_print("KoboTouch:update_device_database_collections - set_debugging_title to", debugging_title )
booklists.set_debugging_title(debugging_title) booklists.set_debugging_title(debugging_title)
else: else:
delete_empty_shelves = False delete_empty_shelves = False
create_bookshelves = False
update_series_details = False
collections = booklists.get_collections(collections_attributes) collections = booklists.get_collections(collections_attributes)
# debug_print('KoboTouch:update_device_database_collections - Collections:', collections) # debug_print('KoboTouch:update_device_database_collections - Collections:', collections)
@ -1972,21 +1993,32 @@ class KOBOTOUCH(KOBO):
debug_print("No Collections - resetting FavouritesIndex") debug_print("No Collections - resetting FavouritesIndex")
self.reset_favouritesindex(connection, oncard) self.reset_favouritesindex(connection, oncard)
if self.supports_bookshelves(): if self.supports_bookshelves() or self.supports_series():
debug_print("KoboTouch:update_device_database_collections - managing bookshelves.") debug_print("KoboTouch:update_device_database_collections - managing bookshelves and series.")
if bookshelf_attribute:
debug_print("KoboTouch:update_device_database_collections - bookshelf_attribute=", bookshelf_attribute) self.series_set = 0
books_in_library = 0
for book in booklists: for book in booklists:
if book.application_id is not None: if book.application_id is not None:
# debug_print("KoboTouch:update_device_database_collections - about to remove a book from shelves book.title=%s" % book.title) books_in_library += 1
show_debug = self.is_debugging_title(book.title)
if show_debug:
debug_print("KoboTouch:update_device_database_collections - book.title=%s" % book.title)
if update_series_details:
self.set_series(connection, book)
if bookshelf_attribute:
if show_debug:
debug_print("KoboTouch:update_device_database_collections - about to remove a book from shelves book.title=%s" % book.title)
self.remove_book_from_device_bookshelves(connection, book) self.remove_book_from_device_bookshelves(connection, book)
book.device_collections.extend(book.kobo_collections) book.device_collections.extend(book.kobo_collections)
if not prefs['manage_device_metadata'] == 'manual' and delete_empty_shelves: if not prefs['manage_device_metadata'] == 'manual' and delete_empty_shelves:
debug_print("KoboTouch:update_device_database_collections - about to clear empty bookshelves") debug_print("KoboTouch:update_device_database_collections - about to clear empty bookshelves")
self.delete_empty_bookshelves(connection) self.delete_empty_bookshelves(connection)
debug_print("KoboTouch:update_device_database_collections - Number of series set=%d Number of books=%d" % (self.series_set, books_in_library))
self.dump_bookshelves(connection) self.dump_bookshelves(connection)
debug_print('KoboTouch:update_device_database_collections - Finished ') debug_print('KoboTouch:update_device_database_collections - Finished ')
def rebuild_collections(self, booklist, oncard): def rebuild_collections(self, booklist, oncard):
@ -2310,9 +2342,70 @@ class KOBOTOUCH(KOBO):
debug_print("KoboTouch:remove_from_bookshelf - end") debug_print("KoboTouch:remove_from_bookshelf - end")
def set_series(self, connection, book):
show_debug = self.is_debugging_title(book.title)
if show_debug:
debug_print('KoboTouch:set_series book.kobo_series="%s"'%book.kobo_series)
debug_print('KoboTouch:set_series book.series="%s"'%book.series)
debug_print('KoboTouch:set_series book.series_index=', book.series_index)
if book.series == book.kobo_series and book.series_index == book.kobo_series_number:
if show_debug:
debug_print('KoboTouch:set_series - series info the same - not changing')
return
update_query = 'UPDATE content SET Series=?, SeriesNumber==? where BookID is Null and ContentID = ?'
if book.series is None:
update_values = (None, None, book.contentID, )
else:
update_values = (book.series, "%g"%book.series_index, book.contentID, )
cursor = connection.cursor()
try:
if show_debug:
debug_print('KoboTouch:set_series - about to set - parameters:', update_values)
cursor.execute(update_query, update_values)
self.series_set += 1
except:
debug_print(' Database Exception: Unable to set series info')
raise
else:
connection.commit()
cursor.close()
if show_debug:
debug_print("KoboTouch:set_series - end")
@classmethod
def settings(cls):
opts = cls._config().parse()
if isinstance(cls.EXTRA_CUSTOMIZATION_DEFAULT, list):
if opts.extra_customization is None:
opts.extra_customization = []
if not isinstance(opts.extra_customization, list):
opts.extra_customization = [opts.extra_customization]
if len(cls.EXTRA_CUSTOMIZATION_DEFAULT) > len(opts.extra_customization):
extra_options_offset = 0
extra_customization = []
for i,d in enumerate(cls.EXTRA_CUSTOMIZATION_DEFAULT):
if i >= len(opts.extra_customization) + extra_options_offset:
extra_customization.append(d)
elif d.__class__ != opts.extra_customization[i - extra_options_offset].__class__:
extra_options_offset += 1
extra_customization.append(d)
else:
extra_customization.append(opts.extra_customization[i - extra_options_offset])
opts.extra_customization = extra_customization
return opts
def supports_bookshelves(self): def supports_bookshelves(self):
return self.dbversion >= self.min_supported_dbversion return self.dbversion >= self.min_supported_dbversion
def supports_series(self):
return self.dbversion >= self.min_dbversion_series
# def is_debugging_title(self, title): # def is_debugging_title(self, title):
## debug_print("KoboTouch:is_debugging - title=", title) ## debug_print("KoboTouch:is_debugging - title=", title)
# is_debugging = False # is_debugging = False

View File

@ -16,6 +16,7 @@ const calibre_device_entry_t calibre_mtp_device_table[] = {
// Nexus 10 // Nexus 10
, { "Google", 0x18d1, "Nexus 10", 0x4ee2, DEVICE_FLAGS_ANDROID_BUGS} , { "Google", 0x18d1, "Nexus 10", 0x4ee2, DEVICE_FLAGS_ANDROID_BUGS}
, { "Google", 0x18d1, "Nexus 10", 0x4ee1, DEVICE_FLAGS_ANDROID_BUGS}
, { NULL, 0xffff, NULL, 0xffff, DEVICE_FLAG_NONE } , { NULL, 0xffff, NULL, 0xffff, DEVICE_FLAG_NONE }
}; };

View File

@ -380,7 +380,7 @@ class PRST1(USBMS):
# Record what the max id being used is as well. # Record what the max id being used is as well.
db_books = {} db_books = {}
for i, row in enumerate(cursor): for i, row in enumerate(cursor):
if row[0] is None: if not hasattr(row[0], 'replace'):
continue continue
lpath = row[0].replace('\\', '/') lpath = row[0].replace('\\', '/')
db_books[lpath] = row[1] db_books[lpath] = row[1]

View File

@ -5,7 +5,7 @@ __license__ = 'GPL v3'
__copyright__ = '2010, Kovid Goyal <kovid@kovidgoyal.net>' __copyright__ = '2010, Kovid Goyal <kovid@kovidgoyal.net>'
__docformat__ = 'restructuredtext en' __docformat__ = 'restructuredtext en'
import os, dbus, re import os, re
def node_mountpoint(node): def node_mountpoint(node):
@ -25,6 +25,7 @@ class NoUDisks1(Exception):
class UDisks(object): class UDisks(object):
def __init__(self): def __init__(self):
import dbus
self.bus = dbus.SystemBus() self.bus = dbus.SystemBus()
try: try:
self.main = dbus.Interface(self.bus.get_object('org.freedesktop.UDisks', self.main = dbus.Interface(self.bus.get_object('org.freedesktop.UDisks',
@ -35,6 +36,7 @@ class UDisks(object):
raise raise
def device(self, device_node_path): def device(self, device_node_path):
import dbus
devpath = self.main.FindDeviceByDeviceFile(device_node_path) devpath = self.main.FindDeviceByDeviceFile(device_node_path)
return dbus.Interface(self.bus.get_object('org.freedesktop.UDisks', return dbus.Interface(self.bus.get_object('org.freedesktop.UDisks',
devpath), 'org.freedesktop.UDisks.Device') devpath), 'org.freedesktop.UDisks.Device')
@ -73,6 +75,7 @@ class UDisks2(object):
DRIVE = 'org.freedesktop.UDisks2.Drive' DRIVE = 'org.freedesktop.UDisks2.Drive'
def __init__(self): def __init__(self):
import dbus
self.bus = dbus.SystemBus() self.bus = dbus.SystemBus()
try: try:
self.bus.get_object('org.freedesktop.UDisks2', self.bus.get_object('org.freedesktop.UDisks2',

View File

@ -11,7 +11,7 @@ import re, os
from calibre.ebooks.chardet import strip_encoding_declarations from calibre.ebooks.chardet import strip_encoding_declarations
def update_internal_links(mobi8_reader): def update_internal_links(mobi8_reader, log):
# need to update all links that are internal which # need to update all links that are internal which
# are based on positions within the xhtml files **BEFORE** # are based on positions within the xhtml files **BEFORE**
# cutting and pasting any pieces into the xhtml text files # cutting and pasting any pieces into the xhtml text files
@ -35,8 +35,13 @@ def update_internal_links(mobi8_reader):
for m in posfid_index_pattern.finditer(tag): for m in posfid_index_pattern.finditer(tag):
posfid = m.group(1) posfid = m.group(1)
offset = m.group(2) offset = m.group(2)
filename, idtag = mr.get_id_tag_by_pos_fid(int(posfid, 32), try:
int(offset, 32)) filename, idtag = mr.get_id_tag_by_pos_fid(
int(posfid, 32), int(offset, 32))
except ValueError:
log.warn('Invalid link, points to nowhere, ignoring')
replacement = b'#'
else:
suffix = (b'#' + idtag) if idtag else b'' suffix = (b'#' + idtag) if idtag else b''
replacement = filename.split('/')[-1].encode( replacement = filename.split('/')[-1].encode(
mr.header.codec) + suffix mr.header.codec) + suffix
@ -198,7 +203,7 @@ def update_flow_links(mobi8_reader, resource_map, log):
# All flows are now unicode and have links resolved # All flows are now unicode and have links resolved
return flows return flows
def insert_flows_into_markup(parts, flows, mobi8_reader): def insert_flows_into_markup(parts, flows, mobi8_reader, log):
mr = mobi8_reader mr = mobi8_reader
# kindle:flow:XXXX?mime=YYYY/ZZZ (used for style sheets, svg images, etc) # kindle:flow:XXXX?mime=YYYY/ZZZ (used for style sheets, svg images, etc)
@ -214,7 +219,12 @@ def insert_flows_into_markup(parts, flows, mobi8_reader):
if tag.startswith('<'): if tag.startswith('<'):
for m in flow_pattern.finditer(tag): for m in flow_pattern.finditer(tag):
num = int(m.group(1), 32) num = int(m.group(1), 32)
try:
fi = mr.flowinfo[num] fi = mr.flowinfo[num]
except IndexError:
log.warn('Ignoring invalid flow reference: %s'%m.group())
tag = ''
else:
if fi.format == 'inline': if fi.format == 'inline':
tag = flows[num] tag = flows[num]
else: else:
@ -298,7 +308,7 @@ def upshift_markup(parts):
def expand_mobi8_markup(mobi8_reader, resource_map, log): def expand_mobi8_markup(mobi8_reader, resource_map, log):
# First update all internal links that are based on offsets # First update all internal links that are based on offsets
parts = update_internal_links(mobi8_reader) parts = update_internal_links(mobi8_reader, log)
# Remove pointless markup inserted by kindlegen # Remove pointless markup inserted by kindlegen
remove_kindlegen_markup(parts) remove_kindlegen_markup(parts)
@ -308,7 +318,7 @@ def expand_mobi8_markup(mobi8_reader, resource_map, log):
flows = update_flow_links(mobi8_reader, resource_map, log) flows = update_flow_links(mobi8_reader, resource_map, log)
# Insert inline flows into the markup # Insert inline flows into the markup
insert_flows_into_markup(parts, flows, mobi8_reader) insert_flows_into_markup(parts, flows, mobi8_reader, log)
# Insert raster images into markup # Insert raster images into markup
insert_images_into_markup(parts, resource_map, log) insert_images_into_markup(parts, resource_map, log)

View File

@ -34,6 +34,16 @@ Elem = namedtuple('Elem',
FlowInfo = namedtuple('FlowInfo', FlowInfo = namedtuple('FlowInfo',
'type format dir fname') 'type format dir fname')
# locate beginning and ending positions of tag with specific aid attribute
def locate_beg_end_of_tag(ml, aid):
pattern = br'''<[^>]*\said\s*=\s*['"]%s['"][^>]*>''' % aid
aid_pattern = re.compile(pattern, re.IGNORECASE)
for m in re.finditer(aid_pattern, ml):
plt = m.start()
pgt = ml.find(b'>', plt+1)
return plt, pgt
return 0, 0
class Mobi8Reader(object): class Mobi8Reader(object):
def __init__(self, mobi6_reader, log): def __init__(self, mobi6_reader, log):
@ -148,6 +158,7 @@ class Mobi8Reader(object):
for skelnum, skelname, divcnt, skelpos, skellen in self.files: for skelnum, skelname, divcnt, skelpos, skellen in self.files:
baseptr = skelpos + skellen baseptr = skelpos + skellen
skeleton = text[skelpos:baseptr] skeleton = text[skelpos:baseptr]
inspos_warned = False
for i in xrange(divcnt): for i in xrange(divcnt):
insertpos, idtext, filenum, seqnum, startpos, length = \ insertpos, idtext, filenum, seqnum, startpos, length = \
self.elems[divptr] self.elems[divptr]
@ -156,6 +167,23 @@ class Mobi8Reader(object):
filename = 'part%04d.html' % filenum filename = 'part%04d.html' % filenum
part = text[baseptr:baseptr + length] part = text[baseptr:baseptr + length]
insertpos = insertpos - skelpos insertpos = insertpos - skelpos
head = skeleton[:insertpos]
tail = skeleton[insertpos:]
if (tail.find(b'>') < tail.find(b'<') or head.rfind(b'>') <
head.rfind(b'<')):
# There is an incomplete tag in either the head or tail.
# This can happen for some badly formed KF8 files, see for
# example, https://bugs.launchpad.net/bugs/1082669
if not inspos_warned:
self.log.warn(
'The div table for %s has incorrect insert '
'positions. Calculating manually.'%skelname)
inspos_warned = True
bp, ep = locate_beg_end_of_tag(skeleton, aidtext if
isinstance(aidtext, bytes) else aidtext.encode('utf-8'))
if bp != ep:
insertpos = ep + 1 + startpos
skeleton = skeleton[0:insertpos] + part + skeleton[insertpos:] skeleton = skeleton[0:insertpos] + part + skeleton[insertpos:]
baseptr = baseptr + length baseptr = baseptr + length
divptr += 1 divptr += 1
@ -320,6 +348,7 @@ class Mobi8Reader(object):
def create_ncx(self): def create_ncx(self):
index_entries = read_ncx(self.kf8_sections, self.header.ncxidx, index_entries = read_ncx(self.kf8_sections, self.header.ncxidx,
self.header.codec) self.header.codec)
remove = []
# Add href and anchor info to the index entries # Add href and anchor info to the index entries
for entry in index_entries: for entry in index_entries:
@ -332,11 +361,20 @@ class Mobi8Reader(object):
idtag = self.get_id_tag(pos).decode(self.header.codec) idtag = self.get_id_tag(pos).decode(self.header.codec)
href = '%s/%s'%(fi.type, fi.filename) href = '%s/%s'%(fi.type, fi.filename)
else: else:
try:
href, idtag = self.get_id_tag_by_pos_fid(*pos_fid) href, idtag = self.get_id_tag_by_pos_fid(*pos_fid)
except ValueError:
self.log.warn('Invalid entry in NCX (title: %s), ignoring'
%entry['text'])
remove.append(entry)
continue
entry['href'] = href entry['href'] = href
entry['idtag'] = idtag entry['idtag'] = idtag
for e in remove:
index_entries.remove(e)
# Build the TOC object # Build the TOC object
return build_toc(index_entries) return build_toc(index_entries)

View File

@ -28,7 +28,7 @@ def self_closing_sub(match):
tag = match.group(1) tag = match.group(1)
if tag.lower().strip() == 'br': if tag.lower().strip() == 'br':
return match.group() return match.group()
return '<%s %s></%s>'%(match.group(1), match.group(2), match.group(1)) return '<%s%s></%s>'%(match.group(1), match.group(2), match.group(1))
def load_html(path, view, codec='utf-8', mime_type=None, def load_html(path, view, codec='utf-8', mime_type=None,
pre_load_callback=lambda x:None, path_is_html=False): pre_load_callback=lambda x:None, path_is_html=False):
@ -45,12 +45,9 @@ def load_html(path, view, codec='utf-8', mime_type=None,
html = EntityDeclarationProcessor(html).processed_html html = EntityDeclarationProcessor(html).processed_html
has_svg = re.search(r'<[:a-zA-Z]*svg', html) is not None has_svg = re.search(r'<[:a-zA-Z]*svg', html) is not None
if 'xhtml' in mime_type: self_closing_pat = re.compile(r'<\s*([A-Za-z1-6]+)([^>]*)/\s*>')
self_closing_pat = re.compile(r'<([a-z1-6]+)\s+([^>]+)/>',
re.IGNORECASE)
html = self_closing_pat.sub(self_closing_sub, html) html = self_closing_pat.sub(self_closing_sub, html)
html = re.sub(ur'<\s*title\s*/\s*>', u'', html, flags=re.IGNORECASE)
loading_url = QUrl.fromLocalFile(path) loading_url = QUrl.fromLocalFile(path)
pre_load_callback(loading_url) pre_load_callback(loading_url)

View File

@ -21,8 +21,13 @@ class Clean(object):
'other.ms-thumbimage', 'thumbimagestandard'): 'other.ms-thumbimage', 'thumbimagestandard'):
if x in self.oeb.guide: if x in self.oeb.guide:
href = self.oeb.guide[x].href href = self.oeb.guide[x].href
try:
item = self.oeb.manifest.hrefs[href] item = self.oeb.manifest.hrefs[href]
except KeyError:
continue
else:
covers.append([self.oeb.guide[x], len(item.data)]) covers.append([self.oeb.guide[x], len(item.data)])
covers.sort(cmp=lambda x,y:cmp(x[1], y[1]), reverse=True) covers.sort(cmp=lambda x,y:cmp(x[1], y[1]), reverse=True)
if covers: if covers:
ref = covers[0][0] ref = covers[0][0]

View File

@ -132,6 +132,7 @@ class ConvertAction(InterfaceAction):
num = len(jobs) num = len(jobs)
if num > 0: if num > 0:
self.gui.jobs_pointer.start()
self.gui.status_bar.show_message(_('Starting conversion of %d book(s)') % self.gui.status_bar.show_message(_('Starting conversion of %d book(s)') %
num, 2000) num, 2000)

View File

@ -88,7 +88,7 @@ class PluginWidget(QWidget,Ui_Form):
[{'ordinal':0, [{'ordinal':0,
'enabled':True, 'enabled':True,
'name':_('Catalogs'), 'name':_('Catalogs'),
'field':'Tags', 'field':_('Tags'),
'pattern':'Catalog'},], 'pattern':'Catalog'},],
['table_widget']) ['table_widget'])
@ -97,13 +97,13 @@ class PluginWidget(QWidget,Ui_Form):
[{'ordinal':0, [{'ordinal':0,
'enabled':True, 'enabled':True,
'name':_('Read book'), 'name':_('Read book'),
'field':'Tags', 'field':_('Tags'),
'pattern':'+', 'pattern':'+',
'prefix':u'\u2713'}, 'prefix':u'\u2713'},
{'ordinal':1, {'ordinal':1,
'enabled':True, 'enabled':True,
'name':_('Wishlist item'), 'name':_('Wishlist item'),
'field':'Tags', 'field':_('Tags'),
'pattern':'Wishlist', 'pattern':'Wishlist',
'prefix':u'\u00d7'},], 'prefix':u'\u00d7'},],
['table_widget','table_widget']) ['table_widget','table_widget'])
@ -127,7 +127,7 @@ class PluginWidget(QWidget,Ui_Form):
elif 'prefix' in rule and rule['prefix'] is None: elif 'prefix' in rule and rule['prefix'] is None:
continue continue
else: else:
if rule['field'] != 'Tags': if rule['field'] != _('Tags'):
# Look up custom column friendly name # Look up custom column friendly name
rule['field'] = self.eligible_custom_fields[rule['field']]['field'] rule['field'] = self.eligible_custom_fields[rule['field']]['field']
if rule['pattern'] in [_('any value'),_('any date')]: if rule['pattern'] in [_('any value'),_('any date')]:
@ -144,14 +144,14 @@ class PluginWidget(QWidget,Ui_Form):
# Strip off the trailing '_tw' # Strip off the trailing '_tw'
opts_dict[c_name[:-3]] = opt_value opts_dict[c_name[:-3]] = opt_value
def exclude_genre_changed(self, regex): def exclude_genre_changed(self):
""" Dynamically compute excluded genres. """ Dynamically compute excluded genres.
Run exclude_genre regex against db.all_tags() to show excluded tags. Run exclude_genre regex against selected genre_source_field to show excluded tags.
PROVISIONAL CODE, NEEDS TESTING
Args: Inputs:
regex (QLineEdit.text()): regex to compile, compute current regex
genre_source_field
Output: Output:
self.exclude_genre_results (QLabel): updated to show tags to be excluded as genres self.exclude_genre_results (QLabel): updated to show tags to be excluded as genres
@ -183,23 +183,31 @@ class PluginWidget(QWidget,Ui_Form):
return "%s ... %s" % (', '.join(start), ', '.join(end)) return "%s ... %s" % (', '.join(start), ', '.join(end))
results = _('No genres will be excluded') results = _('No genres will be excluded')
regex = unicode(getattr(self, 'exclude_genre').text()).strip()
if not regex: if not regex:
self.exclude_genre_results.clear() self.exclude_genre_results.clear()
self.exclude_genre_results.setText(results) self.exclude_genre_results.setText(results)
return return
# Populate all_genre_tags from currently source
if self.genre_source_field_name == _('Tags'):
all_genre_tags = self.db.all_tags()
else:
all_genre_tags = list(self.db.all_custom(self.db.field_metadata.key_to_label(self.genre_source_field_name)))
try: try:
pattern = re.compile((str(regex))) pattern = re.compile((str(regex)))
except: except:
results = _("regex error: %s") % sys.exc_info()[1] results = _("regex error: %s") % sys.exc_info()[1]
else: else:
excluded_tags = [] excluded_tags = []
for tag in self.all_tags: for tag in all_genre_tags:
hit = pattern.search(tag) hit = pattern.search(tag)
if hit: if hit:
excluded_tags.append(hit.string) excluded_tags.append(hit.string)
if excluded_tags: if excluded_tags:
if set(excluded_tags) == set(self.all_tags): if set(excluded_tags) == set(all_genre_tags):
results = _("All genres will be excluded") results = _("All genres will be excluded")
else: else:
results = _truncated_results(excluded_tags) results = _truncated_results(excluded_tags)
@ -218,7 +226,7 @@ class PluginWidget(QWidget,Ui_Form):
def fetch_eligible_custom_fields(self): def fetch_eligible_custom_fields(self):
self.all_custom_fields = self.db.custom_field_keys() self.all_custom_fields = self.db.custom_field_keys()
custom_fields = {} custom_fields = {}
custom_fields['Tags'] = {'field':'tag', 'datatype':u'text'} custom_fields[_('Tags')] = {'field':'tag', 'datatype':u'text'}
for custom_field in self.all_custom_fields: for custom_field in self.all_custom_fields:
field_md = self.db.metadata_for_field(custom_field) field_md = self.db.metadata_for_field(custom_field)
if field_md['datatype'] in ['bool','composite','datetime','enumeration','text']: if field_md['datatype'] in ['bool','composite','datetime','enumeration','text']:
@ -237,6 +245,34 @@ class PluginWidget(QWidget,Ui_Form):
self.merge_after.setEnabled(enabled) self.merge_after.setEnabled(enabled)
self.include_hr.setEnabled(enabled) self.include_hr.setEnabled(enabled)
def generate_genres_changed(self, enabled):
'''
Toggle Genres-related controls
'''
self.genre_source_field.setEnabled(enabled)
def genre_source_field_changed(self,new_index):
'''
Process changes in the genre_source_field combo box
Update Excluded genres preview
'''
new_source = str(self.genre_source_field.currentText())
self.genre_source_field_name = new_source
if new_source != _('Tags'):
genre_source_spec = self.genre_source_fields[unicode(new_source)]
self.genre_source_field_name = genre_source_spec['field']
self.exclude_genre_changed()
def header_note_source_field_changed(self,new_index):
'''
Process changes in the header_note_source_field combo box
'''
new_source = str(self.header_note_source_field.currentText())
self.header_note_source_field_name = new_source
if new_source > '':
header_note_source_spec = self.header_note_source_fields[unicode(new_source)]
self.header_note_source_field_name = header_note_source_spec['field']
def initialize(self, name, db): def initialize(self, name, db):
''' '''
CheckBoxControls (c_type: check_box): CheckBoxControls (c_type: check_box):
@ -245,8 +281,8 @@ class PluginWidget(QWidget,Ui_Form):
'generate_recently_added','generate_descriptions', 'generate_recently_added','generate_descriptions',
'include_hr'] 'include_hr']
ComboBoxControls (c_type: combo_box): ComboBoxControls (c_type: combo_box):
['exclude_source_field','header_note_source_field', ['exclude_source_field','genre_source_field',
'merge_source_field'] 'header_note_source_field','merge_source_field']
LineEditControls (c_type: line_edit): LineEditControls (c_type: line_edit):
['exclude_genre'] ['exclude_genre']
RadioButtonControls (c_type: radio_button): RadioButtonControls (c_type: radio_button):
@ -261,11 +297,11 @@ class PluginWidget(QWidget,Ui_Form):
''' '''
self.name = name self.name = name
self.db = db self.db = db
self.all_tags = db.all_tags() self.all_genre_tags = []
self.fetch_eligible_custom_fields() self.fetch_eligible_custom_fields()
self.populate_combo_boxes() self.populate_combo_boxes()
# Update dialog fields from stored options # Update dialog fields from stored options, validating options for combo boxes
exclusion_rules = [] exclusion_rules = []
prefix_rules = [] prefix_rules = []
for opt in self.OPTION_FIELDS: for opt in self.OPTION_FIELDS:
@ -273,13 +309,18 @@ class PluginWidget(QWidget,Ui_Form):
opt_value = gprefs.get(self.name + '_' + c_name, c_def) opt_value = gprefs.get(self.name + '_' + c_name, c_def)
if c_type in ['check_box']: if c_type in ['check_box']:
getattr(self, c_name).setChecked(eval(str(opt_value))) getattr(self, c_name).setChecked(eval(str(opt_value)))
elif c_type in ['combo_box'] and opt_value is not None: elif c_type in ['combo_box']:
# *** Test this code with combo boxes *** if opt_value is None:
#index = self.read_source_field.findText(opt_value) index = 0
if c_name == 'genre_source_field':
index = self.genre_source_field.findText(_('Tags'))
else:
index = getattr(self,c_name).findText(opt_value) index = getattr(self,c_name).findText(opt_value)
if index == -1 and c_name == 'read_source_field': if index == -1:
index = self.read_source_field.findText('Tag') if c_name == 'read_source_field':
#self.read_source_field.setCurrentIndex(index) index = self.read_source_field.findText(_('Tags'))
elif c_name == 'genre_source_field':
index = self.genre_source_field.findText(_('Tags'))
getattr(self,c_name).setCurrentIndex(index) getattr(self,c_name).setCurrentIndex(index)
elif c_type in ['line_edit']: elif c_type in ['line_edit']:
getattr(self, c_name).setText(opt_value if opt_value else '') getattr(self, c_name).setText(opt_value if opt_value else '')
@ -320,6 +361,17 @@ class PluginWidget(QWidget,Ui_Form):
header_note_source_spec = self.header_note_source_fields[cs] header_note_source_spec = self.header_note_source_fields[cs]
self.header_note_source_field_name = header_note_source_spec['field'] self.header_note_source_field_name = header_note_source_spec['field']
# Init self.genre_source_field_name
self.genre_source_field_name = _('Tags')
cs = unicode(self.genre_source_field.currentText())
if cs != _('Tags'):
genre_source_spec = self.genre_source_fields[cs]
self.genre_source_field_name = genre_source_spec['field']
# Hook Genres checkbox
self.generate_genres.clicked.connect(self.generate_genres_changed)
self.generate_genres_changed(self.generate_genres.isChecked())
# Initialize exclusion rules # Initialize exclusion rules
self.exclusion_rules_table = ExclusionRules(self.exclusion_rules_gb, self.exclusion_rules_table = ExclusionRules(self.exclusion_rules_gb,
"exclusion_rules_tw",exclusion_rules, self.eligible_custom_fields,self.db) "exclusion_rules_tw",exclusion_rules, self.eligible_custom_fields,self.db)
@ -329,7 +381,27 @@ class PluginWidget(QWidget,Ui_Form):
"prefix_rules_tw",prefix_rules, self.eligible_custom_fields,self.db) "prefix_rules_tw",prefix_rules, self.eligible_custom_fields,self.db)
# Initialize excluded genres preview # Initialize excluded genres preview
self.exclude_genre_changed(unicode(getattr(self, 'exclude_genre').text()).strip()) self.exclude_genre_changed()
def merge_source_field_changed(self,new_index):
'''
Process changes in the merge_source_field combo box
'''
new_source = str(self.merge_source_field.currentText())
self.merge_source_field_name = new_source
if new_source > '':
merge_source_spec = self.merge_source_fields[unicode(new_source)]
self.merge_source_field_name = merge_source_spec['field']
if not self.merge_before.isChecked() and not self.merge_after.isChecked():
self.merge_after.setChecked(True)
self.merge_before.setEnabled(True)
self.merge_after.setEnabled(True)
self.include_hr.setEnabled(True)
else:
self.merge_before.setEnabled(False)
self.merge_after.setEnabled(False)
self.include_hr.setEnabled(False)
def options(self): def options(self):
# Save/return the current options # Save/return the current options
@ -373,7 +445,7 @@ class PluginWidget(QWidget,Ui_Form):
else: else:
opts_dict[c_name] = opt_value opts_dict[c_name] = opt_value
# Generate specs for merge_comments, header_note_source_field # Generate specs for merge_comments, header_note_source_field, genre_source_field
checked = '' checked = ''
if self.merge_before.isChecked(): if self.merge_before.isChecked():
checked = 'before' checked = 'before'
@ -385,6 +457,8 @@ class PluginWidget(QWidget,Ui_Form):
opts_dict['header_note_source_field'] = self.header_note_source_field_name opts_dict['header_note_source_field'] = self.header_note_source_field_name
opts_dict['genre_source_field'] = self.genre_source_field_name
# Fix up exclude_genre regex if blank. Assume blank = no exclusions # Fix up exclude_genre regex if blank. Assume blank = no exclusions
if opts_dict['exclude_genre'] == '': if opts_dict['exclude_genre'] == '':
opts_dict['exclude_genre'] = 'a^' opts_dict['exclude_genre'] = 'a^'
@ -457,35 +531,18 @@ class PluginWidget(QWidget,Ui_Form):
self.merge_after.setEnabled(False) self.merge_after.setEnabled(False)
self.include_hr.setEnabled(False) self.include_hr.setEnabled(False)
def header_note_source_field_changed(self,new_index): # Populate the 'Genres' combo box
''' custom_fields = {_('Tags'):{'field':None,'datatype':None}}
Process changes in the header_note_source_field combo box for custom_field in self.all_custom_fields:
''' field_md = self.db.metadata_for_field(custom_field)
new_source = str(self.header_note_source_field.currentText()) if field_md['datatype'] in ['text','enumeration']:
self.header_note_source_field_name = new_source custom_fields[field_md['name']] = {'field':custom_field,
if new_source > '': 'datatype':field_md['datatype']}
header_note_source_spec = self.header_note_source_fields[unicode(new_source)] # Add the sorted eligible fields to the combo box
self.header_note_source_field_name = header_note_source_spec['field'] for cf in sorted(custom_fields, key=sort_key):
self.genre_source_field.addItem(cf)
def merge_source_field_changed(self,new_index): self.genre_source_fields = custom_fields
''' self.genre_source_field.currentIndexChanged.connect(self.genre_source_field_changed)
Process changes in the merge_source_field combo box
'''
new_source = str(self.merge_source_field.currentText())
self.merge_source_field_name = new_source
if new_source > '':
merge_source_spec = self.merge_source_fields[unicode(new_source)]
self.merge_source_field_name = merge_source_spec['field']
if not self.merge_before.isChecked() and not self.merge_after.isChecked():
self.merge_after.setChecked(True)
self.merge_before.setEnabled(True)
self.merge_after.setEnabled(True)
self.include_hr.setEnabled(True)
else:
self.merge_before.setEnabled(False)
self.merge_after.setEnabled(False)
self.include_hr.setEnabled(False)
def show_help(self): def show_help(self):
''' '''
@ -779,9 +836,10 @@ class GenericRulesTable(QTableWidget):
# Populate the Pattern field based upon the Source field # Populate the Pattern field based upon the Source field
source_field = str(combo.currentText()) source_field = str(combo.currentText())
if source_field == '': if source_field == '':
values = [] values = []
elif source_field == 'Tags': elif source_field == _('Tags'):
values = sorted(self.db.all_tags(), key=sort_key) values = sorted(self.db.all_tags(), key=sort_key)
else: else:
if self.eligible_custom_fields[unicode(source_field)]['datatype'] in ['enumeration', 'text']: if self.eligible_custom_fields[unicode(source_field)]['datatype'] in ['enumeration', 'text']:

View File

@ -54,42 +54,73 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="0" column="2"> <item row="1" column="0">
<widget class="QCheckBox" name="generate_titles"> <widget class="QCheckBox" name="generate_titles">
<property name="text"> <property name="text">
<string>&amp;Titles</string> <string>&amp;Titles</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="0" column="3"> <item row="3" column="0">
<widget class="QCheckBox" name="generate_series"> <widget class="QCheckBox" name="generate_series">
<property name="text"> <property name="text">
<string>&amp;Series</string> <string>&amp;Series</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="4" column="0"> <item row="0" column="2">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<widget class="QCheckBox" name="generate_genres"> <widget class="QCheckBox" name="generate_genres">
<property name="text"> <property name="text">
<string>&amp;Genres</string> <string>&amp;Genres</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="4" column="2"> <item>
<widget class="QComboBox" name="genre_source_field">
<property name="toolTip">
<string>Field containing Genre information</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="2">
<layout class="QHBoxLayout" name="horizontalLayout_5">
<item>
<widget class="QCheckBox" name="generate_recently_added"> <widget class="QCheckBox" name="generate_recently_added">
<property name="minimumSize">
<size>
<width>0</width>
<height>26</height>
</size>
</property>
<property name="text"> <property name="text">
<string>&amp;Recently Added</string> <string>&amp;Recently Added</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="4" column="3"> </layout>
</item>
<item row="3" column="2">
<layout class="QHBoxLayout" name="horizontalLayout_7">
<item>
<widget class="QCheckBox" name="generate_descriptions"> <widget class="QCheckBox" name="generate_descriptions">
<property name="minimumSize">
<size>
<width>0</width>
<height>26</height>
</size>
</property>
<property name="text"> <property name="text">
<string>&amp;Descriptions</string> <string>&amp;Descriptions</string>
</property> </property>
</widget> </widget>
</item> </item>
</layout> </layout>
</item>
</layout>
</widget> </widget>
</item> </item>
<item> <item>
@ -177,7 +208,7 @@ The default pattern \[.+\]|\+ excludes tags of the form [tag], e.g., [Test book]
</size> </size>
</property> </property>
<property name="text"> <property name="text">
<string>Tags to &amp;exclude (regex):</string> <string>Genres to &amp;exclude (regex):</string>
</property> </property>
<property name="textFormat"> <property name="textFormat">
<enum>Qt::AutoText</enum> <enum>Qt::AutoText</enum>

View File

@ -59,13 +59,13 @@
</item> </item>
<item> <item>
<widget class="QCheckBox" name="copy_structure"> <widget class="QCheckBox" name="copy_structure">
<property name="text">
<string>&amp;Copy structure from the current library</string>
</property>
<property name="toolTip"> <property name="toolTip">
<string>Copy the custom columns, saved searches, column widths, plugboards, <string>Copy the custom columns, saved searches, column widths, plugboards,
user categories, and other information from the old to the new library</string> user categories, and other information from the old to the new library</string>
</property> </property>
<property name="text">
<string>&amp;Copy structure from the current library</string>
</property>
</widget> </widget>
</item> </item>
</layout> </layout>
@ -138,7 +138,14 @@ user categories, and other information from the old to the new library</string>
</widget> </widget>
</item> </item>
<item row="2" column="1" colspan="2"> <item row="2" column="1" colspan="2">
<widget class="HistoryLineEdit" name="location"/> <widget class="HistoryLineEdit" name="location">
<property name="sizeAdjustPolicy">
<enum>QComboBox::AdjustToMinimumContentsLength</enum>
</property>
<property name="minimumContentsLength">
<number>40</number>
</property>
</widget>
</item> </item>
</layout> </layout>
</widget> </widget>

View File

@ -0,0 +1,93 @@
#!/usr/bin/env python
# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:fdm=marker:ai
from __future__ import (unicode_literals, division, absolute_import,
print_function)
__license__ = 'GPL v3'
__copyright__ = '2012, Kovid Goyal <kovid at kovidgoyal.net>'
__docformat__ = 'restructuredtext en'
from PyQt4.Qt import (QPainter, Qt, QWidget, QPropertyAnimation, QRect, QPoint,
QColor, QEasingCurve, QBrush, QPainterPath, QPointF,
QPalette)
from calibre.gui2 import config
class Pointer(QWidget):
def __init__(self, gui):
QWidget.__init__(self, gui)
self.setObjectName('jobs_pointer')
self.setVisible(False)
self.resize(100, 80)
self.animation = QPropertyAnimation(self, "geometry", self)
self.animation.setDuration(750)
self.animation.setLoopCount(2)
self.animation.setEasingCurve(QEasingCurve.Linear)
self.animation.finished.connect(self.hide)
taily, heady = 0, 55
self.arrow_path = QPainterPath(QPointF(40, taily))
self.arrow_path.lineTo(40, heady)
self.arrow_path.lineTo(20, heady)
self.arrow_path.lineTo(50, self.height())
self.arrow_path.lineTo(80, heady)
self.arrow_path.lineTo(60, heady)
self.arrow_path.lineTo(60, taily)
self.arrow_path.closeSubpath()
c = self.palette().color(QPalette.Active, QPalette.WindowText)
self.color = QColor(c)
self.color.setAlpha(100)
self.brush = QBrush(self.color, Qt.SolidPattern)
# from PyQt4.Qt import QTimer
# QTimer.singleShot(1000, self.start)
@property
def gui(self):
return self.parent()
def point_at(self, frac):
return (self.path.pointAtPercent(frac).toPoint() -
QPoint(self.rect().center().x(), self.height()))
def rect_at(self, frac):
return QRect(self.point_at(frac), self.size())
def abspos(self, widget):
pos = widget.pos()
parent = widget.parent()
while parent is not self.gui:
pos += parent.pos()
parent = parent.parent()
return pos
def start(self):
if config['disable_animations']:
return
self.setVisible(True)
self.raise_()
end = self.abspos(self.gui.jobs_button)
end = QPointF( end.x() + self.gui.jobs_button.width()/3.0, end.y()+20)
start = QPointF(end.x(), end.y() - 0.5*self.height())
self.path = QPainterPath(QPointF(start))
self.path.lineTo(end)
self.path.closeSubpath()
self.animation.setStartValue(self.rect_at(0.0))
self.animation.setEndValue(self.rect_at(1.0))
self.animation.setDirection(self.animation.Backward)
num_keys = 100
for i in xrange(1, num_keys):
i /= num_keys
self.animation.setKeyValueAt(i, self.rect_at(i))
self.animation.start()
def paintEvent(self, ev):
p = QPainter(self)
p.setRenderHints(p.Antialiasing)
p.setBrush(self.brush)
p.setPen(Qt.NoPen)
p.drawPath(self.arrow_path)
p.end()

View File

@ -7,7 +7,7 @@ __copyright__ = '2009, Kovid Goyal <kovid@kovidgoyal.net>'
__docformat__ = 'restructuredtext en' __docformat__ = 'restructuredtext en'
from calibre.constants import islinux, isosx from calibre.constants import islinux, isosx, get_osx_version
class Notifier(object): class Notifier(object):
@ -101,32 +101,37 @@ class QtNotifier(Notifier):
except: except:
pass pass
class GrowlNotifier(Notifier): class AppleNotifier(Notifier):
notification_type = 'All notifications'
def __init__(self): def __init__(self):
try:
import Growl
self.icon = Growl.Image.imageFromPath(I('notify.png'))
self.growl = Growl.GrowlNotifier(applicationName='calibre',
applicationIcon=self.icon, notifications=[self.notification_type])
self.growl.register()
self.ok = True
except:
self.ok = False self.ok = False
import os, sys
try:
self.exe = os.path.join(sys.console_binaries_path.replace(
'console.app', 'calibre-notifier.app'), 'Calibre')
self.ok = os.access(self.exe, os.X_OK)
import subprocess
self.call = subprocess.Popen
except:
pass
def encode(self, msg): def notify(self, body, summary):
if isinstance(msg, unicode): def encode(x):
msg = msg.encode('utf-8') if isinstance(x, unicode):
return msg x = x.encode('utf-8')
return x
cmd = [self.exe, '-activate',
'net.kovidgoyal.calibre', '-message', encode(body)]
if summary:
cmd += ['-title', encode(summary)]
self.call(cmd)
def __call__(self, body, summary=None, replaces_id=None, timeout=0): def __call__(self, body, summary=None, replaces_id=None, timeout=0):
timeout, body, summary = self.get_msg_parms(timeout, body, summary) timeout, body, summary = self.get_msg_parms(timeout, body, summary)
if self.ok: if self.ok:
try: try:
self.growl.notify(self.notification_type, self.encode(summary), self.notify(body, summary)
self.encode(body))
except: except:
import traceback import traceback
traceback.print_exc() traceback.print_exc()
@ -140,10 +145,10 @@ def get_notifier(systray=None):
ans = FDONotifier() ans = FDONotifier()
if not ans.ok: if not ans.ok:
ans = None ans = None
#if isosx: elif isosx and get_osx_version() >= (10, 8, 0):
# ans = GrowlNotifier() ans = AppleNotifier()
# if not ans.ok: if not ans.ok:
# ans = None ans = None
if ans is None: if ans is None:
ans = QtNotifier(systray) ans = QtNotifier(systray)
if not ans.ok: if not ans.ok:

View File

@ -52,11 +52,14 @@ class PublioStore(BasicStoreConfig, StorePlugin):
continue continue
cover_url = ''.join(data.xpath('.//div[@class="img"]/a/img/@data-original')) cover_url = ''.join(data.xpath('.//div[@class="img"]/a/img/@data-original'))
title = ''.join(data.xpath('.//div[@class="desc"]/h4/a/text()')) title = ''.join(data.xpath('.//div[@class="img"]/a/@title'))
title2 = ''.join(data.xpath('.//div[@class="desc"]/h5/a/text()')) title2 = ''.join(data.xpath('.//div[@class="desc"]/h5//text()'))
if title2: if title2:
title = title + '. ' + title2 title = title + '. ' + title2
author = ', '.join(data.xpath('./div[@class="desc"]/div[@class="detailShortList"]/div[@class="row"]/a/text()')) if (''.join(data.xpath('./div[@class="desc"]/div[@class="detailShortList"]/div[last()]/span/text()')).strip() == "Seria:"):
series = ''.join(data.xpath('./div[@class="desc"]/div[@class="detailShortList"]/div[last()]/a/@title'))
title = title + ' (seria ' + series + ')'
author = ', '.join(data.xpath('./div[@class="desc"]/div[@class="detailShortList"]/div[@class="row"][1]/a/@title'))
price = ''.join(data.xpath('.//div[@class="priceBoxContener "]/div/ins/text()')) price = ''.join(data.xpath('.//div[@class="priceBoxContener "]/div/ins/text()'))
if not price: if not price:
price = ''.join(data.xpath('.//div[@class="priceBoxContener "]/div/text()')) price = ''.join(data.xpath('.//div[@class="priceBoxContener "]/div/text()'))
@ -67,8 +70,8 @@ class PublioStore(BasicStoreConfig, StorePlugin):
s = SearchResult() s = SearchResult()
s.cover_url = 'http://www.publio.pl' + cover_url s.cover_url = 'http://www.publio.pl' + cover_url
s.title = title.strip() s.title = title.strip()
s.author = author.strip() s.author = author
s.price = price.strip() s.price = price
s.detail_item = 'http://www.publio.pl' + id.strip() s.detail_item = 'http://www.publio.pl' + id.strip()
s.drm = SearchResult.DRM_LOCKED if 'DRM' in formats else SearchResult.DRM_UNLOCKED s.drm = SearchResult.DRM_LOCKED if 'DRM' in formats else SearchResult.DRM_UNLOCKED
s.formats = formats.replace(' DRM','').strip() s.formats = formats.replace(' DRM','').strip()

View File

@ -45,6 +45,7 @@ from calibre.gui2.auto_add import AutoAdder
from calibre.library.sqlite import sqlite, DatabaseException from calibre.library.sqlite import sqlite, DatabaseException
from calibre.gui2.proceed import ProceedQuestion from calibre.gui2.proceed import ProceedQuestion
from calibre.gui2.dialogs.message_box import JobError from calibre.gui2.dialogs.message_box import JobError
from calibre.gui2.job_indicator import Pointer
class Listener(Thread): # {{{ class Listener(Thread): # {{{
@ -109,6 +110,7 @@ class Main(MainWindow, MainWindowMixin, DeviceMixin, EmailMixin, # {{{
def __init__(self, opts, parent=None, gui_debug=None): def __init__(self, opts, parent=None, gui_debug=None):
global _gui global _gui
MainWindow.__init__(self, opts, parent=parent, disable_automatic_gc=True) MainWindow.__init__(self, opts, parent=parent, disable_automatic_gc=True)
self.jobs_pointer = Pointer(self)
self.proceed_requested.connect(self.do_proceed, self.proceed_requested.connect(self.do_proceed,
type=Qt.QueuedConnection) type=Qt.QueuedConnection)
self.proceed_question = ProceedQuestion(self) self.proceed_question = ProceedQuestion(self)

View File

@ -19,4 +19,5 @@ TEMPLATE_ALLOWED_FIELDS = [ 'author_sort', 'authors', 'id', 'isbn', 'pubdate', '
class AuthorSortMismatchException(Exception): pass class AuthorSortMismatchException(Exception): pass
class EmptyCatalogException(Exception): pass class EmptyCatalogException(Exception): pass
class InvalidGenresSourceFieldException(Exception): pass

View File

@ -121,6 +121,13 @@ class EPUB_MOBI(CatalogPlugin):
help=_("Include 'Recently Added' section in catalog.\n" help=_("Include 'Recently Added' section in catalog.\n"
"Default: '%default'\n" "Default: '%default'\n"
"Applies to: AZW3, ePub, MOBI output formats")), "Applies to: AZW3, ePub, MOBI output formats")),
Option('--genre-source-field',
default='Tags',
dest='genre_source_field',
action = None,
help=_("Source field for Genres section.\n"
"Default: '%default'\n"
"Applies to: AZW3, ePub, MOBI output formats")),
Option('--header-note-source-field', Option('--header-note-source-field',
default='', default='',
dest='header_note_source_field', dest='header_note_source_field',
@ -327,7 +334,7 @@ class EPUB_MOBI(CatalogPlugin):
if key in ['catalog_title','author_clip','connected_kindle','creator', if key in ['catalog_title','author_clip','connected_kindle','creator',
'cross_reference_authors','description_clip','exclude_book_marker', 'cross_reference_authors','description_clip','exclude_book_marker',
'exclude_genre','exclude_tags','exclusion_rules', 'fmt', 'exclude_genre','exclude_tags','exclusion_rules', 'fmt',
'header_note_source_field','merge_comments_rule', 'genre_source_field', 'header_note_source_field','merge_comments_rule',
'output_profile','prefix_rules','read_book_marker', 'output_profile','prefix_rules','read_book_marker',
'search_text','sort_by','sort_descriptions_by_author','sync', 'search_text','sort_by','sort_descriptions_by_author','sync',
'thumb_width','use_existing_cover','wishlist_tag']: 'thumb_width','use_existing_cover','wishlist_tag']:

View File

@ -15,7 +15,8 @@ from calibre.customize.ui import output_profiles
from calibre.ebooks.BeautifulSoup import BeautifulSoup, BeautifulStoneSoup, Tag, NavigableString from calibre.ebooks.BeautifulSoup import BeautifulSoup, BeautifulStoneSoup, Tag, NavigableString
from calibre.ebooks.chardet import substitute_entites from calibre.ebooks.chardet import substitute_entites
from calibre.ebooks.metadata import author_to_author_sort from calibre.ebooks.metadata import author_to_author_sort
from calibre.library.catalogs import AuthorSortMismatchException, EmptyCatalogException from calibre.library.catalogs import AuthorSortMismatchException, EmptyCatalogException, \
InvalidGenresSourceFieldException
from calibre.ptempfile import PersistentTemporaryDirectory from calibre.ptempfile import PersistentTemporaryDirectory
from calibre.utils.config import config_dir from calibre.utils.config import config_dir
from calibre.utils.date import format_date, is_date_undefined, now as nowf from calibre.utils.date import format_date, is_date_undefined, now as nowf
@ -134,7 +135,7 @@ class CatalogBuilder(object):
self.generate_recently_read = False self.generate_recently_read = False
self.genres = [] self.genres = []
self.genre_tags_dict = \ self.genre_tags_dict = \
self.filter_db_tags(max_len = 245 - len("%s/Genre_.html" % self.content_dir)) \ self.filter_genre_tags(max_len = 245 - len("%s/Genre_.html" % self.content_dir)) \
if self.opts.generate_genres else None if self.opts.generate_genres else None
self.html_filelist_1 = [] self.html_filelist_1 = []
self.html_filelist_2 = [] self.html_filelist_2 = []
@ -938,6 +939,21 @@ class CatalogBuilder(object):
this_title['tags'] = self.filter_excluded_genres(record['tags'], this_title['tags'] = self.filter_excluded_genres(record['tags'],
self.opts.exclude_genre) self.opts.exclude_genre)
this_title['genres'] = []
if self.opts.genre_source_field == _('Tags'):
this_title['genres'] = this_title['tags']
else:
record_genres = self.db.get_field(record['id'],
self.opts.genre_source_field,
index_is_id=True)
if record_genres:
if type(record_genres) is not list:
record_genres = [record_genres]
this_title['genres'] = self.filter_excluded_genres(record_genres,
self.opts.exclude_genre)
if record['formats']: if record['formats']:
formats = [] formats = []
for format in record['formats']: for format in record['formats']:
@ -1104,7 +1120,7 @@ class CatalogBuilder(object):
self.bookmarked_books = bookmarks self.bookmarked_books = bookmarks
def filter_db_tags(self, max_len): def filter_genre_tags(self, max_len):
""" Remove excluded tags from data set, return normalized genre list. """ Remove excluded tags from data set, return normalized genre list.
Filter all db tags, removing excluded tags supplied in opts. Filter all db tags, removing excluded tags supplied in opts.
@ -1166,7 +1182,32 @@ class CatalogBuilder(object):
normalized_tags = [] normalized_tags = []
friendly_tags = [] friendly_tags = []
excluded_tags = [] excluded_tags = []
for tag in self.db.all_tags():
# Fetch all possible genres from source field
all_genre_tags = []
if self.opts.genre_source_field == _('Tags'):
all_genre_tags = self.db.all_tags()
else:
# Validate custom field is usable as a genre source
field_md = self.db.metadata_for_field(self.opts.genre_source_field)
if not field_md['datatype'] in ['enumeration','text']:
all_custom_fields = self.db.custom_field_keys()
eligible_custom_fields = []
for cf in all_custom_fields:
if self.db.metadata_for_field(cf)['datatype'] in ['enumeration','text']:
eligible_custom_fields.append(cf)
self.opts.log.error("Custom genre_source_field must be either:\n"
" 'Comma separated text, like tags, shown in the browser',\n"
" 'Text, column shown in the tag browser', or\n"
" 'Text, but with a fixed set of permitted values'.")
self.opts.log.error("Eligible custom fields: %s" % ', '.join(eligible_custom_fields))
raise InvalidGenresSourceFieldException, "invalid custom field specified for genre_source_field"
all_genre_tags = list(self.db.all_custom(self.db.field_metadata.key_to_label(self.opts.genre_source_field)))
all_genre_tags.sort()
for tag in all_genre_tags:
if tag in self.excluded_tags: if tag in self.excluded_tags:
excluded_tags.append(tag) excluded_tags.append(tag)
continue continue
@ -1194,9 +1235,10 @@ class CatalogBuilder(object):
if genre_tags_dict[key] == normalized: if genre_tags_dict[key] == normalized:
self.opts.log.warn(" %s" % key) self.opts.log.warn(" %s" % key)
if self.opts.verbose: if self.opts.verbose:
self.opts.log.info('%s' % _format_tag_list(genre_tags_dict, header="enabled genre tags in database")) self.opts.log.info('%s' % _format_tag_list(genre_tags_dict, header="enabled genres"))
self.opts.log.info('%s' % _format_tag_list(excluded_tags, header="excluded genre tags")) self.opts.log.info('%s' % _format_tag_list(excluded_tags, header="excluded genres"))
print("genre_tags_dict: %s" % genre_tags_dict)
return genre_tags_dict return genre_tags_dict
def filter_excluded_genres(self, tags, regex): def filter_excluded_genres(self, tags, regex):
@ -1969,7 +2011,7 @@ class CatalogBuilder(object):
create a separate HTML file. Normalize tags to flatten synonymous tags. create a separate HTML file. Normalize tags to flatten synonymous tags.
Inputs: Inputs:
db.all_tags() (list): all database tags self.genre_tags_dict (list): all genre tags
Output: Output:
(files): HTML file per genre (files): HTML file per genre
@ -1987,7 +2029,7 @@ class CatalogBuilder(object):
tag_list = {} tag_list = {}
for book in self.books_by_author: for book in self.books_by_author:
# Scan each book for tag matching friendly_tag # Scan each book for tag matching friendly_tag
if 'tags' in book and friendly_tag in book['tags']: if 'genres' in book and friendly_tag in book['genres']:
this_book = {} this_book = {}
this_book['author'] = book['author'] this_book['author'] = book['author']
this_book['title'] = book['title'] this_book['title'] = book['title']
@ -2577,18 +2619,18 @@ class CatalogBuilder(object):
# Genres # Genres
genres = '' genres = ''
if 'tags' in book: if 'genres' in book:
_soup = BeautifulSoup('') _soup = BeautifulSoup('')
genresTag = Tag(_soup,'p') genresTag = Tag(_soup,'p')
gtc = 0 gtc = 0
for (i, tag) in enumerate(sorted(book.get('tags', []))): for (i, tag) in enumerate(sorted(book.get('genres', []))):
aTag = Tag(_soup,'a') aTag = Tag(_soup,'a')
if self.opts.generate_genres: if self.opts.generate_genres:
aTag['href'] = "Genre_%s.html" % self.genre_tags_dict[tag] aTag['href'] = "Genre_%s.html" % self.genre_tags_dict[tag]
aTag.insert(0,escape(NavigableString(tag))) aTag.insert(0,escape(NavigableString(tag)))
genresTag.insert(gtc, aTag) genresTag.insert(gtc, aTag)
gtc += 1 gtc += 1
if i < len(book['tags'])-1: if i < len(book['genres'])-1:
genresTag.insert(gtc, NavigableString(' &middot; ')) genresTag.insert(gtc, NavigableString(' &middot; '))
gtc += 1 gtc += 1
genres = genresTag.renderContents() genres = genresTag.renderContents()
@ -4382,7 +4424,7 @@ class CatalogBuilder(object):
""" Return the first friendly_tag matching genre. """ Return the first friendly_tag matching genre.
Scan self.genre_tags_dict[] for first friendly_tag matching genre. Scan self.genre_tags_dict[] for first friendly_tag matching genre.
genre_tags_dict[] populated in filter_db_tags(). genre_tags_dict[] populated in filter_genre_tags().
Args: Args:
genre (str): genre to match genre (str): genre to match

View File

@ -215,7 +215,7 @@ class DevNull(object):
NULL = DevNull() NULL = DevNull()
def do_add(db, paths, one_book_per_directory, recurse, add_duplicates, otitle, def do_add(db, paths, one_book_per_directory, recurse, add_duplicates, otitle,
oauthors, oisbn, otags, oseries, oseries_index): oauthors, oisbn, otags, oseries, oseries_index, ocover):
orig = sys.stdout orig = sys.stdout
#sys.stdout = NULL #sys.stdout = NULL
try: try:
@ -247,6 +247,8 @@ def do_add(db, paths, one_book_per_directory, recurse, add_duplicates, otitle,
if val: setattr(mi, x, val) if val: setattr(mi, x, val)
if oseries: if oseries:
mi.series_index = oseries_index mi.series_index = oseries_index
if ocover:
mi.cover = ocover
formats.append(format) formats.append(format)
metadata.append(mi) metadata.append(mi)
@ -335,11 +337,12 @@ the directory related options below.
help=_('Set the series of the added book(s)')) help=_('Set the series of the added book(s)'))
parser.add_option('-S', '--series-index', default=1.0, type=float, parser.add_option('-S', '--series-index', default=1.0, type=float,
help=_('Set the series number of the added book(s)')) help=_('Set the series number of the added book(s)'))
parser.add_option('-c', '--cover', default=None,
help=_('Path to the cover to use for the added book'))
return parser return parser
def do_add_empty(db, title, authors, isbn, tags, series, series_index): def do_add_empty(db, title, authors, isbn, tags, series, series_index, cover):
from calibre.ebooks.metadata import MetaInformation from calibre.ebooks.metadata import MetaInformation
mi = MetaInformation(None) mi = MetaInformation(None)
if title is not None: if title is not None:
@ -352,6 +355,8 @@ def do_add_empty(db, title, authors, isbn, tags, series, series_index):
mi.tags = tags mi.tags = tags
if series: if series:
mi.series, mi.series_index = series, series_index mi.series, mi.series_index = series, series_index
if cover:
mi.cover = cover
db.import_book(mi, []) db.import_book(mi, [])
write_dirtied(db) write_dirtied(db)
send_message() send_message()
@ -364,7 +369,7 @@ def command_add(args, dbpath):
tags = [x.strip() for x in opts.tags.split(',')] if opts.tags else [] tags = [x.strip() for x in opts.tags.split(',')] if opts.tags else []
if opts.empty: if opts.empty:
do_add_empty(get_db(dbpath, opts), opts.title, aut, opts.isbn, tags, do_add_empty(get_db(dbpath, opts), opts.title, aut, opts.isbn, tags,
opts.series, opts.series_index) opts.series, opts.series_index, opts.cover)
return 0 return 0
if len(args) < 2: if len(args) < 2:
parser.print_help() parser.print_help()
@ -373,7 +378,7 @@ def command_add(args, dbpath):
return 1 return 1
do_add(get_db(dbpath, opts), args[1:], opts.one_book_per_directory, do_add(get_db(dbpath, opts), args[1:], opts.one_book_per_directory,
opts.recurse, opts.duplicates, opts.title, aut, opts.isbn, opts.recurse, opts.duplicates, opts.title, aut, opts.isbn,
tags, opts.series, opts.series_index) tags, opts.series, opts.series_index, opts.cover)
return 0 return 0
def do_remove(db, ids): def do_remove(db, ids):

View File

@ -20,6 +20,7 @@ from calibre.ebooks.metadata import title_sort
from calibre.utils.date import parse_date, as_local_time from calibre.utils.date import parse_date, as_local_time
from calibre import strftime, prints, sanitize_file_name_unicode from calibre import strftime, prints, sanitize_file_name_unicode
from calibre.ptempfile import SpooledTemporaryFile from calibre.ptempfile import SpooledTemporaryFile
from calibre.db.lazy import FormatsList
plugboard_any_device_value = 'any device' plugboard_any_device_value = 'any device'
plugboard_any_format_value = 'any format' plugboard_any_format_value = 'any format'
@ -159,7 +160,7 @@ class Formatter(TemplateFormatter):
return self.composite_values[key] return self.composite_values[key]
if key in kwargs: if key in kwargs:
val = kwargs[key] val = kwargs[key]
if isinstance(val, list): if isinstance(val, list) or isinstance(val, FormatsList):
val = ','.join(val) val = ','.join(val)
return val.replace('/', '_').replace('\\', '_') return val.replace('/', '_').replace('\\', '_')
return '' return ''

View File

@ -22,6 +22,7 @@ from calibre.library.comments import comments_to_html
from calibre.library.server import custom_fields_to_display from calibre.library.server import custom_fields_to_display
from calibre.library.field_metadata import category_icon_map from calibre.library.field_metadata import category_icon_map
from calibre.library.server.utils import quote, unquote from calibre.library.server.utils import quote, unquote
from calibre.ebooks.metadata.sources.identify import urls_from_identifiers
def xml(*args, **kwargs): def xml(*args, **kwargs):
ans = prepare_string_for_xml(*args, **kwargs) ans = prepare_string_for_xml(*args, **kwargs)
@ -823,6 +824,16 @@ class BrowseServer(object):
if field in ('title', 'formats') or not args.get(field, False) \ if field in ('title', 'formats') or not args.get(field, False) \
or not m['name']: or not m['name']:
continue continue
if field == 'identifiers':
urls = urls_from_identifiers(mi.get(field, {}))
links = [u'<a class="details_category_link" target="_new" href="%s" title="%s:%s">%s</a>' % (url, id_typ, id_val, name)
for name, id_typ, id_val, url in urls]
links = u', '.join(links)
if links:
fields.append((m['name'], u'<strong>%s: </strong>%s'%(
_('Ids'), links)))
continue
if m['datatype'] == 'rating': if m['datatype'] == 'rating':
r = u'<strong>%s: </strong>'%xml(m['name']) + \ r = u'<strong>%s: </strong>'%xml(m['name']) + \
render_rating(mi.get(field)/2.0, self.opts.url_prefix, render_rating(mi.get(field)/2.0, self.opts.url_prefix,

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-08-14 16:03+0000\n" "PO-Revision-Date: 2012-08-14 16:03+0000\n"
"Last-Translator: Albé Theunissen <Unknown>\n" "Last-Translator: Albé Theunissen <Unknown>\n"
"Language-Team: Afrikaans <af@li.org>\n" "Language-Team: Afrikaans <af@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:45+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:27+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12624,12 +12624,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17229,87 +17229,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17620,6 +17616,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2011-09-26 16:28+0000\n" "PO-Revision-Date: 2011-09-26 16:28+0000\n"
"Last-Translator: Xandru <xandru@softastur.org>\n" "Last-Translator: Xandru <xandru@softastur.org>\n"
"Language-Team: Asturian <ast@li.org>\n" "Language-Team: Asturian <ast@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:46+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:28+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12593,12 +12593,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17198,87 +17198,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17589,6 +17585,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-08-07 14:00+0000\n" "PO-Revision-Date: 2012-08-07 14:00+0000\n"
"Last-Translator: Emin Mastizadeh <emin25@ovi.com>\n" "Last-Translator: Emin Mastizadeh <emin25@ovi.com>\n"
"Language-Team: Azerbaijani <az@li.org>\n" "Language-Team: Azerbaijani <az@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:46+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:28+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12591,12 +12591,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17196,87 +17196,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17587,6 +17583,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-10-14 04:57+0000\n" "PO-Revision-Date: 2012-10-14 04:57+0000\n"
"Last-Translator: Walid AMMOU <w.ammou@gmail.com>\n" "Last-Translator: Walid AMMOU <w.ammou@gmail.com>\n"
"Language-Team: Berber (Other) <ber@li.org>\n" "Language-Team: Berber (Other) <ber@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:47+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:29+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12587,12 +12587,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17192,87 +17192,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17583,6 +17579,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -6,7 +6,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre 0.4.51\n" "Project-Id-Version: calibre 0.4.51\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-10-24 13:23+0000\n" "PO-Revision-Date: 2012-10-24 13:23+0000\n"
"Last-Translator: Nelly Hoang <Unknown>\n" "Last-Translator: Nelly Hoang <Unknown>\n"
"Language-Team: bg\n" "Language-Team: bg\n"
@ -14,7 +14,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:47+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:29+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
@ -12699,12 +12699,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Следваща страница" msgstr "Следваща страница"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Предишна страница" msgstr "Предишна страница"
@ -17306,87 +17306,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17697,6 +17693,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-04-12 14:19+0000\n" "PO-Revision-Date: 2012-04-12 14:19+0000\n"
"Last-Translator: Shahnoor Ashraf <kaziweb1@gmail.com>\n" "Last-Translator: Shahnoor Ashraf <kaziweb1@gmail.com>\n"
"Language-Team: Bengali <bn@li.org>\n" "Language-Team: Bengali <bn@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:46+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:29+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12587,12 +12587,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17192,87 +17192,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17583,6 +17579,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2011-08-13 04:22+0000\n" "PO-Revision-Date: 2011-08-13 04:22+0000\n"
"Last-Translator: Denis <Unknown>\n" "Last-Translator: Denis <Unknown>\n"
"Language-Team: Breton <br@li.org>\n" "Language-Team: Breton <br@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n" "Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:47+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:29+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12593,12 +12593,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17198,87 +17198,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17589,6 +17585,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-01-02 13:31+0000\n" "PO-Revision-Date: 2012-01-02 13:31+0000\n"
"Last-Translator: Kenan Dervišević <kenan3008@gmail.com>\n" "Last-Translator: Kenan Dervišević <kenan3008@gmail.com>\n"
"Language-Team: Bosnian <bs@li.org>\n" "Language-Team: Bosnian <bs@li.org>\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:47+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:29+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12594,12 +12594,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17203,87 +17203,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "Nema rezultata za:" msgstr "Nema rezultata za:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "Pog&ledaj u rječniku" msgstr "Pog&ledaj u rječniku"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "Traži &sljedeće pojavljivanje" msgstr "Traži &sljedeće pojavljivanje"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Idi na..." msgstr "Idi na..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Sljedeća sekcija" msgstr "Sljedeća sekcija"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Prethodna sekcija" msgstr "Prethodna sekcija"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "Početak dokumenta" msgstr "Početak dokumenta"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "Kraj dokumenta" msgstr "Kraj dokumenta"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "Početak sekcije" msgstr "Početak sekcije"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "Kraj sekcije" msgstr "Kraj sekcije"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17594,6 +17590,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "Testno ime je netačno" msgstr "Testno ime je netačno"

View File

@ -10,15 +10,15 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: ca\n" "Project-Id-Version: ca\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-11-10 17:12+0000\n" "PO-Revision-Date: 2012-11-25 12:08+0000\n"
"Last-Translator: Ferran Rius <frius64@hotmail.com>\n" "Last-Translator: Ferran Rius <frius64@hotmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:48+0000\n" "X-Launchpad-Export-Date: 2012-11-26 04:37+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -5923,7 +5923,7 @@ msgstr "Massa llarg"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:324 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:324
msgid "Not found" msgid "Not found"
msgstr "" msgstr "No s'ha trobat"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:325 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:325
#, python-format #, python-format
@ -5931,6 +5931,9 @@ msgid ""
"Cannot rename as no library was found at %s. Try switching to this library " "Cannot rename as no library was found at %s. Try switching to this library "
"first, then switch back and retry the renaming." "first, then switch back and retry the renaming."
msgstr "" msgstr ""
"No s'ha pogut canviar el nom perquè no s'ha trobar cap biblioteca a %s. "
"Intenteu canviar primer a aquesta biblioteca, torneu a l'anterior i intenteu "
"canviar el norm un altre cop."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:335 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:335
msgid "Rename failed" msgid "Rename failed"
@ -14163,12 +14166,12 @@ msgid "LRF Viewer toolbar"
msgstr "Barra d'eines del visor de LRF" msgstr "Barra d'eines del visor de LRF"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Pàgina següent" msgstr "Pàgina següent"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Pàgina anterior" msgstr "Pàgina anterior"
@ -15130,6 +15133,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:150 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:150
msgid "Automatically &convert added books to the current output format" msgid "Automatically &convert added books to the current output format"
msgstr "" msgstr ""
"&Converteix automàticament els llibres afegits al format de sortida actual"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:151
msgid "The Add &Process" msgid "The Add &Process"
@ -18294,11 +18298,11 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:177 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:177
msgid "No query" msgid "No query"
msgstr "" msgstr "No hi ha cap consulta"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:178
msgid "You must enter a title, author or keyword to search for." msgid "You must enter a title, author or keyword to search for."
msgstr "" msgstr "Heu d'introduir el títol, autor o paraula clau que s'ha de cercar."
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:300 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:300
msgid "Customize get books search" msgid "Customize get books search"
@ -18322,19 +18326,19 @@ msgstr "Get Books"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:171 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:171
msgid "Search by title" msgid "Search by title"
msgstr "" msgstr "Cerca per títol"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:173
msgid "Search by author" msgid "Search by author"
msgstr "" msgstr "Cerca per autor"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:175
msgid "&Keyword:" msgid "&Keyword:"
msgstr "" msgstr "Paraula &clau:"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:176
msgid "Search by any keyword" msgid "Search by any keyword"
msgstr "" msgstr "Cerca qualsevol de les paraules clau"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:182 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:182
msgid "Open a selected book in the system's web browser" msgid "Open a selected book in the system's web browser"
@ -19143,11 +19147,11 @@ msgstr "Mostra la barra de desplaçament en mode de pantalla complerta."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:63
msgid "Start viewer in full screen mode" msgid "Start viewer in full screen mode"
msgstr "" msgstr "Inicia el visor en mode de pantalla completa"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:65 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:65
msgid "Show full screen usage help" msgid "Show full screen usage help"
msgstr "" msgstr "Mostra l'ajuda de la utilització en pantalla completa"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:74 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:74
msgid "Font options" msgid "Font options"
@ -19314,11 +19318,11 @@ msgstr "Mostra la barra de de&splaçament en mode de pantalla complerta."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:407
msgid "&Start viewer in full screen mode" msgid "&Start viewer in full screen mode"
msgstr "" msgstr "&Inicia el visor en mode de pantalla completa"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:408 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:408
msgid "Show &help message when starting full screen mode" msgid "Show &help message when starting full screen mode"
msgstr "" msgstr "Mostra un missatge d'&ajuda en iniciar en mode de pantalla completa"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:409 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:409
msgid "F&ull screen options" msgid "F&ull screen options"
@ -19450,87 +19454,83 @@ msgstr "&Temes"
msgid "No results found for:" msgid "No results found for:"
msgstr "No hi ha resultats per a:" msgstr "No hi ha resultats per a:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "&Cerca al diccionari" msgstr "&Cerca al diccionari"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "Visualitza una &imatge" msgstr "Visualitza una &imatge"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr "Visualitza la &taula..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "&Cerca la coincidència següent" msgstr "&Cerca la coincidència següent"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Vés a..." msgstr "Vés a..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Propera secció" msgstr "Propera secció"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Secció anterior" msgstr "Secció anterior"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "Inici del document" msgstr "Inici del document"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "Final del document" msgstr "Final del document"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "Inici de la secció" msgstr "Inici de la secció"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "Final de la secció" msgstr "Final de la secció"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr "Mida de lletra normal"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr "C&erca «%s» a Google"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "A&tansa" msgstr "A&tansa"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "A&llunya" msgstr "A&llunya"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "&Desa com a" msgstr "&Desa com a"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "&Rota" msgstr "&Rota"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "Trieu en quin fitxer es desarà" msgstr "Trieu en quin fitxer es desarà"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "Visualitza la imatge: %s" msgstr "Visualitza la imatge: %s"
@ -19860,6 +19860,18 @@ msgstr "No s'ha pogut renderitzar"
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "No s'ha pogut renderitzar el document %s" msgstr "No s'ha pogut renderitzar el document %s"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr "Visualitza la taula"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr "No s'ha trobat cap taula"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr "No s'ha trobat cap taula"
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "Nom de prova no vàlid" msgstr "Nom de prova no vàlid"

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-07-31 12:00+0000\n" "PO-Revision-Date: 2012-07-31 12:00+0000\n"
"Last-Translator: Štěpán Krb <stepan.krb@gmail.com>\n" "Last-Translator: Štěpán Krb <stepan.krb@gmail.com>\n"
"Language-Team: Czech <cs@li.org>\n" "Language-Team: Czech <cs@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:48+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:30+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -13377,12 +13377,12 @@ msgid "LRF Viewer toolbar"
msgstr "Nástrojová išta prohlížeče LRF" msgstr "Nástrojová išta prohlížeče LRF"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Následující strana" msgstr "Následující strana"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Předcházející strana" msgstr "Předcházející strana"
@ -18079,87 +18079,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "Žádné výsledky nenalezeny pro:" msgstr "Žádné výsledky nenalezeny pro:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "Podívat do slovníku" msgstr "Podívat do slovníku"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Přejít na..." msgstr "Přejít na..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Další sekce" msgstr "Další sekce"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Předchozí sekce" msgstr "Předchozí sekce"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "Začátek dokumentu" msgstr "Začátek dokumentu"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "Konec dokumentu" msgstr "Konec dokumentu"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "Začátek sekce" msgstr "Začátek sekce"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "Konec sekce" msgstr "Konec sekce"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -18477,6 +18473,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-02-26 20:21+0000\n" "PO-Revision-Date: 2012-02-26 20:21+0000\n"
"Last-Translator: Rachael Munns <vashtijoy@gmail.com>\n" "Last-Translator: Rachael Munns <vashtijoy@gmail.com>\n"
"Language-Team: Welsh <cy@li.org>\n" "Language-Team: Welsh <cy@li.org>\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=n==1 ? 0 : n==2 ? 1 : (n != 8 && n != 11) ? " "Plural-Forms: nplurals=4; plural=n==1 ? 0 : n==2 ? 1 : (n != 8 && n != 11) ? "
"2 : 3;\n" "2 : 3;\n"
"X-Launchpad-Export-Date: 2012-11-22 05:04+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:45+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12599,12 +12599,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17204,87 +17204,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17595,6 +17591,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-07-13 17:59+0000\n" "PO-Revision-Date: 2012-07-13 17:59+0000\n"
"Last-Translator: Jens Holm <Jens@far-out.dk>\n" "Last-Translator: Jens Holm <Jens@far-out.dk>\n"
"Language-Team: Danish <da@li.org>\n" "Language-Team: Danish <da@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:48+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:30+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -13137,12 +13137,12 @@ msgid "LRF Viewer toolbar"
msgstr "LRF-viser værktøjslinje" msgstr "LRF-viser værktøjslinje"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Næste side" msgstr "Næste side"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Forrige side" msgstr "Forrige side"
@ -17871,87 +17871,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "Ingen resultater fundet for:" msgstr "Ingen resultater fundet for:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "&Opslag i ordbog" msgstr "&Opslag i ordbog"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Gå til..." msgstr "Gå til..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Næste sektion" msgstr "Næste sektion"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Forrige sektion" msgstr "Forrige sektion"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "Dokument start" msgstr "Dokument start"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "Dokument slut" msgstr "Dokument slut"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "Sektion start" msgstr "Sektion start"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "Sektion slut" msgstr "Sektion slut"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -18267,6 +18263,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: de\n" "Project-Id-Version: de\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-11-16 12:55+0000\n" "PO-Revision-Date: 2012-11-16 12:55+0000\n"
"Last-Translator: Dennis Baudys <Unknown>\n" "Last-Translator: Dennis Baudys <Unknown>\n"
"Language-Team: American English <kde-i18n-doc@lists.kde.org>\n" "Language-Team: American English <kde-i18n-doc@lists.kde.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:51+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:33+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
"X-Poedit-Bookmarks: 3327,-1,-1,-1,-1,-1,-1,-1,-1,-1\n" "X-Poedit-Bookmarks: 3327,-1,-1,-1,-1,-1,-1,-1,-1,-1\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
@ -14255,12 +14255,12 @@ msgid "LRF Viewer toolbar"
msgstr "Symbolleiste des LRF-Betrachters" msgstr "Symbolleiste des LRF-Betrachters"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Nächste Seite" msgstr "Nächste Seite"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Vorherige Seite" msgstr "Vorherige Seite"
@ -19580,87 +19580,83 @@ msgstr "&Themes"
msgid "No results found for:" msgid "No results found for:"
msgstr "Kein Ergebnis gefunden für:" msgstr "Kein Ergebnis gefunden für:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "Im Wörterbuch nachsch&lagen" msgstr "Im Wörterbuch nachsch&lagen"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "Betrachte Bild..." msgstr "Betrachte Bild..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "&Suche nach dem nächsten Vorkommen" msgstr "&Suche nach dem nächsten Vorkommen"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Gehe zu..." msgstr "Gehe zu..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Nächster Abschnitt" msgstr "Nächster Abschnitt"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Vorheriger Abschnitt" msgstr "Vorheriger Abschnitt"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "Beginn des Dokuments" msgstr "Beginn des Dokuments"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "Ende des Dokuments" msgstr "Ende des Dokuments"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "Beginn des Abschnitts" msgstr "Beginn des Abschnitts"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "Ende des Abschnitts" msgstr "Ende des Abschnitts"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "Vergrößern" msgstr "Vergrößern"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "Verkleinern" msgstr "Verkleinern"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "Speichern als" msgstr "Speichern als"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "D&rehen" msgstr "D&rehen"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "Wählen Sie eine Datei zum speichern" msgstr "Wählen Sie eine Datei zum speichern"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "Zeige Bild: %s" msgstr "Zeige Bild: %s"
@ -19991,6 +19987,18 @@ msgstr "Darstellen fehlgeschlagen"
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "Dokument %s konnte nicht dargestellt werden" msgstr "Dokument %s konnte nicht dargestellt werden"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "Testname ungültig" msgstr "Testname ungültig"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-11-08 01:50+0000\n" "PO-Revision-Date: 2012-11-08 01:50+0000\n"
"Last-Translator: Monopatis Dimitris <Unknown>\n" "Last-Translator: Monopatis Dimitris <Unknown>\n"
"Language-Team: Greek <el@li.org>\n" "Language-Team: Greek <el@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:51+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:33+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12806,12 +12806,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Επόμενη Σελίδα" msgstr "Επόμενη Σελίδα"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Προηγούμενη Σελίδα" msgstr "Προηγούμενη Σελίδα"
@ -17411,87 +17411,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Μετάβαση στο..." msgstr "Μετάβαση στο..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Επόμενο τμήμα" msgstr "Επόμενο τμήμα"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Προηγούμενο τμήμα" msgstr "Προηγούμενο τμήμα"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17802,6 +17798,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-07-14 23:02+0000\n" "PO-Revision-Date: 2012-07-14 23:02+0000\n"
"Last-Translator: Cruz Bishop <Unknown>\n" "Last-Translator: Cruz Bishop <Unknown>\n"
"Language-Team: English (Australia) <en_AU@li.org>\n" "Language-Team: English (Australia) <en_AU@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 05:06+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:46+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12593,12 +12593,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17198,87 +17198,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17589,6 +17585,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2011-08-05 17:28+0000\n" "PO-Revision-Date: 2011-08-05 17:28+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n" "Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: English (Canada) <en_CA@li.org>\n" "Language-Team: English (Canada) <en_CA@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 05:06+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:47+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12664,12 +12664,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17269,87 +17269,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17660,6 +17656,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-05-28 15:00+0000\n" "PO-Revision-Date: 2012-05-28 15:00+0000\n"
"Last-Translator: Vibhav Pant <vibhavp@gmail.com>\n" "Last-Translator: Vibhav Pant <vibhavp@gmail.com>\n"
"Language-Team: English (United Kingdom) <en_GB@li.org>\n" "Language-Team: English (United Kingdom) <en_GB@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 05:05+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:46+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -13703,12 +13703,12 @@ msgid "LRF Viewer toolbar"
msgstr "LRF Viewer toolbar" msgstr "LRF Viewer toolbar"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Next Page" msgstr "Next Page"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Previous Page" msgstr "Previous Page"
@ -18829,87 +18829,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "No results found for:" msgstr "No results found for:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "&Lookup in dictionary" msgstr "&Lookup in dictionary"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "&Search for next occurrence" msgstr "&Search for next occurrence"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Go to..." msgstr "Go to..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Next Section" msgstr "Next Section"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Previous Section" msgstr "Previous Section"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "Document Start" msgstr "Document Start"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "Document End" msgstr "Document End"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "Section Start" msgstr "Section Start"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "Section End" msgstr "Section End"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -19229,6 +19225,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "Test name invalid" msgstr "Test name invalid"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-08-03 13:00+0000\n" "PO-Revision-Date: 2012-08-03 13:00+0000\n"
"Last-Translator: Cyril <tedehur@gmail.com>\n" "Last-Translator: Cyril <tedehur@gmail.com>\n"
"Language-Team: Esperanto <eo@li.org>\n" "Language-Team: Esperanto <eo@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:49+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:31+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12619,12 +12619,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17224,87 +17224,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17615,6 +17611,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -10,15 +10,15 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: es\n" "Project-Id-Version: es\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-11-10 09:09+0000\n" "PO-Revision-Date: 2012-11-23 14:05+0000\n"
"Last-Translator: Jellby <Unknown>\n" "Last-Translator: Jellby <Unknown>\n"
"Language-Team: Español; Castellano <>\n" "Language-Team: Español; Castellano <>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 05:01+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:42+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:533 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:533
@ -5945,7 +5945,7 @@ msgstr "Demasiado larga"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:324 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:324
msgid "Not found" msgid "Not found"
msgstr "" msgstr "No se encontró"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:325 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:325
#, python-format #, python-format
@ -5953,6 +5953,9 @@ msgid ""
"Cannot rename as no library was found at %s. Try switching to this library " "Cannot rename as no library was found at %s. Try switching to this library "
"first, then switch back and retry the renaming." "first, then switch back and retry the renaming."
msgstr "" msgstr ""
"No se puede renombrar porque no se encontró ninguna biblioteca en %s. Pruebe "
"a cambiar primero a la biblioteca, luego vuelva a la anterior e intente "
"renombrar de nuevo."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:335 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:335
msgid "Rename failed" msgid "Rename failed"
@ -14150,12 +14153,12 @@ msgid "LRF Viewer toolbar"
msgstr "Barra de herramientas del visor de LRF" msgstr "Barra de herramientas del visor de LRF"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Página siguiente" msgstr "Página siguiente"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Página anterior" msgstr "Página anterior"
@ -15111,6 +15114,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:150 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:150
msgid "Automatically &convert added books to the current output format" msgid "Automatically &convert added books to the current output format"
msgstr "" msgstr ""
"&Convertir automáticamente los libros añadidos al formato de salida actual"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:151
msgid "The Add &Process" msgid "The Add &Process"
@ -18254,11 +18258,11 @@ msgstr "Al comprar en esta librería apoya al programador de calibre: %s.</p>"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:177 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:177
msgid "No query" msgid "No query"
msgstr "" msgstr "No hay consulta"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:178
msgid "You must enter a title, author or keyword to search for." msgid "You must enter a title, author or keyword to search for."
msgstr "" msgstr "Debe introducir un título, autor o palabra clave para buscar."
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:300 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:300
msgid "Customize get books search" msgid "Customize get books search"
@ -18282,19 +18286,19 @@ msgstr "Get Books"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:171 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:171
msgid "Search by title" msgid "Search by title"
msgstr "" msgstr "Buscar por título"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:173
msgid "Search by author" msgid "Search by author"
msgstr "" msgstr "Buscar por autor"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:175
msgid "&Keyword:" msgid "&Keyword:"
msgstr "" msgstr "&Palabra clave:"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:176
msgid "Search by any keyword" msgid "Search by any keyword"
msgstr "" msgstr "Buscar cualquier palabra clave"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:182 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:182
msgid "Open a selected book in the system's web browser" msgid "Open a selected book in the system's web browser"
@ -19093,11 +19097,11 @@ msgstr "Mostrar la barra de desplazamiento en el modo de pantalla completa."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:63
msgid "Start viewer in full screen mode" msgid "Start viewer in full screen mode"
msgstr "" msgstr "Iniciar visor en modo de pantalla completa"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:65 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:65
msgid "Show full screen usage help" msgid "Show full screen usage help"
msgstr "" msgstr "Mostrar ayuda de uso en pantalla completa"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:74 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:74
msgid "Font options" msgid "Font options"
@ -19263,11 +19267,11 @@ msgstr "Mostrar la &barra de desplazamiento en el modo de pantalla completa"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:407
msgid "&Start viewer in full screen mode" msgid "&Start viewer in full screen mode"
msgstr "" msgstr "&Iniciar el visor en modo de pantalla completa"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:408 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:408
msgid "Show &help message when starting full screen mode" msgid "Show &help message when starting full screen mode"
msgstr "" msgstr "Mostrar mensaje de &ayuda al iniciar el modo de pantalla completa"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:409 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:409
msgid "F&ull screen options" msgid "F&ull screen options"
@ -19400,87 +19404,83 @@ msgstr "&Temas"
msgid "No results found for:" msgid "No results found for:"
msgstr "No hay resultados para:" msgstr "No hay resultados para:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "&Localizar en el diccionario" msgstr "&Localizar en el diccionario"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "Ver &imagen..." msgstr "Ver &imagen..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr "Ver &tabla..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "&Buscar ocurrencia siguiente" msgstr "&Buscar ocurrencia siguiente"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Ir a..." msgstr "Ir a..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Siguiente sección" msgstr "Siguiente sección"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Sección anterior" msgstr "Sección anterior"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "Inicio del documento" msgstr "Inicio del documento"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "Final del documento" msgstr "Final del documento"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "Inicio de la sección" msgstr "Inicio de la sección"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "Final de la sección" msgstr "Final de la sección"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr "Tamaño de letra normal"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr "B&uscar «%s» en Google"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "A&cercar" msgstr "A&cercar"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "A&lejar" msgstr "A&lejar"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "&Guardar como" msgstr "&Guardar como"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "&Rotar" msgstr "&Rotar"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "Elija un archivo donde guardar" msgstr "Elija un archivo donde guardar"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "Ver imagen: %s" msgstr "Ver imagen: %s"
@ -19808,6 +19808,18 @@ msgstr "Fallo al procesar"
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "No se pudo procesar el documento %s" msgstr "No se pudo procesar el documento %s"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr "Ver tabla"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr "No se encontró ninguna tabla"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr "No se encontró ninguna tabla"
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "Nombre de prueba no válido" msgstr "Nombre de prueba no válido"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-05-02 00:16+0000\n" "PO-Revision-Date: 2012-05-02 00:16+0000\n"
"Last-Translator: Kaur Alasoo <kauralasoo@gmail.com>\n" "Last-Translator: Kaur Alasoo <kauralasoo@gmail.com>\n"
"Language-Team: Estonian <et@li.org>\n" "Language-Team: Estonian <et@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:49+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:31+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12612,12 +12612,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17217,87 +17217,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17608,6 +17604,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,15 +7,15 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-11-19 23:30+0000\n" "PO-Revision-Date: 2012-11-24 18:16+0000\n"
"Last-Translator: Ander Martínez <Unknown>\n" "Last-Translator: Ander Martínez <Unknown>\n"
"Language-Team: http://librezale.org/wiki/Calibre\n" "Language-Team: http://librezale.org/wiki/Calibre\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:46+0000\n" "X-Launchpad-Export-Date: 2012-11-25 05:23+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
"Language: eu\n" "Language: eu\n"
@ -1094,6 +1094,15 @@ msgid ""
"iTunes</em> menu item.</p><p>Enabling the Apple driver for direct connection " "iTunes</em> menu item.</p><p>Enabling the Apple driver for direct connection "
"to iDevices is an unsupported advanced user mode.</p><p></p>" "to iDevices is an unsupported advanced user mode.</p><p></p>"
msgstr "" msgstr ""
"<p>Calibrek zure Apple iGailua konektatzean antzeman dezan nahi baduzu, "
"<b>Desgaitu Apple kontrolatzailea</b> klikatu.</p><p>Liburuak iGailura "
"bidaltzeko, klikatu <b>Desgaitu Apple kontrolatzailea</b>, gero 'Connect to "
"iTunes' metodoa erabili ezazu, zeina <a "
"href=\"http://www.mobileread.com/forums/showthread.php?t=118559\">Calibre + "
"iDevices FAQ</a>-en, azaltzen den, "
"<em>Konektatu/Konpartitu</em>|<em>Konektatu iTunes-era</em> menuko sarrera "
"erabilita.</p><p>Zuzenean iGailuetara konektatzeko Apple kontrolatzailea "
"gaitzea sostengurik gabeko aukera aurreratua da.</p><p></p>"
#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:78 #: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:78
msgid "Disable Apple driver" msgid "Disable Apple driver"
@ -1738,6 +1747,9 @@ msgid ""
"but in other cases they are just pointers to the web site to buy. Enable if " "but in other cases they are just pointers to the web site to buy. Enable if "
"you wish to see/delete them." "you wish to see/delete them."
msgstr "" msgstr ""
"Kobok gailuan bertan gailuan bertan aholkuak ematen ditu. Kasu batzuetan "
"hauek fitxategiak dituzte baina beste kasuetan webgunean erosteko bidea "
"erakusten dute. Gaitu hauek ikusteko/kentzeko."
#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:88 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:88
#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1242 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1242
@ -1751,6 +1763,10 @@ msgid ""
"be Dragons!! Enable only if you are comfortable with restoring your kobo to " "be Dragons!! Enable only if you are comfortable with restoring your kobo to "
"factory defaults and testing software" "factory defaults and testing software"
msgstr "" msgstr ""
"Kobo-k firmware-a eta datubase bertsioa tarteka eguneratzen ditu. Aukera "
"honekin Calibre idazten eta irakurtzen saiatuko da - Kontuz!! Gaitu ezazu "
"bakarrik fabrikako ezarpenetara itzultzeak ez bazaitu kikiltzen eta "
"softwarea probatzen lagundu nahi baduzu"
#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:617 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:617
msgid "Kobo database version unsupported - See details" msgid "Kobo database version unsupported - See details"
@ -1858,6 +1874,8 @@ msgid ""
"Delete any empty bookshelves from the Kobo Touch when syncing is finished. " "Delete any empty bookshelves from the Kobo Touch when syncing is finished. "
"This is only for firmware V2.0.0 or later." "This is only for firmware V2.0.0 or later."
msgstr "" msgstr ""
"Ezabatu hutsik dauden apalategiak Kobo Touch-etik sinkronizazioa bukatzean. "
"Hau V2.0.0 eta geroko firmwareentzat da bakarrik."
#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1220 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1220
msgid "Upload covers for books" msgid "Upload covers for books"
@ -1882,6 +1900,11 @@ msgid ""
"factory defaults and testing software. This driver supports firmware V2.0.x " "factory defaults and testing software. This driver supports firmware V2.0.x "
"and DBVersion up to " "and DBVersion up to "
msgstr "" msgstr ""
"Kobo-k firmware-a eta datubase bertsioa tarteka eguneratzen ditu. Aukera "
"honekin Calibre idazten eta irakurtzen saiatuko da - Kontuz!! Gaitu ezazu "
"bakarrik fabrikako ezarpenetara itzultzeak ez bazaitu kikiltzen eta "
"softwarea probatzen lagundu nahi baduzu. Kontrolatzaile honek V2.0.x "
"firmware bertsiora arte eta hurrengo DB bertsiora arte sostengatzen du: "
#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1249 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1249
msgid "Title to test when debugging" msgid "Title to test when debugging"
@ -2347,6 +2370,9 @@ msgid ""
"device does nothing for %d minutes. Unchecking this box disables this " "device does nothing for %d minutes. Unchecking this box disables this "
"timeout, so calibre will never automatically disconnect." "timeout, so calibre will never automatically disconnect."
msgstr "" msgstr ""
"Lauki hau markatzen bada, calibre deskonektatu egingo da konektatutako gailu "
"batek ez badu ezer egiten %d minututan. Lauki hau desmarkatuta denbora-muga "
"hori desaktibatzen da eta calibre ez da automatikoki deskonektatuko."
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:296 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:296
msgid "Use this IP address" msgid "Use this IP address"
@ -2358,6 +2384,9 @@ msgid ""
"address. The driver will listen only on the entered address, and this " "address. The driver will listen only on the entered address, and this "
"address will be the one advertized over mDNS (bonjour)." "address will be the one advertized over mDNS (bonjour)."
msgstr "" msgstr ""
"Aukera hau erabili kontrolatzailea IP helbide jakin batetik entzunarazteko. "
"Kontrolatzaileak emandako helbidetik soilik entzungo du, eta mDNS-tik "
"(bonjour) iragarriko den helbidea izango da hori."
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:766 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:766
#, python-format #, python-format
@ -2576,6 +2605,9 @@ msgid ""
"This field is used only on windows. Get this ID using Preferences -> Misc -> " "This field is used only on windows. Get this ID using Preferences -> Misc -> "
"Get information to set up the user-defined device" "Get information to set up the user-defined device"
msgstr "" msgstr ""
"Eremu hau Windows-en bakarrik erabiltzen da. Lortu ID hori Hobespenak-"
">Denetarik->Lortu informazioa aukeraren bidez, erabiltzaileak definitutako "
"gailua erabiltzeko."
#: /home/kovid/work/calibre/src/calibre/devices/user_defined/driver.py:51 #: /home/kovid/work/calibre/src/calibre/devices/user_defined/driver.py:51
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:81 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:81
@ -2618,6 +2650,8 @@ msgid ""
"Check this box if the device's main memory is being seen as card a and the " "Check this box if the device's main memory is being seen as card a and the "
"card is being seen as main memory" "card is being seen as main memory"
msgstr "" msgstr ""
"Hautatu hurrengo laukia gailuaren memoria nagusia txartel bat bezala ikusten "
"bada, eta txartela memoria nagusia bezala."
#: /home/kovid/work/calibre/src/calibre/devices/utils.py:18 #: /home/kovid/work/calibre/src/calibre/devices/utils.py:18
#: /home/kovid/work/calibre/src/calibre/devices/utils.py:24 #: /home/kovid/work/calibre/src/calibre/devices/utils.py:24
@ -2627,6 +2661,10 @@ msgid ""
"device action. Right click on the send to device button and reset the " "device action. Right click on the send to device button and reset the "
"default action to be \"Send to main memory\"." "default action to be \"Send to main memory\"."
msgstr "" msgstr ""
"Irakurleak ez dauka %s txartel gordailua. Baliteke zuk lehenetsitako "
"bidaltzea gailuaren ekintzara aldatu izana. Egin klik saguaren eskuineko "
"botoiaz gailura bidaltzeko botoiean eta berrezarri berariazko ekintza "
"\"Bidali memoria nagusira\" aukerara."
#: /home/kovid/work/calibre/src/calibre/devices/utils.py:29 #: /home/kovid/work/calibre/src/calibre/devices/utils.py:29
#, python-format #, python-format
@ -2748,6 +2786,9 @@ msgid ""
"default. Use %(en)s to enable. Individual actions can be disabled with the " "default. Use %(en)s to enable. Individual actions can be disabled with the "
"%(dis)s options." "%(dis)s options."
msgstr "" msgstr ""
"Eraldatu testu dokumentua eta egituratu ohiko konfigurazioak erabiliz. "
"Berariaz desgaituta.Erabili %(en)s gaitzeko. Banakako ekintzak desgaitu "
"daitezke %(dis)s aukeren bitartez."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:159 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:159
#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:20 #: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:20
@ -2781,6 +2822,9 @@ msgid ""
"List builtin recipe names. You can create an ebook from a builtin recipe " "List builtin recipe names. You can create an ebook from a builtin recipe "
"like this: ebook-convert \"Recipe Name.recipe\" output.epub" "like this: ebook-convert \"Recipe Name.recipe\" output.epub"
msgstr "" msgstr ""
"Zerrendatu \"builtin\" formula izenak. Ebook bat sortu dezakezu \"builtin\" "
"formula batetik honen bidez: ebook-convert \"Formula Izena.recipe\" "
"irteera.epub"
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:336 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:336
msgid "Output saved to" msgid "Output saved to"
@ -2887,12 +2931,17 @@ msgid ""
"Specify the image size as widthxheight pixels. Normally, an image size is " "Specify the image size as widthxheight pixels. Normally, an image size is "
"automatically calculated from the output profile, this option overrides it." "automatically calculated from the output profile, this option overrides it."
msgstr "" msgstr ""
"Zehaztu irudiaren tamaina pixel zabalera x altuera gisara. Normalean, irudi "
"baten tamaina automatikoki kalkulatzen da irteera fitxategitik, aukera honek "
"horren gainean idatziko du."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/comic_input.py:69 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/comic_input.py:69
msgid "" msgid ""
"When converting a CBC do not add links to each page to the TOC. Note this " "When converting a CBC do not add links to each page to the TOC. Note this "
"only applies if the TOC has more than one section" "only applies if the TOC has more than one section"
msgstr "" msgstr ""
"CBC bat bihurtzean ez gehitu TOC-aren orri bakoitzarentzat. Kontutan izan "
"honek bakarrik balio duela TOC-ak sekzio bat baino gehiago daukanean."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/comic_input.py:213 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/comic_input.py:213
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/comic_input.py:225 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/comic_input.py:225
@ -3015,6 +3064,13 @@ msgid ""
"\"Table of Contents\" settings (turn on \"Force use of auto-generated Table " "\"Table of Contents\" settings (turn on \"Force use of auto-generated Table "
"of Contents\")." "of Contents\")."
msgstr "" msgstr ""
"Zehaztu elementuen sekzionatzea. Balio huts batek liburua sekzio bakar "
"batean bihurtzen du. Fitxategi bat baino gehiago badauzka balio gisa "
"fitxategi bakoitza sekzio batean sartuko du; erabili aukera hori zure gailua "
"arazoak edukitzen ari bada. \"Edukien taulako\" balio batek taulako sarrera "
"horiek titulu bihurtuko ditu eta sekzioak sortu; akats bat gertatzekotan, "
"doitu egituren detekzioa edota edukien taularen ezarpenak(piztu \"Behartu "
"automatiko sortutako Eduki taula erabiltzera\")."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/fb2_output.py:157 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/fb2_output.py:157
#, python-format #, python-format
@ -3057,6 +3113,10 @@ msgid ""
"can result in various nasty side effects in the rest of the conversion " "can result in various nasty side effects in the rest of the conversion "
"pipeline." "pipeline."
msgstr "" msgstr ""
"Normalean sarrerako gehigarri honek automatikoki sarrerako fitxategi guztiak "
"fitxategi hierarkia estandar baten gisa berrantolatzen ditu. Erabili aukera "
"hau egiten ari zarena ondo dakizunean soilik, honen egikaritzapenak hainbat "
"albo-ondorio kaltegarri eduki baititzake gainontzeko bihurketa prozesuetan."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/html_output.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/html_output.py:21
msgid "CSS file used for the output instead of the default file" msgid "CSS file used for the output instead of the default file"
@ -3110,6 +3170,10 @@ msgid ""
"inline: Write the CSS as an inline style attribute.\n" "inline: Write the CSS as an inline style attribute.\n"
"tag: Turn as many CSS styles as possible into HTML tags." "tag: Turn as many CSS styles as possible into HTML tags."
msgstr "" msgstr ""
"Zehaztu CSS-ren trataera. Class dago lehenetsita.\n"
"klasea: Erabili CSS klaseak eta elementuek erreferentzia ditzatela.\n"
"txertatua: Idatzi CSS-a txertatutako estilo atributu baten gisara.\n"
"etiketa: Ahal bezainbeste CSS estilo HTML etiketa bihurtzen ditu."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/htmlz_output.py:35 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/htmlz_output.py:35
msgid "" msgid ""
@ -3118,6 +3182,10 @@ msgid ""
"external: Use an external CSS file that is linked in the document.\n" "external: Use an external CSS file that is linked in the document.\n"
"inline: Place the CSS in the head section of the document." "inline: Place the CSS in the head section of the document."
msgstr "" msgstr ""
"Nola maneiatu CSSa css-type='class' erabiltzerakoan.\n"
"Lehenetsia kanpokoa da.\n"
"kanpokoa: Kanpoko CSS fitxategi bat estekatzen du dokumentuan.\n"
"txertatua: CSSa dokumentuaren haseran txertatzen du."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/htmlz_output.py:42 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/htmlz_output.py:42
msgid "" msgid ""
@ -3261,6 +3329,8 @@ msgid ""
"Extract the contents of the MOBI file to the specified directory. If the " "Extract the contents of the MOBI file to the specified directory. If the "
"directory already exists, it will be deleted." "directory already exists, it will be deleted."
msgstr "" msgstr ""
"MOBI fitxategiaren edukiak zehaztutako direktoriora erauzi. Direktorioa "
"existizen bada, ezabatu egingo da."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/mobi_output.py:78 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/mobi_output.py:78
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/mobi_output.py:294 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/mobi_output.py:294
@ -3269,6 +3339,9 @@ msgid ""
"Using this feature means that the book will not auto sync its last read " "Using this feature means that the book will not auto sync its last read "
"position on multiple devices. Complain to Amazon." "position on multiple devices. Complain to Amazon."
msgstr "" msgstr ""
"Gaitu Kindle-an liburuaren edukia partekatzea Facebook etab. bidez. KONTUZ: "
"Ezaugarri hau erabiliz gero, irakurketaren azken posizioa ez du "
"sinkronizatuko hainbat gailutan. Kexak Amazon-i."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/mobi_output.py:85 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/mobi_output.py:85
msgid "" msgid ""
@ -3278,6 +3351,11 @@ msgid ""
"Useful if your document contains lots of GIF/PNG images that become very " "Useful if your document contains lots of GIF/PNG images that become very "
"large when converted to JPEG." "large when converted to JPEG."
msgstr "" msgstr ""
"Defektuz calibre-k irudi guztiak JPEG formatura bihurtzen ditu irteerako "
"MOBI fitxategian. Hau konpatibilitate haundiagoa lortzeko da, MOBI ikustaile "
"zaharragoek arazoak bait dituzte beste irudi formatuekin. Aukera honek "
"calibreri hori ez egiteko esaten dio. Erabilgarria da zure dokumentuak JPEG "
"haundietan bihurtu daitezkeen GIF/PNG irudi asko baditu."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/mobi_output.py:93 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/mobi_output.py:93
msgid "" msgid ""
@ -3287,6 +3365,11 @@ msgid ""
"6 and the new KF8 format, or only the new KF8 format. KF8 has more features " "6 and the new KF8 format, or only the new KF8 format. KF8 has more features "
"than MOBI 6, but only works with newer Kindles." "than MOBI 6, but only works with newer Kindles."
msgstr "" msgstr ""
"Defektuz calibre-k MOBI 6 fitxategi zaharra duten MOBI fitxategiak sortzen "
"ditu. Formatu hau bateragarria da gailu guztiekin. Hala ere, aukera hau "
"aldatuta calibre-ri esan diezaiokezu MOBI 6 eta KF8, bi formatuak edo soilik "
"KF8 formatua sortzeko. KF8 formatuak MOBI6 baino ezaugarri gehiago ditu, "
"baino Kindle berrietan soilik erabil daiteke."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/mobi_output.py:136 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/mobi_output.py:136
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/periodical.py:125 #: /home/kovid/work/calibre/src/calibre/ebooks/epub/periodical.py:125
@ -3345,6 +3428,8 @@ msgid ""
"The size of the paper. This size will be overridden when a non default " "The size of the paper. This size will be overridden when a non default "
"output profile is used. Default is letter. Choices are %s" "output profile is used. Default is letter. Choices are %s"
msgstr "" msgstr ""
"Paperaren tamaina. Tamaina hau gainidatzi egingo da berezko irteera profilik "
"erabiltzen ez denean. Berezkoa karta formatua da. Aukerak %s dira."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:80 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:80
msgid "" msgid ""
@ -3370,24 +3455,24 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:94 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:94
msgid "The font family used to render serif fonts" msgid "The font family used to render serif fonts"
msgstr "" msgstr "Serif letra-tipoak renderitzatzeko letra-tipo faimilia."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:97 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:97
msgid "The font family used to render sans-serif fonts" msgid "The font family used to render sans-serif fonts"
msgstr "" msgstr "San-serif letra-tipoak renderitzatzeko letra-tipo faimilia."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:100 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:100
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:104 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:104
msgid "The font family used to render monospaced fonts" msgid "The font family used to render monospaced fonts"
msgstr "" msgstr "Tarte bakarreko letra-tipoak renderitzatzeko letra-tipo faimilia."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:107 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:107
msgid "The default font size" msgid "The default font size"
msgstr "" msgstr "Berezko letra-tipo tamaina"
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:110 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:110
msgid "The default font size for monospaced text" msgid "The default font size for monospaced text"
msgstr "" msgstr "Tarte bakarreko testuaren berezko letra-tipo tamaina"
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pml_output.py:22 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pml_output.py:22
msgid "" msgid ""
@ -4951,7 +5036,7 @@ msgstr "Overdriveko Content Reservetik metadatuak eta azalak jeisten ditu"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/overdrive.py:41 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/overdrive.py:41
msgid "Download all metadata (slow)" msgid "Download all metadata (slow)"
msgstr "Metadatu juztiak jaitsi (mantsoa)" msgstr "Jaitsi metadatu guztiak (mantsoa)"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/overdrive.py:42 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/overdrive.py:42
msgid "Enable this option to gather all metadata available from Overdrive." msgid "Enable this option to gather all metadata available from Overdrive."
@ -5436,7 +5521,7 @@ msgstr "Maius+A"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:74 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:74
msgid "Control the adding of books" msgid "Control the adding of books"
msgstr "" msgstr "Liburuen gehitze kontrola"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:95 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:95
#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:120
@ -6053,11 +6138,11 @@ msgstr "Ezabatu hautatutako liburuak"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:96 #: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:96
msgid "Remove files of a specific format from selected books.." msgid "Remove files of a specific format from selected books.."
msgstr "Remove files of a specific format from selected books.." msgstr "Ezabatu formatu jakin batean aukeratutako liburuak.."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:99
msgid "Remove all formats from selected books, except..." msgid "Remove all formats from selected books, except..."
msgstr "Remove all formats from selected books, except..." msgstr "Ezabatu hautatutako liburuen formatu guztiak, hauek ezik..."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:102
msgid "Remove all formats from selected books" msgid "Remove all formats from selected books"
@ -6069,7 +6154,7 @@ msgstr "Ezabatu hautatutako liburuetako azalak"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:109 #: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:109
msgid "Remove matching books from device" msgid "Remove matching books from device"
msgstr "Remove matching books from device" msgstr "Ezabatu gailutik iragazkiarekin bat datozen liburuak"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:134 #: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:134
msgid "Cannot delete" msgid "Cannot delete"
@ -6293,7 +6378,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:58
msgid "Merge book records" msgid "Merge book records"
msgstr "Merge book records" msgstr "Bateratu liburuen erregistroak"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:59
msgid "M" msgid "M"
@ -6910,7 +6995,7 @@ msgstr "Ikusi"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:48
msgid "View specific format" msgid "View specific format"
msgstr "View specific format" msgstr "Ikusi formatu jakin bat"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:50
msgid "Read a random book" msgid "Read a random book"
@ -7520,7 +7605,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:643 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:643
msgid "Delete Rule" msgid "Delete Rule"
msgstr "" msgstr "Ezabatu araua"
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:792 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:792
#: /home/kovid/work/calibre/src/calibre/library/catalogs/epub_mobi_builder.py:608 #: /home/kovid/work/calibre/src/calibre/library/catalogs/epub_mobi_builder.py:608
@ -9873,7 +9958,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/mtp_config.py:228 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/mtp_config.py:228
msgid "&Remove rule" msgid "&Remove rule"
msgstr "" msgstr "&Ezabatu araua"
#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/mtp_config.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/mtp_config.py:273
msgid "Format specific sending" msgid "Format specific sending"
@ -11793,7 +11878,7 @@ msgstr "Gehitu gordetako bilaketa berria"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:102
msgid "Rename the current search to what is in the box" msgid "Rename the current search to what is in the box"
msgstr "" msgstr "Berrizendatu uneko bilaketa kutxan dagoenera"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:104 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:104
msgid "Change the contents of the saved search" msgid "Change the contents of the saved search"
@ -11944,7 +12029,7 @@ msgstr "Gehitu pertsonalizatutako albiste iturri berri bat"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:453 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:453
msgid "Download all scheduled news sources" msgid "Download all scheduled news sources"
msgstr "" msgstr "Jaitsi programatutako jatorri guztiak"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:204 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:204
msgid "Go" msgid "Go"
@ -12047,7 +12132,7 @@ msgstr " egunak"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:231 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:231
msgid "Download all scheduled news sources at once" msgid "Download all scheduled news sources at once"
msgstr "" msgstr "Jaitsi programatutako jatorri guztiak batera"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:232 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:232
msgid "Download &all scheduled" msgid "Download &all scheduled"
@ -13546,12 +13631,12 @@ msgid "LRF Viewer toolbar"
msgstr "LRF Ikustailearen tresna-barra" msgstr "LRF Ikustailearen tresna-barra"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Hurrengo orrialdea" msgstr "Hurrengo orrialdea"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Aurreko orrialdea" msgstr "Aurreko orrialdea"
@ -14119,6 +14204,8 @@ msgid ""
"Manage authors. Use to rename authors and correct individual author's sort " "Manage authors. Use to rename authors and correct individual author's sort "
"values" "values"
msgstr "" msgstr ""
"Kudeatu egileak. Erabili egileak berrizendatzeko eta zuzentzeko banakako "
"egileen ordenatzeko balioak"
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:162 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:162
msgid "Clear series" msgid "Clear series"
@ -14710,7 +14797,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/coloring.py:251 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/coloring.py:251
msgid "Create/edit a column coloring rule" msgid "Create/edit a column coloring rule"
msgstr "" msgstr "Sortu/editatu zutabeak koloreztatzeko araua"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/coloring.py:256 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/coloring.py:256
msgid "Create a coloring rule by filling in the boxes below" msgid "Create a coloring rule by filling in the boxes below"
@ -14787,7 +14874,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/coloring.py:519 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/coloring.py:519
msgid "Add Rule" msgid "Add Rule"
msgstr "" msgstr "Gehitu araua"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/coloring.py:522 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/coloring.py:522
msgid "Remove Rule" msgid "Remove Rule"
@ -15446,7 +15533,7 @@ msgstr "Partizioduna"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:182 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:182
msgid "Column coloring" msgid "Column coloring"
msgstr "" msgstr "Zutabeen koloreztatzea"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:188 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:188
#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:132
@ -15586,7 +15673,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:279 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:279
msgid "&Collapse when more items than:" msgid "&Collapse when more items than:"
msgstr "" msgstr "&Tolestu hurrengoak baino sarrera gehiagorekin:"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:280
msgid "" msgid ""
@ -15614,7 +15701,7 @@ msgstr "Erakutsi &batez besteko balorazioak etiketen arakatzailean"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:289 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:289
msgid "Categories with &hierarchical items:" msgid "Categories with &hierarchical items:"
msgstr "" msgstr "Sarrera &hierarkikoak dituzten kategoriak:"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:290
msgid "Use &alternating row colors in the Tag Browser" msgid "Use &alternating row colors in the Tag Browser"
@ -15639,6 +15726,7 @@ msgstr ""
#, python-format #, python-format
msgid "You can press the %s keys to toggle full screen mode." msgid "You can press the %s keys to toggle full screen mode."
msgstr "" msgstr ""
"%s teklak saka ditzazkezu pantaila osoko modua aktibatzeko/desaktibatzeko."
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks_ui.py:123 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks_ui.py:123
@ -16261,15 +16349,17 @@ msgstr "Bilatu edozein"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:172 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:172
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:176
msgid "Grouped Search Terms" msgid "Grouped Search Terms"
msgstr "" msgstr "Taldekatutako bilaketa terminoak"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:140
msgid "The search term cannot be blank" msgid "The search term cannot be blank"
msgstr "" msgstr "Bilaketa terminoak ezin du hutsa izan"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:150 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:150
msgid "That name is already used for a column or grouped search term" msgid "That name is already used for a column or grouped search term"
msgstr "" msgstr ""
"Izen hori dagoeneko erabiltzen da zutabe edo taldekatutako bilaketa "
"terminoren batetan"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:154 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:154
msgid "That name is already used for user category" msgid "That name is already used for user category"
@ -16348,7 +16438,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:183
msgid "Delete the current search term" msgid "Delete the current search term"
msgstr "" msgstr "Ezabatu uneko bilaketa terminoa"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:185
msgid "" msgid ""
@ -16356,6 +16446,9 @@ msgid ""
"changing the name then pressing Save. You can change the value\n" "changing the name then pressing Save. You can change the value\n"
"of a search term by changing the value box then pressing Save." "of a search term by changing the value box then pressing Save."
msgstr "" msgstr ""
"Uneko bilaketa terminoa gorde. Bilaketa termino bat berrizenda\n"
"dezakezu izena aldatuz eta Gorde sakatuz. Bilaketa termino baten\n"
"balioa alda dezakezu balio laukia aldatuz eta Gorde sakatuz."
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:189 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:189
msgid "Make &user categories from:" msgid "Make &user categories from:"
@ -16908,7 +17001,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:348 #: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:348
msgid "Delete current search" msgid "Delete current search"
msgstr "" msgstr "Ezabatu uneko bilaketa"
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:349 #: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:349
msgid "No search is selected" msgid "No search is selected"
@ -16960,7 +17053,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:488 #: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:488
msgid "*Current search" msgid "*Current search"
msgstr "" msgstr "*Uneko bilaketa"
#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:12 #: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:12
msgid "Restrict to" msgid "Restrict to"
@ -17403,7 +17496,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:307 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:307
msgid "The grouped search term name is \"{0}\"" msgid "The grouped search term name is \"{0}\""
msgstr "" msgstr "Taldekatutako bilaketa terminoaren izena \"{0}\" da"
#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:766 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:766
msgid "" msgid ""
@ -17449,7 +17542,7 @@ msgstr "%s bilaketa izen hori dagoeneko erabilia izan da."
#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:49
msgid "Manage Authors" msgid "Manage Authors"
msgstr "" msgstr "Kudeatu egileak"
#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:51 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:51
msgid "Manage Series" msgid "Manage Series"
@ -17562,7 +17655,7 @@ msgstr "Bila ezazu aurrekoa edo hurrengoa"
#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:355 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:355
msgid "Collapse all categories" msgid "Collapse all categories"
msgstr "Kategoria guztiak murriztu" msgstr "Kategoria guztiak tolestu"
#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:379 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:379
msgid "No More Matches.</b><p> Click Find again to go to first match" msgid "No More Matches.</b><p> Click Find again to go to first match"
@ -17608,7 +17701,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:429 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:429
msgid "Manage authors, tags, etc" msgid "Manage authors, tags, etc"
msgstr "" msgstr "Kudeatu egileak, etiketak, etab."
#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:430
msgid "" msgid ""
@ -18078,7 +18171,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:65 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:65
msgid "Show full screen usage help" msgid "Show full screen usage help"
msgstr "" msgstr "Erakutsi pantaila osoko moduko laguntza"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:74 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:74
msgid "Font options" msgid "Font options"
@ -18236,7 +18329,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:407
msgid "&Start viewer in full screen mode" msgid "&Start viewer in full screen mode"
msgstr "" msgstr "&Hasi ikusgailua pantaila osoko moduan"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:408 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:408
msgid "Show &help message when starting full screen mode" msgid "Show &help message when starting full screen mode"
@ -18373,87 +18466,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "Ez da emaitzik aurkitu honetarako:" msgstr "Ez da emaitzik aurkitu honetarako:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "&Bilatu hiztegian" msgstr "&Bilatu hiztegian"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Joan horra..." msgstr "Joan horra..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Hurrengo atala" msgstr "Hurrengo atala"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Aurreko atala" msgstr "Aurreko atala"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "Documentuaren hasiera" msgstr "Documentuaren hasiera"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "Documentuaren bukaera" msgstr "Documentuaren bukaera"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "Atalaren hasiera" msgstr "Atalaren hasiera"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "Atalaren amaiera" msgstr "Atalaren amaiera"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -18547,7 +18636,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
msgid "Full screen mode" msgid "Full screen mode"
msgstr "" msgstr "Pantaila osoko modua"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:287 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:287
msgid "Right click to show controls" msgid "Right click to show controls"
@ -18771,6 +18860,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""
@ -18804,6 +18905,8 @@ msgid ""
"Choose your e-book device. If your device is not in the list, choose a " "Choose your e-book device. If your device is not in the list, choose a "
"\"%s\" device." "\"%s\" device."
msgstr "" msgstr ""
"Aukeratu zure e-book gailua. Gailua ez badago zerrendan, aukeratu \"%s\" "
"gailua."
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:574 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:574
msgid "Moving library..." msgid "Moving library..."

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-06-07 03:13+0000\n" "PO-Revision-Date: 2012-06-07 03:13+0000\n"
"Last-Translator: Farhood M,K, Kiazand <fartooti@gmail.com>\n" "Last-Translator: Farhood M,K, Kiazand <fartooti@gmail.com>\n"
"Language-Team: Persian <fa@li.org>\n" "Language-Team: Persian <fa@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:58+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:39+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12617,12 +12617,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17222,87 +17222,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17613,6 +17609,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-11-05 18:06+0000\n" "PO-Revision-Date: 2012-11-05 18:06+0000\n"
"Last-Translator: Harry Salmimaa <harry.ok@hotmail.com>\n" "Last-Translator: Harry Salmimaa <harry.ok@hotmail.com>\n"
"Language-Team: Finnish <fi@li.org>\n" "Language-Team: Finnish <fi@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:50+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:32+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12703,12 +12703,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Seuraava sivu" msgstr "Seuraava sivu"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17308,87 +17308,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Seuraava osio" msgstr "Seuraava osio"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17699,6 +17695,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2011-08-05 17:17+0000\n" "PO-Revision-Date: 2011-08-05 17:17+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n" "Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Faroese <fo@li.org>\n" "Language-Team: Faroese <fo@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:49+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:31+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12587,12 +12587,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17192,87 +17192,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17583,6 +17579,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,16 +7,16 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre 0.4.22\n" "Project-Id-Version: calibre 0.4.22\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-11-17 19:54+0000\n" "PO-Revision-Date: 2012-11-26 00:19+0000\n"
"Last-Translator: sengian <Unknown>\n" "Last-Translator: sengian <Unknown>\n"
"Language-Team: PCGen\n" "Language-Team: PCGen\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n" "Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:50+0000\n" "X-Launchpad-Export-Date: 2012-11-27 05:21+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16309)\n"
"Language: fr\n" "Language: fr\n"
"X-Poedit-Bookmarks: 1177,1104,-1,-1,-1,-1,-1,-1,-1,-1\n" "X-Poedit-Bookmarks: 1177,1104,-1,-1,-1,-1,-1,-1,-1,-1\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
@ -3347,7 +3347,7 @@ msgid ""
msgstr "" msgstr ""
"Par défaut calibre convertit toutes les images au format JPEG dans le " "Par défaut calibre convertit toutes les images au format JPEG dans le "
"fichier de sortie MOBI. C'est pour une compatibilité maximale car certains " "fichier de sortie MOBI. C'est pour une compatibilité maximale car certains "
"anciennes vionneuses MOBI ont des problèmes avec d'autres formats d'image. " "anciennes visionneuses MOBI ont des problèmes avec d'autres formats d'image. "
"Cette option indique à calibre de ne pas le faire. Elle est utile si votre " "Cette option indique à calibre de ne pas le faire. Elle est utile si votre "
"document contient beaucoup d'images GIF / PNG qui deviennent alors très " "document contient beaucoup d'images GIF / PNG qui deviennent alors très "
"grandes lors de la conversion au format JPEG" "grandes lors de la conversion au format JPEG"
@ -6038,7 +6038,7 @@ msgstr "Trop long"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:324 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:324
msgid "Not found" msgid "Not found"
msgstr "" msgstr "Introuvable"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:325 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:325
#, python-format #, python-format
@ -14367,12 +14367,12 @@ msgid "LRF Viewer toolbar"
msgstr "Barre doutil pour le visionneur LRF" msgstr "Barre doutil pour le visionneur LRF"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Page suivante" msgstr "Page suivante"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Page précédente" msgstr "Page précédente"
@ -18559,7 +18559,7 @@ msgstr "Téléchargement…"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/results_view.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/results_view.py:45
msgid "Goto in store..." msgid "Goto in store..."
msgstr "Va dans la boutique…" msgstr "Accéder à la boutique"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:128
#, python-format #, python-format
@ -18569,7 +18569,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:177 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:177
msgid "No query" msgid "No query"
msgstr "" msgstr "Pas de requête"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:178
msgid "You must enter a title, author or keyword to search for." msgid "You must enter a title, author or keyword to search for."
@ -18597,15 +18597,15 @@ msgstr "Obtenir Des Livres"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:171 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:171
msgid "Search by title" msgid "Search by title"
msgstr "" msgstr "Recherche par titre"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:173
msgid "Search by author" msgid "Search by author"
msgstr "" msgstr "Recherche par uteur"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:175
msgid "&Keyword:" msgid "&Keyword:"
msgstr "" msgstr "Mot &clé:"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:176
msgid "Search by any keyword" msgid "Search by any keyword"
@ -19740,87 +19740,83 @@ msgstr "&Thème"
msgid "No results found for:" msgid "No results found for:"
msgstr "Aucun résultat trouvé pour:" msgstr "Aucun résultat trouvé pour:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "&Rechercher dans le dictionnaire" msgstr "&Rechercher dans le dictionnaire"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "Voir l'&image..." msgstr "Voir l'&image..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr "Voir la &table..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "&Chercher la prochaine occurrence" msgstr "&Chercher la prochaine occurrence"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Aller vers…" msgstr "Aller vers…"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Section suivante" msgstr "Section suivante"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Section précédente" msgstr "Section précédente"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "Début du document" msgstr "Début du document"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "Fin du document" msgstr "Fin du document"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "Début de la section" msgstr "Début de la section"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "Fin de la section" msgstr "Fin de la section"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr "Taille de police normale"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr "Ch&ercher sur Google %s"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "Zoom &avant" msgstr "Zoom &avant"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "Zoom a&rrière" msgstr "Zoom a&rrière"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "Enregi&strer sous" msgstr "Enregi&strer sous"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "&Rotation" msgstr "&Rotation"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "Choisissez un fichier dans lequel enregistrer" msgstr "Choisissez un fichier dans lequel enregistrer"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "Voir l'Image : %s" msgstr "Voir l'Image : %s"
@ -20151,6 +20147,18 @@ msgstr "Echec du rendu"
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "Echec du rendu du document %s" msgstr "Echec du rendu du document %s"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr "Afficher la Table"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "Nom de test invalide" msgstr "Nom de test invalide"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-03-30 13:27+0000\n" "PO-Revision-Date: 2012-03-30 13:27+0000\n"
"Last-Translator: Richard Boudreau <Unknown>\n" "Last-Translator: Richard Boudreau <Unknown>\n"
"Language-Team: French (Canada) <fr_CA@li.org>\n" "Language-Team: French (Canada) <fr_CA@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n" "Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 05:05+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:46+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12639,12 +12639,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17244,87 +17244,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17635,6 +17631,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-10-14 15:48+0000\n" "PO-Revision-Date: 2012-10-14 15:48+0000\n"
"Last-Translator: Mauro Ermacora <m.ermacora@gmail.com>\n" "Last-Translator: Mauro Ermacora <m.ermacora@gmail.com>\n"
"Language-Team: Friulian <fur@li.org>\n" "Language-Team: Friulian <fur@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:50+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:32+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12590,12 +12590,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17195,87 +17195,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17586,6 +17582,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-11-09 23:06+0000\n" "PO-Revision-Date: 2012-11-09 23:06+0000\n"
"Last-Translator: ghas <Unknown>\n" "Last-Translator: ghas <Unknown>\n"
"Language-Team: dev@gl.openoffice.org\n" "Language-Team: dev@gl.openoffice.org\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:51+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:33+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
"Language: gl\n" "Language: gl\n"
@ -13503,12 +13503,12 @@ msgid "LRF Viewer toolbar"
msgstr "Barra de ferramentas do visor de LRF" msgstr "Barra de ferramentas do visor de LRF"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Páxina seguinte" msgstr "Páxina seguinte"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Páxina anterior" msgstr "Páxina anterior"
@ -18465,87 +18465,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "Non se atoparon resultados para:" msgstr "Non se atoparon resultados para:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "&Buscar no dicionario" msgstr "&Buscar no dicionario"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Ir a..." msgstr "Ir a..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Sección seguinte" msgstr "Sección seguinte"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Sección anterior" msgstr "Sección anterior"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "Inicio do documento" msgstr "Inicio do documento"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "Final do documento" msgstr "Final do documento"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "Inicio da sección" msgstr "Inicio da sección"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "Final da sección" msgstr "Final da sección"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -18862,6 +18858,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2011-08-20 06:46+0000\n" "PO-Revision-Date: 2011-08-20 06:46+0000\n"
"Last-Translator: Hasit Bhatt <hasit.p.bhatt@gmail.com>\n" "Last-Translator: Hasit Bhatt <hasit.p.bhatt@gmail.com>\n"
"Language-Team: Gujarati <gu@li.org>\n" "Language-Team: Gujarati <gu@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:52+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:34+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12587,12 +12587,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17192,87 +17192,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17583,6 +17579,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-07-18 17:43+0000\n" "PO-Revision-Date: 2012-07-18 17:43+0000\n"
"Last-Translator: Tal Nisan <talnl357@gmail.com>\n" "Last-Translator: Tal Nisan <talnl357@gmail.com>\n"
"Language-Team: Hebrew <he@li.org>\n" "Language-Team: Hebrew <he@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:52+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:34+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12639,12 +12639,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17244,87 +17244,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17635,6 +17631,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-03-18 12:52+0000\n" "PO-Revision-Date: 2012-03-18 12:52+0000\n"
"Last-Translator: Vibhav Pant <vibhavp@gmail.com>\n" "Last-Translator: Vibhav Pant <vibhavp@gmail.com>\n"
"Language-Team: Hindi <hi@li.org>\n" "Language-Team: Hindi <hi@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:52+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:34+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12592,12 +12592,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17197,87 +17197,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17588,6 +17584,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-07-23 13:49+0000\n" "PO-Revision-Date: 2012-07-23 13:49+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Himachali <him@li.org>\n" "Language-Team: Himachali <him@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n" "Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:52+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:34+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12587,12 +12587,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17192,87 +17192,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17583,6 +17579,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-05-04 13:42+0000\n" "PO-Revision-Date: 2012-05-04 13:42+0000\n"
"Last-Translator: Tomislav Pešut <tomislav.pesut@edu.fit.ba>\n" "Last-Translator: Tomislav Pešut <tomislav.pesut@edu.fit.ba>\n"
"Language-Team: Croatian <hr@li.org>\n" "Language-Team: Croatian <hr@li.org>\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Launchpad-Export-Date: 2012-11-22 05:00+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:41+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12861,12 +12861,12 @@ msgid "LRF Viewer toolbar"
msgstr "Alatna Traka LRF Preglednika" msgstr "Alatna Traka LRF Preglednika"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Slijedeća Stranica" msgstr "Slijedeća Stranica"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Prethodna Stranica" msgstr "Prethodna Stranica"
@ -17507,87 +17507,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "Nema pronađenih rezultata za:" msgstr "Nema pronađenih rezultata za:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "&Pogledaj u rječniku" msgstr "&Pogledaj u rječniku"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Idi na..." msgstr "Idi na..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17903,6 +17899,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-11-05 17:38+0000\n" "PO-Revision-Date: 2012-11-05 17:38+0000\n"
"Last-Translator: Devilinside <Unknown>\n" "Last-Translator: Devilinside <Unknown>\n"
"Language-Team: Hungarian <hu@li.org>\n" "Language-Team: Hungarian <hu@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:53+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:35+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -13878,12 +13878,12 @@ msgid "LRF Viewer toolbar"
msgstr "LRF olvasó eszköztár" msgstr "LRF olvasó eszköztár"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Következő oldal" msgstr "Következő oldal"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Előző oldal" msgstr "Előző oldal"
@ -19043,87 +19043,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "Nincs találat a következőre:" msgstr "Nincs találat a következőre:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "Keresés szótárban" msgstr "Keresés szótárban"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "A &következő előfordulás keresése" msgstr "A &következő előfordulás keresése"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Ugrás…" msgstr "Ugrás…"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Következő szakasz" msgstr "Következő szakasz"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Előző szakasz" msgstr "Előző szakasz"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "Dokumentum eleje" msgstr "Dokumentum eleje"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "Dokumentum vége" msgstr "Dokumentum vége"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "Szakasz eleje" msgstr "Szakasz eleje"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "Szakasz vége" msgstr "Szakasz vége"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "&Nagyítás" msgstr "&Nagyítás"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "&Kicsinyítés" msgstr "&Kicsinyítés"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "&Mentés másként" msgstr "&Mentés másként"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "Kép megtekintése: %s" msgstr "Kép megtekintése: %s"
@ -19444,6 +19440,18 @@ msgstr "Sikertelen a renderelés"
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "Nem sikerült a következő dokumentum renderelése: %s" msgstr "Nem sikerült a következő dokumentum renderelése: %s"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "A tesztnév érvénytelen" msgstr "A tesztnév érvénytelen"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-01-18 11:51+0000\n" "PO-Revision-Date: 2012-01-18 11:51+0000\n"
"Last-Translator: Amri Ristadi <amristadi@gmail.com>\n" "Last-Translator: Amri Ristadi <amristadi@gmail.com>\n"
"Language-Team: Indonesian <id@li.org>\n" "Language-Team: Indonesian <id@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:53+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:35+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12615,12 +12615,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17220,87 +17220,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17611,6 +17607,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -9,7 +9,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: 20120515-src_calibre_translations_calibre-is\n" "Project-Id-Version: 20120515-src_calibre_translations_calibre-is\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-05-23 19:33+0000\n" "PO-Revision-Date: 2012-05-23 19:33+0000\n"
"Last-Translator: Sveinn í Felli <sveinki@nett.is>\n" "Last-Translator: Sveinn í Felli <sveinki@nett.is>\n"
"Language-Team: Icelandic <translation-team-is@lists.sourceforge.net>\n" "Language-Team: Icelandic <translation-team-is@lists.sourceforge.net>\n"
@ -17,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:53+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:35+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12589,12 +12589,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17194,87 +17194,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17585,6 +17581,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -9,16 +9,16 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre_calibre-it\n" "Project-Id-Version: calibre_calibre-it\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-11-03 01:20+0000\n" "PO-Revision-Date: 2012-11-27 11:48+0000\n"
"Last-Translator: Vincenzo Reale <smart2128@baslug.org>\n" "Last-Translator: Vincenzo Reale <smart2128@baslug.org>\n"
"Language-Team: Italian <kde-i18n-it@kde.org>\n" "Language-Team: Italian <kde-i18n-it@kde.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:53+0000\n" "X-Launchpad-Export-Date: 2012-11-28 04:38+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16309)\n"
"Language: it\n" "Language: it\n"
"X-Poedit-Bookmarks: -1,-1,-1,-1,-1,1105,-1,1312,-1,-1\n" "X-Poedit-Bookmarks: -1,-1,-1,-1,-1,1105,-1,1312,-1,-1\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
@ -5922,7 +5922,7 @@ msgstr "Troppo lungo"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:324 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:324
msgid "Not found" msgid "Not found"
msgstr "" msgstr "Non trovata"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:325 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:325
#, python-format #, python-format
@ -5930,6 +5930,9 @@ msgid ""
"Cannot rename as no library was found at %s. Try switching to this library " "Cannot rename as no library was found at %s. Try switching to this library "
"first, then switch back and retry the renaming." "first, then switch back and retry the renaming."
msgstr "" msgstr ""
"Impossibile rinominare poiché nessuna biblioteca è stata trovata in %s. "
"Prova a passare prima a questa biblioteca, poi torna indietro e prova a "
"rinominare."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:335 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:335
msgid "Rename failed" msgid "Rename failed"
@ -7937,11 +7940,11 @@ msgstr " pollice"
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:313 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:313
msgid "Author cross-references:" msgid "Author cross-references:"
msgstr "" msgstr "Riferimenti incrociati autore:"
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:314 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:314
msgid "For books with multiple authors, list each author separately" msgid "For books with multiple authors, list each author separately"
msgstr "" msgstr "Per libri con diversi autori, elenca separatamente ogni autore"
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_tab_template_ui.py:33 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_tab_template_ui.py:33
msgid "Tab template for catalog.ui" msgid "Tab template for catalog.ui"
@ -8728,7 +8731,7 @@ msgstr "&Disattiva il ridimensionamento dei caratteri"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:242 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:242
msgid "&Subset all embedded fonts (Experimental)" msgid "&Subset all embedded fonts (Experimental)"
msgstr "" msgstr "&Sottoinsieme di tutti i caratteri integrati (Sperimentale)"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output.py:16 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output.py:16
msgid "LRF Output" msgid "LRF Output"
@ -13575,7 +13578,7 @@ msgstr "Scegli una famiglia di caratteri"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:136 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:136
#, python-format #, python-format
msgid "Available faces for %s" msgid "Available faces for %s"
msgstr "" msgstr "Tipi disponibili per %s"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:171 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:171
msgid "Choose font family" msgid "Choose font family"
@ -13591,11 +13594,11 @@ msgstr "Scegli una famiglia di caratteri dall'elenco seguente:"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:205 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:205
msgid "Find Next" msgid "Find Next"
msgstr "" msgstr "Trova successivo"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:208 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:208
msgid "Find Previous" msgid "Find Previous"
msgstr "" msgstr "Trova precedente"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:258 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:258
#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:377 #: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:377
@ -13622,12 +13625,12 @@ msgstr "Caratteri TrueType/OpenType"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:274 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:274
msgid "Corrupt font" msgid "Corrupt font"
msgstr "" msgstr "Carattere danneggiato"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:275 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:275
#, python-format #, python-format
msgid "Failed to read metadata from the font file: %s" msgid "Failed to read metadata from the font file: %s"
msgstr "" msgstr "Lettura dei metadati dal file del carattere non riuscita: %s"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:294 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:294
msgid "Added fonts" msgid "Added fonts"
@ -14103,12 +14106,12 @@ msgid "LRF Viewer toolbar"
msgstr "Barra degli strumenti visualizzatore LRF" msgstr "Barra degli strumenti visualizzatore LRF"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Pagina successiva" msgstr "Pagina successiva"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Pagina precedente" msgstr "Pagina precedente"
@ -14706,7 +14709,7 @@ msgstr "Cancella serie"
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:192 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:192
msgid "Clear all tags" msgid "Clear all tags"
msgstr "" msgstr "Cancella tutti i tag"
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:201 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:201
msgid "Clear Ids" msgid "Clear Ids"
@ -15029,6 +15032,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:150 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:150
msgid "Automatically &convert added books to the current output format" msgid "Automatically &convert added books to the current output format"
msgstr "" msgstr ""
"&Converti automaticamente i libri aggiunti al formato di output attuale"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:151
msgid "The Add &Process" msgid "The Add &Process"
@ -16770,7 +16774,7 @@ msgstr "Seleziona un plugin in <b>%s</b> da personalizzare"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:368
#, python-format #, python-format
msgid "Are you sure you want to remove the plugin: %s?" msgid "Are you sure you want to remove the plugin: %s?"
msgstr "" msgstr "Sei sicuro di voler rimuovere il plugin: %s?"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:373 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:373
msgid "Plugin <b>{0}</b> successfully removed" msgid "Plugin <b>{0}</b> successfully removed"
@ -18127,11 +18131,11 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:177 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:177
msgid "No query" msgid "No query"
msgstr "" msgstr "Nessuna interrogazione"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:178
msgid "You must enter a title, author or keyword to search for." msgid "You must enter a title, author or keyword to search for."
msgstr "" msgstr "Devi digitare un titolo, autore o parola chiave per cercare."
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:300 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:300
msgid "Customize get books search" msgid "Customize get books search"
@ -18155,19 +18159,19 @@ msgstr "Ottieni libri"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:171 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:171
msgid "Search by title" msgid "Search by title"
msgstr "" msgstr "Cerca per titolo"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:173
msgid "Search by author" msgid "Search by author"
msgstr "" msgstr "Cerca per autore"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:175
msgid "&Keyword:" msgid "&Keyword:"
msgstr "" msgstr "Parola c&hiave:"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:176
msgid "Search by any keyword" msgid "Search by any keyword"
msgstr "" msgstr "Cerca per qualsiasi parola chiave"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:182 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:182
msgid "Open a selected book in the system's web browser" msgid "Open a selected book in the system's web browser"
@ -18961,11 +18965,11 @@ msgstr "Mostra la barra di scorrimento nella modalità a schermo intero."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:63
msgid "Start viewer in full screen mode" msgid "Start viewer in full screen mode"
msgstr "" msgstr "Avvia il visualizzatore in modalità a schermo interno"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:65 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:65
msgid "Show full screen usage help" msgid "Show full screen usage help"
msgstr "" msgstr "Mostra la guida all'uso della modalità a schermo intero"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:74 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config.py:74
msgid "Font options" msgid "Font options"
@ -19132,11 +19136,12 @@ msgstr "Mostra la barra di &scorrimento nella modalità a schermo intero"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:407
msgid "&Start viewer in full screen mode" msgid "&Start viewer in full screen mode"
msgstr "" msgstr "Avvia il vi&sualizzatore in modalità a schermo interno"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:408 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:408
msgid "Show &help message when starting full screen mode" msgid "Show &help message when starting full screen mode"
msgstr "" msgstr ""
"Mostra il messaggio di aiuto quando avvii la modalità a sc&hermo intero"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:409 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:409
msgid "F&ull screen options" msgid "F&ull screen options"
@ -19271,87 +19276,83 @@ msgstr "&Temi"
msgid "No results found for:" msgid "No results found for:"
msgstr "Nessun risultato trovato per:" msgstr "Nessun risultato trovato per:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "Cerca ne&l dizionario" msgstr "Cerca ne&l dizionario"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "Visualizza &immagine..." msgstr "Visualizza &immagine..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr "Visualizza &tabella..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "Cerca l'occorrenza &successiva" msgstr "Cerca l'occorrenza &successiva"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "Vai a..." msgstr "Vai a..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Sezione successiva" msgstr "Sezione successiva"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "Sezione precedente" msgstr "Sezione precedente"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "Inizio documento" msgstr "Inizio documento"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "Fine documento" msgstr "Fine documento"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "Inizio sezione" msgstr "Inizio sezione"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "Fine sezione" msgstr "Fine sezione"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr "Dimensione carattere normale"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr "Cerca '%s' in Google"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "&Ingrandisci" msgstr "&Ingrandisci"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "Rimpicci&olisci" msgstr "Rimpicci&olisci"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "&Salva come" msgstr "&Salva come"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "&Ruota" msgstr "&Ruota"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "Scegli un file da salvare" msgstr "Scegli un file da salvare"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "Visualizza immagine: %s" msgstr "Visualizza immagine: %s"
@ -19680,6 +19681,18 @@ msgstr "Interpretazione non riuscita"
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "Interpretazione del documento %s non riuscita" msgstr "Interpretazione del documento %s non riuscita"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr "Visualizza tabella"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr "Nessun tabella trovata"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr "Non era stata trovata alcuna tabella"
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "Nome del test non valido" msgstr "Nome del test non valido"
@ -20727,6 +20740,9 @@ msgid ""
"Do not notify the running calibre GUI (if any) that the database has " "Do not notify the running calibre GUI (if any) that the database has "
"changed. Use with care, as it can lead to database corruption!" "changed. Use with care, as it can lead to database corruption!"
msgstr "" msgstr ""
"Non notificare all'interfaccia di calibre in esecuzione (se presente) che il "
"database è stato modificato. Da utilizzare con cautela, poiché potrebbe "
"portare a danneggiamenti del database!"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:149 #: /home/kovid/work/calibre/src/calibre/library/cli.py:149
msgid "" msgid ""

View File

@ -7,15 +7,15 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-10-01 17:40+0000\n" "PO-Revision-Date: 2012-11-25 12:09+0000\n"
"Last-Translator: Shushi Kurose <md81bird@hitaki.net>\n" "Last-Translator: Ado Nishimura <Unknown>\n"
"Language-Team: Japanese <ja@li.org>\n" "Language-Team: Japanese <ja@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:54+0000\n" "X-Launchpad-Export-Date: 2012-11-26 04:38+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -615,13 +615,13 @@ msgstr "calibreが電子書籍の書誌情報を、ネットからダウンロ
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1125 #: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1125
#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/mtp_config.py:392 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/mtp_config.py:392
msgid "Ignored devices" msgid "Ignored devices"
msgstr "" msgstr "無視するデバイス"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1131 #: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1131
msgid "" msgid ""
"Control which devices calibre will ignore when they are connected to the " "Control which devices calibre will ignore when they are connected to the "
"computer." "computer."
msgstr "" msgstr "デバイスがコンピューターに接続されたときに、どのデバイスを無視するのかを設定します。"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1138 #: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1138
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
@ -838,7 +838,7 @@ msgstr "Amazon Kindle DX用のプロファイルです。"
#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:661 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:661
msgid "This profile is intended for the Amazon Kindle PaperWhite" msgid "This profile is intended for the Amazon Kindle PaperWhite"
msgstr "" msgstr "このプロファイルはAmazon Kindle ペーパーホワイト用です。"
#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:672 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:672
msgid "This profile is intended for the Amazon Kindle Fire." msgid "This profile is intended for the Amazon Kindle Fire."
@ -903,7 +903,7 @@ msgid ""
"For plugin developers: Path to the directory where you are developing the " "For plugin developers: Path to the directory where you are developing the "
"plugin. This command will automatically zip up the plugin and update it in " "plugin. This command will automatically zip up the plugin and update it in "
"calibre." "calibre."
msgstr "" msgstr "プラグイン開発者へ: 開発しているプラグインへのパス。このコマンドはプラグインを自動的にzip圧縮しCalibre上のものも更新します。"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:626 #: /home/kovid/work/calibre/src/calibre/customize/ui.py:626
msgid "Remove a custom plugin by name. Has no effect on builtin plugins" msgid "Remove a custom plugin by name. Has no effect on builtin plugins"
@ -985,13 +985,13 @@ msgstr "Androidフォンと通信します。"
msgid "" msgid ""
"Comma separated list of directories to send e-books to on the device's " "Comma separated list of directories to send e-books to on the device's "
"<b>main memory</b>. The first one that exists will be used" "<b>main memory</b>. The first one that exists will be used"
msgstr "" msgstr "デバイス<b>メインメモリー</b>上のe-bookの送り先ディレクトリ、のカンマ区切りのリスト。最初に見つかったものが使われます。"
#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:201 #: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:201
msgid "" msgid ""
"Comma separated list of directories to send e-books to on the device's " "Comma separated list of directories to send e-books to on the device's "
"<b>storage cards</b>. The first one that exists will be used" "<b>storage cards</b>. The first one that exists will be used"
msgstr "" msgstr "デバイス<b>ストレージ・カード</b>上のe-bookの送り先ディレクトリ、のカンマ区切りのリスト。最初に見つかったものが使われます。"
#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:316 #: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:316
msgid "Communicate with S60 phones." msgid "Communicate with S60 phones."
@ -1100,6 +1100,9 @@ msgid ""
"href=\"http://www.mobileread.com/forums/showpost.php?p=2113958&postcount=3\">" "href=\"http://www.mobileread.com/forums/showpost.php?p=2113958&postcount=3\">"
"forum post</a> for more information.</p><p></p>" "forum post</a> for more information.</p><p></p>"
msgstr "" msgstr ""
"<p>iTunesと通信できません。</p><p>より詳細な情報は<a "
"href=\"http://www.mobileread.com/forums/showpost.php?p=2113958&postcount=3\">"
"この投稿</a>を参照してください。</p>"
#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:382 #: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:382
#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:385 #: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:385
@ -1338,7 +1341,7 @@ msgstr "PocketBook 602/603/902/903リーダーと通信します。"
#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:257 #: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:257
msgid "Communicate with the PocketBook 622 reader." msgid "Communicate with the PocketBook 622 reader."
msgstr "" msgstr "PocketBook 622リーダーと通信"
#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:270 #: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:270
msgid "Communicate with the PocketBook 360+ reader." msgid "Communicate with the PocketBook 360+ reader."
@ -1506,7 +1509,7 @@ msgstr "<b>場所:%(dl)d &bull; %(typ)s</b><br />"
#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:289 #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:289
msgid "Communicate with the Kindle 2/3/4/Touch/PaperWhite eBook reader." msgid "Communicate with the Kindle 2/3/4/Touch/PaperWhite eBook reader."
msgstr "" msgstr "Kindle 2/3/4/Touch/PaperWhite eBookリーダーと通信"
#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:301 #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:301
msgid "Send page number information when sending books" msgid "Send page number information when sending books"
@ -1547,6 +1550,8 @@ msgid ""
"calculating a page count. Specify the name of the custom column here, for " "calculating a page count. Specify the name of the custom column here, for "
"example, #pages. " "example, #pages. "
msgstr "" msgstr ""
"もしあなたが書籍のページ数のカラムをライブラリ上に作っていて、計算されたページ数を使っていない場合、ここにそのカラムを指定してください。例: "
"#pages "
#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:455 #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:455
msgid "Communicate with the Kindle DX eBook reader." msgid "Communicate with the Kindle DX eBook reader."
@ -1842,7 +1847,7 @@ msgstr "Ex124Gと通信します。"
#: /home/kovid/work/calibre/src/calibre/devices/misc.py:414 #: /home/kovid/work/calibre/src/calibre/devices/misc.py:414
msgid "Communicate with the WayteQ Reader" msgid "Communicate with the WayteQ Reader"
msgstr "" msgstr "WayteQ リーダーと通信"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/base.py:29 #: /home/kovid/work/calibre/src/calibre/devices/mtp/base.py:29
msgid "MTP Device" msgid "MTP Device"
@ -1860,73 +1865,73 @@ msgstr "デバイス情報を取得..."
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:166 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:166
msgid "Listing files, this can take a while" msgid "Listing files, this can take a while"
msgstr "" msgstr "ファイルのリストを作成中。しばらくおまちください。"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:181 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:181
msgid "Reading ebook metadata" msgid "Reading ebook metadata"
msgstr "" msgstr "ebookの書誌情報を読み込んでいます"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:214 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:214
#, python-format #, python-format
msgid "Reading metadata from %s" msgid "Reading metadata from %s"
msgstr "" msgstr "書誌情報を %s から読み込み中"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:233 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:233
msgid "Updating metadata cache on device" msgid "Updating metadata cache on device"
msgstr "" msgstr "デバイス上にキャッシュしている書誌情報を更新中"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:235 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:235
msgid "Finished reading metadata from device" msgid "Finished reading metadata from device"
msgstr "" msgstr "デバイス上の書誌情報を読み込みました。"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:393 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:393
#, python-format #, python-format
msgid "Transferred %s to device" msgid "Transferred %s to device"
msgstr "" msgstr "%s をデバイスに転送しました"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:395 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:395
msgid "Transfer to device finished..." msgid "Transfer to device finished..."
msgstr "" msgstr "デバイスへの転送を終了。"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:416 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:416
#, python-format #, python-format
msgid "Added %s" msgid "Added %s"
msgstr "" msgstr "%s を追加しました。"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:418 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:418
msgid "Adding complete" msgid "Adding complete"
msgstr "" msgstr "追加完了"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:434 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:434
msgid "Deleting books from device..." msgid "Deleting books from device..."
msgstr "" msgstr "デバイスから書籍を削除中..."
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:440 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:440
#, python-format #, python-format
msgid "Deleted %s" msgid "Deleted %s"
msgstr "" msgstr "%s を削除しました"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:441 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:441
msgid "All books deleted" msgid "All books deleted"
msgstr "" msgstr "すべての書籍を削除しました"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:444 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:444
msgid "Removing books from metadata" msgid "Removing books from metadata"
msgstr "" msgstr "書籍から書誌情報を削除しています"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:456 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:456
#, python-format #, python-format
msgid "Removed %s" msgid "Removed %s"
msgstr "" msgstr "%s を削除しました"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:458 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:458
msgid "All books removed" msgid "All books removed"
msgstr "" msgstr "すべての書籍を削除しました"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/unix/driver.py:198 #: /home/kovid/work/calibre/src/calibre/devices/mtp/unix/driver.py:198
#: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:313 #: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:313
msgid "Unknown MTP device" msgid "Unknown MTP device"
msgstr "" msgstr "不明なMTPデバイスです"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/unix/driver.py:216 #: /home/kovid/work/calibre/src/calibre/devices/mtp/unix/driver.py:216
#: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:220 #: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:220
@ -1936,7 +1941,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:61 #: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:61
msgid "MTP devices are not supported on Windows XP" msgid "MTP devices are not supported on Windows XP"
msgstr "" msgstr "MTPデバイスはWindows XPではサポートされていません"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:69 #: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:69
msgid "" msgid ""
@ -1944,6 +1949,8 @@ msgid ""
"may need to install Windows Media Player 11 or newer and/or restart your " "may need to install Windows Media Player 11 or newer and/or restart your "
"computer" "computer"
msgstr "" msgstr ""
"Windows ポータブル・デバイス・サービスがこのコンピューターにありません。Windows Media Player "
"11以降をインストールしてリスタートしてください。"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:222 #: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:222
#, python-format #, python-format
@ -2114,11 +2121,11 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:174 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:174
msgid "Wireless Device" msgid "Wireless Device"
msgstr "" msgstr "ワイアレス・デバイス"
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:178 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:178
msgid "Communicate with Smart Device apps" msgid "Communicate with Smart Device apps"
msgstr "" msgstr "Smart Device アプリと通信"
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:264 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:264
msgid "All by something" msgid "All by something"
@ -2126,11 +2133,11 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:267 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:267
msgid "Enable connections at startup" msgid "Enable connections at startup"
msgstr "" msgstr "起動時に通信をイネーブル"
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:268 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:268
msgid "Check this box to allow connections when calibre starts" msgid "Check this box to allow connections when calibre starts"
msgstr "" msgstr "Calibreのスタート時に通信を開始するには、これをチェックしてください。"
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:270 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:270
msgid "Security password" msgid "Security password"
@ -2142,7 +2149,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:273 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:273
msgid "Use fixed network port" msgid "Use fixed network port"
msgstr "" msgstr "固定のポートを用いる"
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:274 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:274
msgid "" msgid ""
@ -2158,7 +2165,7 @@ msgstr "ポート番号 "
msgid "" msgid ""
"Enter the port number the driver is to use if the \"fixed port\" box is " "Enter the port number the driver is to use if the \"fixed port\" box is "
"checked" "checked"
msgstr "" msgstr "「固定のポートを用いる」をチェックしたときにドライバが使用するポート番号を入力"
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:278 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:278
msgid "Print extra debug information" msgid "Print extra debug information"
@ -2180,7 +2187,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:291 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:291
msgid "Enable the no-activity timeout" msgid "Enable the no-activity timeout"
msgstr "" msgstr "活動が無い場合のタイムアウトを設定"
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:292 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:292
#, python-format #, python-format
@ -2189,6 +2196,8 @@ msgid ""
"device does nothing for %d minutes. Unchecking this box disables this " "device does nothing for %d minutes. Unchecking this box disables this "
"timeout, so calibre will never automatically disconnect." "timeout, so calibre will never automatically disconnect."
msgstr "" msgstr ""
"このボックスをチェックした場合、%d分間、接続したデバイスが何もしなかった場合、Calibreは自動的に切断します。チェックをはずした場合、このタイムアウ"
"トは無効になります。なのでCalibreが自動的に切断する事は絶対にありません。"
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:296 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:296
msgid "Use this IP address" msgid "Use this IP address"
@ -3097,16 +3106,16 @@ msgstr "PDFの最初のページに、全面まで引き伸ばした表紙を使
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:94 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:94
msgid "The font family used to render serif fonts" msgid "The font family used to render serif fonts"
msgstr "" msgstr "セリフ・フォントに使用するフォントファミリー"
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:97 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:97
msgid "The font family used to render sans-serif fonts" msgid "The font family used to render sans-serif fonts"
msgstr "" msgstr "サンセリフ・フォントに使用するフォントファミリー"
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:100 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:100
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:104 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:104
msgid "The font family used to render monospaced fonts" msgid "The font family used to render monospaced fonts"
msgstr "" msgstr "等幅フォントに使用するフォントファミリー"
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:107 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/pdf_output.py:107
msgid "The default font size" msgid "The default font size"
@ -3418,6 +3427,9 @@ msgid ""
"to remove fonts from the input document. Note that font embedding only works " "to remove fonts from the input document. Note that font embedding only works "
"with some output formats, principally EPUB and AZW3." "with some output formats, principally EPUB and AZW3."
msgstr "" msgstr ""
"書籍に指定したフォントを埋め込みます。これは書籍に使われる「ベース」フォントを指定します。もし入力ドキュメントがフォントを指定していた場合には、それがベー"
"スフォントより優先されます。(そうしたくない場合には、スタイル情報フィルタを使って、入力ドキュメントからフォントを取り除いてください)。注意:フォント埋め"
"込みはEPUBやAZW3のような特定のフォーマットでしか機能しません。"
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:210 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:210
msgid "" msgid ""
@ -3426,6 +3438,8 @@ msgid ""
"Useful if you are embedding a particularly large font with lots of unused " "Useful if you are embedding a particularly large font with lots of unused "
"glyphs." "glyphs."
msgstr "" msgstr ""
"すべての埋め込みフォントをサブセット化する。すべての埋め込みフォントはこのドキュメントで使用された文字のみに縮小され、フォントファイルのサイズを減らすこと"
"ができます。使用していない文字が多い、大きなフォントを埋め込むときに便利でしょう。"
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:218 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:218
msgid "" msgid ""
@ -4103,7 +4117,7 @@ msgstr "LRSファイルの出力"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:140 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:140
msgid "Do not save embedded image and font files to disk" msgid "Do not save embedded image and font files to disk"
msgstr "内包しているイメージとフォントファイルをディスクに保存しません。" msgstr "埋め込まれているイメージとフォント・ファイルをディスクに保存しません。"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:159 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:159
msgid "Parsing LRF..." msgid "Parsing LRF..."
@ -5003,7 +5017,7 @@ msgstr "ISBNから追加"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:71
msgid "Add files to selected book records" msgid "Add files to selected book records"
msgstr "選択された本レコードにファイルを追加" msgstr "選択された本にファイルを追加"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:72 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:72
msgid "Shift+A" msgid "Shift+A"
@ -5723,7 +5737,7 @@ msgstr "選択された本はデバイスから<b>完全に削除</b>されま
#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:33 #: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:33
msgid "Start wireless device connection" msgid "Start wireless device connection"
msgstr "" msgstr "無線でのデバイス接続を開始する"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:34 #: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:34
msgid "Stop wireless device connection" msgid "Stop wireless device connection"
@ -6265,15 +6279,15 @@ msgstr "電子書籍を検索"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:28
msgid "this author" msgid "this author"
msgstr "" msgstr "この著者"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:28
msgid "this title" msgid "this title"
msgstr "" msgstr "このタイトル"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:29 #: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:29
msgid "this book" msgid "this book"
msgstr "" msgstr "この書籍"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:32 #: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:469 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:469
@ -8009,7 +8023,7 @@ msgstr "行サイズ(&L):"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:240 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:240
msgid "&Embed font family:" msgid "&Embed font family:"
msgstr "" msgstr "埋め込みするフォント(&E)"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:241 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:241
msgid "&Disable font size rescaling" msgid "&Disable font size rescaling"
@ -8017,7 +8031,7 @@ msgstr "フォントサイズを再調整しない(&D)"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:242 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:242
msgid "&Subset all embedded fonts (Experimental)" msgid "&Subset all embedded fonts (Experimental)"
msgstr "" msgstr "すべての埋め込みフォントをサブセット化(実験的 &S"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output.py:16 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output.py:16
msgid "LRF Output" msgid "LRF Output"
@ -8061,11 +8075,11 @@ msgstr "フォント埋め込み(&E)"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:133 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:133
msgid "&Serif font family:" msgid "&Serif font family:"
msgstr "セリフフォントファミリー(&S)" msgstr "セリフフォントファミリー(&S)"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:134 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:134
msgid "S&ans-serif font family:" msgid "S&ans-serif font family:"
msgstr "サンセリフフォントファミリー(&A)" msgstr "サンセリフフォントファミリー(&A)"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:135 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:135
msgid "&Monospaced font family:" msgid "&Monospaced font family:"
@ -11849,6 +11863,11 @@ msgid ""
"virus manager asking you if it is OK for calibre to connect to the network. " "virus manager asking you if it is OK for calibre to connect to the network. "
"<b>Please answer yes</b>. If you do not, wireless connections will not work." "<b>Please answer yes</b>. If you do not, wireless connections will not work."
msgstr "" msgstr ""
"<p>無線でのデバイス接続を開始する. 現在の所、<a href=\"http://www.multipie.co.uk/calibre-"
"companion/\">Calibre Companion</a>のみで使用できます。\n"
" "
"<p>もし、ファイアーウォールやウイルス対策ソフトが、calibreをネットワークに接続してもよいか聞いてきた場合には、<b>許可</b>してください。さ"
"もないと無線でのデバイス接続は動作しません。"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/smartdevice_ui.py:90 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/smartdevice_ui.py:90
msgid "Calibre IP addresses:" msgid "Calibre IP addresses:"
@ -12555,7 +12574,7 @@ msgstr "正規表現 (?P<出版日>)"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:123 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:123
msgid "Choose a font family" msgid "Choose a font family"
msgstr "" msgstr "フォントファミリーを選択"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:136 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:136
#, python-format #, python-format
@ -12564,7 +12583,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:171 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:171
msgid "Choose font family" msgid "Choose font family"
msgstr "" msgstr "フォントファミリーを選択"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:195 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:195
msgid "Add &fonts" msgid "Add &fonts"
@ -12572,7 +12591,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:199 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:199
msgid "Choose a font family from the list below:" msgid "Choose a font family from the list below:"
msgstr "" msgstr "下のリストからフォントファミリーを選択:"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:205 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:205
msgid "Find Next" msgid "Find Next"
@ -12625,11 +12644,11 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:320 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:320
msgid "Choose &font family" msgid "Choose &font family"
msgstr "" msgstr "フォントファミリーを選択(&F)"
#: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:329 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:329
msgid "Clear the font family" msgid "Clear the font family"
msgstr "" msgstr "フォントファミリーをクリア"
#: /home/kovid/work/calibre/src/calibre/gui2/init.py:108 #: /home/kovid/work/calibre/src/calibre/gui2/init.py:108
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:296 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:296
@ -13075,12 +13094,12 @@ msgid "LRF Viewer toolbar"
msgstr "LRF ビューアーツールバー" msgstr "LRF ビューアーツールバー"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "次のページ" msgstr "次のページ"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "前のページ" msgstr "前のページ"
@ -14926,11 +14945,11 @@ msgstr "広い"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:105 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:105
msgid "Calibre style" msgid "Calibre style"
msgstr "" msgstr "Calibreスタイル"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:105 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:105
msgid "System default" msgid "System default"
msgstr "" msgstr "システムデフォルト"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:140
msgid "Off" msgid "Off"
@ -15034,11 +15053,11 @@ msgstr "フォントを変更 (再起動が必要)(&F)"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:251 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:251
msgid "User interface &style (needs restart):" msgid "User interface &style (needs restart):"
msgstr "" msgstr "ユーザーインターフェースのスタイル (再起動が必要)(&S):"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:252 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:252
msgid "Show &tooltips in the book list" msgid "Show &tooltips in the book list"
msgstr "" msgstr "書籍リストでツールティップを表示(&T)"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:253 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:253
msgid "Main Interface" msgid "Main Interface"
@ -15081,7 +15100,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:265 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:265
msgid "Show &cover in the book details panel" msgid "Show &cover in the book details panel"
msgstr "" msgstr "書籍詳細パネルで表紙を表示(&C)"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:267 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:267
msgid "" msgid ""
@ -15122,7 +15141,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:282 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:282
msgid "Categories not to partition:" msgid "Categories not to partition:"
msgstr "" msgstr "分割しないカテゴリー:"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:283 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:283
msgid "" msgid ""
@ -15143,7 +15162,7 @@ msgstr "階層化するカテゴリアイテム(&H):"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:290
msgid "Use &alternating row colors in the Tag Browser" msgid "Use &alternating row colors in the Tag Browser"
msgstr "" msgstr "タグブラウザで行に別の色を使う(&A)"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:292 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:292
msgid "Show cover &browser in a separate window (needs restart)" msgid "Show cover &browser in a separate window (needs restart)"
@ -15803,7 +15822,7 @@ msgstr "入力するたびに検索する(&T)"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:169 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:169
msgid "Unaccented characters match accented characters" msgid "Unaccented characters match accented characters"
msgstr "" msgstr "アクセント記号の無い文字も、アクセント記号付の文字にマッチさせる"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:170
msgid "" msgid ""
@ -17907,87 +17926,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "結果が見つかりませんでした:" msgstr "結果が見つかりませんでした:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "辞書を検索(&L)" msgstr "辞書を検索(&L)"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "次を検索(&S)" msgstr "次を検索(&S)"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "ジャンプ..." msgstr "ジャンプ..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "次の章" msgstr "次の章"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "前の章" msgstr "前の章"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "文書の最初" msgstr "文書の最初"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "文書の最後" msgstr "文書の最後"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "章の頭" msgstr "章の頭"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "章末" msgstr "章末"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -18303,6 +18318,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "テストメールが無効" msgstr "テストメールが無効"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-08-09 07:28+0000\n" "PO-Revision-Date: 2012-08-09 07:28+0000\n"
"Last-Translator: anggoro <ang@desa.in>\n" "Last-Translator: anggoro <ang@desa.in>\n"
"Language-Team: Javanese <jv@li.org>\n" "Language-Team: Javanese <jv@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 0;\n" "Plural-Forms: nplurals=2; plural=n != 0;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:54+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:36+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12593,12 +12593,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17198,87 +17198,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17589,6 +17585,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-08-26 09:07+0000\n" "PO-Revision-Date: 2012-08-26 09:07+0000\n"
"Last-Translator: clouds ge <alexzalk@gmail.com>\n" "Last-Translator: clouds ge <alexzalk@gmail.com>\n"
"Language-Team: Georgian <ka@li.org>\n" "Language-Team: Georgian <ka@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:50+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:32+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12590,12 +12590,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17195,87 +17195,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17586,6 +17582,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-05-09 10:16+0000\n" "PO-Revision-Date: 2012-05-09 10:16+0000\n"
"Last-Translator: s k Nagesh <sknagesh@gmail.com>\n" "Last-Translator: s k Nagesh <sknagesh@gmail.com>\n"
"Language-Team: Kannada <kn@li.org>\n" "Language-Team: Kannada <kn@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:54+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:36+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12590,12 +12590,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17195,87 +17195,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17586,6 +17582,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-10-31 11:49+0000\n" "PO-Revision-Date: 2012-10-31 11:49+0000\n"
"Last-Translator: halcyonera <Unknown>\n" "Last-Translator: halcyonera <Unknown>\n"
"Language-Team: Korean <ko@li.org>\n" "Language-Team: Korean <ko@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:55+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:36+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12694,12 +12694,12 @@ msgid "LRF Viewer toolbar"
msgstr "LRF 뷰어 툴바" msgstr "LRF 뷰어 툴바"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "다음 쪽" msgstr "다음 쪽"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "이전 쪽" msgstr "이전 쪽"
@ -17318,87 +17318,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "찾은 결과가 없음:" msgstr "찾은 결과가 없음:"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "이동하기..." msgstr "이동하기..."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "다음 구간" msgstr "다음 구간"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "이전 구간" msgstr "이전 구간"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "문서 시작" msgstr "문서 시작"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "문서 끝" msgstr "문서 끝"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "구간 시작" msgstr "구간 시작"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "구간 끝" msgstr "구간 끝"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17712,6 +17708,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2011-12-12 17:33+0000\n" "PO-Revision-Date: 2011-12-12 17:33+0000\n"
"Last-Translator: Erdal Ronahi <erdal.ronahi@gmail.com>\n" "Last-Translator: Erdal Ronahi <erdal.ronahi@gmail.com>\n"
"Language-Team: Kurdish <ku@li.org>\n" "Language-Team: Kurdish <ku@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:55+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:37+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12587,12 +12587,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17192,87 +17192,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17583,6 +17579,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2011-08-05 16:44+0000\n" "PO-Revision-Date: 2011-08-05 16:44+0000\n"
"Last-Translator: Mantas Kriaučiūnas <mantas@akl.lt>\n" "Last-Translator: Mantas Kriaučiūnas <mantas@akl.lt>\n"
"Language-Team: Lithuanian <lt@li.org>\n" "Language-Team: Lithuanian <lt@li.org>\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"(n%100<10 || n%100>=20) ? 1 : 2;\n" "(n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:55+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:37+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12594,12 +12594,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17199,87 +17199,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17590,6 +17586,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2011-05-06 12:35+0000\n" "PO-Revision-Date: 2011-05-06 12:35+0000\n"
"Last-Translator: uGGa <Unknown>\n" "Last-Translator: uGGa <Unknown>\n"
"Language-Team: Latgalian <ltg@li.org>\n" "Language-Team: Latgalian <ltg@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n"
"X-Launchpad-Export-Date: 2012-11-22 05:07+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:47+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12587,12 +12587,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17192,87 +17192,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17583,6 +17579,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,16 +7,16 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2012-07-12 09:33+0000\n" "PO-Revision-Date: 2012-11-28 08:58+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n" "Last-Translator: uGGa <Unknown>\n"
"Language-Team: Latvian <ivars.arins@dotnet.lv>\n" "Language-Team: Latvian <ivars.arins@dotnet.lv>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:55+0000\n" "X-Launchpad-Export-Date: 2012-11-29 05:11+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16319)\n"
"X-Poedit-Country: LATVIA\n" "X-Poedit-Country: LATVIA\n"
"Language: lv\n" "Language: lv\n"
"X-Poedit-Language: Latvian\n" "X-Poedit-Language: Latvian\n"
@ -629,7 +629,7 @@ msgstr "Pārvalda kā calibre lejupielādē e-grāmatu metadatus no tīkla"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1125 #: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1125
#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/mtp_config.py:392 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/mtp_config.py:392
msgid "Ignored devices" msgid "Ignored devices"
msgstr "" msgstr "Ignorētās iekārtas"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1131 #: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1131
msgid "" msgid ""
@ -1782,7 +1782,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1216 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1216
msgid "Create Bookshelves" msgid "Create Bookshelves"
msgstr "" msgstr "Izveidot Grāmatplauktus"
#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1217 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1217
msgid "" msgid ""
@ -1792,7 +1792,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1218 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1218
msgid "Delete Empty Bookshelves" msgid "Delete Empty Bookshelves"
msgstr "" msgstr "Izdzēst Tukšos Grāmatplauktus"
#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1219 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1219
msgid "" msgid ""
@ -1902,7 +1902,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/mtp/base.py:29 #: /home/kovid/work/calibre/src/calibre/devices/mtp/base.py:29
msgid "MTP Device" msgid "MTP Device"
msgstr "" msgstr "MTP Iekārta"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/base.py:31 #: /home/kovid/work/calibre/src/calibre/devices/mtp/base.py:31
msgid "Communicate with MTP devices" msgid "Communicate with MTP devices"
@ -1920,12 +1920,12 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:181 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:181
msgid "Reading ebook metadata" msgid "Reading ebook metadata"
msgstr "" msgstr "Nolasa e-grāmatas metadatus"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:214 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:214
#, python-format #, python-format
msgid "Reading metadata from %s" msgid "Reading metadata from %s"
msgstr "" msgstr "Nolasa metadatus no %s"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:233 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:233
msgid "Updating metadata cache on device" msgid "Updating metadata cache on device"
@ -1947,24 +1947,24 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:416 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:416
#, python-format #, python-format
msgid "Added %s" msgid "Added %s"
msgstr "" msgstr "Pievienoti %s"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:418 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:418
msgid "Adding complete" msgid "Adding complete"
msgstr "" msgstr "Pievienošana pabeigta"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:434 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:434
msgid "Deleting books from device..." msgid "Deleting books from device..."
msgstr "" msgstr "Tiek dzēstas grāmatas no jūsu iekārtas..."
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:440 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:440
#, python-format #, python-format
msgid "Deleted %s" msgid "Deleted %s"
msgstr "" msgstr "Izdzēstas %s"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:441 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:441
msgid "All books deleted" msgid "All books deleted"
msgstr "" msgstr "Visas grāmatas izdzēstas"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:444 #: /home/kovid/work/calibre/src/calibre/devices/mtp/driver.py:444
msgid "Removing books from metadata" msgid "Removing books from metadata"
@ -1982,7 +1982,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/mtp/unix/driver.py:198 #: /home/kovid/work/calibre/src/calibre/devices/mtp/unix/driver.py:198
#: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:313 #: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:313
msgid "Unknown MTP device" msgid "Unknown MTP device"
msgstr "" msgstr "Nezināma MTP iekārta"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/unix/driver.py:216 #: /home/kovid/work/calibre/src/calibre/devices/mtp/unix/driver.py:216
#: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:220 #: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:220
@ -2000,6 +2000,9 @@ msgid ""
"may need to install Windows Media Player 11 or newer and/or restart your " "may need to install Windows Media Player 11 or newer and/or restart your "
"computer" "computer"
msgstr "" msgstr ""
"Uz Jūsu datora nav pieejams Windows portatīvo iekārtu serviss. Jums "
"jāuzinstalē Windows Media Player 11 vai jaunāks un/vai jānorestartē Jūsu "
"dators"
#: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:222 #: /home/kovid/work/calibre/src/calibre/devices/mtp/windows/driver.py:222
#, python-format #, python-format
@ -2075,6 +2078,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:77 #: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:77
msgid "Upload separate cover thumbnails for books (newer readers)" msgid "Upload separate cover thumbnails for books (newer readers)"
msgstr "" msgstr ""
"Augšupielādēt atsevišķus vāku sīktēlus grāmatām (jaunākajam lasītājiem)"
#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:78 #: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:78
msgid "" msgid ""
@ -2181,7 +2185,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:174 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:174
msgid "Wireless Device" msgid "Wireless Device"
msgstr "" msgstr "Bezvadu Ierīce"
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:178 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:178
msgid "Communicate with Smart Device apps" msgid "Communicate with Smart Device apps"
@ -2219,7 +2223,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:276 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:276
msgid "Port number: " msgid "Port number: "
msgstr "" msgstr "Ports: "
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:277 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:277
msgid "" msgid ""
@ -2259,7 +2263,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:296 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:296
msgid "Use this IP address" msgid "Use this IP address"
msgstr "" msgstr "Lietot šo IP adresi"
#: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:297 #: /home/kovid/work/calibre/src/calibre/devices/smart_device_app/driver.py:297
msgid "" msgid ""
@ -12820,12 +12824,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "Nākošā lapa" msgstr "Nākošā lapa"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "Iepriekšējā lapa" msgstr "Iepriekšējā lapa"
@ -17447,87 +17451,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "Nākošā sadaļa" msgstr "Nākošā sadaļa"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17838,6 +17838,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-22 04:01+0000\n" "POT-Creation-Date: 2012-11-23 03:42+0000\n"
"PO-Revision-Date: 2011-11-26 20:57+0000\n" "PO-Revision-Date: 2011-11-26 20:57+0000\n"
"Last-Translator: ScHRiLL <Unknown>\n" "Last-Translator: ScHRiLL <Unknown>\n"
"Language-Team: Macedonian <mk@li.org>\n" "Language-Team: Macedonian <mk@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n" "Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"
"X-Launchpad-Export-Date: 2012-11-22 04:56+0000\n" "X-Launchpad-Export-Date: 2012-11-24 05:37+0000\n"
"X-Generator: Launchpad (build 16293)\n" "X-Generator: Launchpad (build 16293)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:56
@ -12587,12 +12587,12 @@ msgid "LRF Viewer toolbar"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
msgid "Next Page" msgid "Next Page"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
msgid "Previous Page" msgid "Previous Page"
msgstr "" msgstr ""
@ -17192,87 +17192,83 @@ msgstr ""
msgid "No results found for:" msgid "No results found for:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:501
msgid "&Lookup in dictionary" msgid "&Lookup in dictionary"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:503 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:507
msgid "View &image..." msgid "View &image..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:509
msgid "View &table..." msgid "View &table..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:512
msgid "&Search for next occurrence" msgid "&Search for next occurrence"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..." msgid "Go to..."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:525 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529
msgid "Next Section" msgid "Next Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:526 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
msgid "Previous Section" msgid "Previous Section"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:528 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532
msgid "Document Start" msgid "Document Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:529 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
msgid "Document End" msgid "Document End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:535
msgid "Section Start" msgid "Section Start"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
msgid "Section End" msgid "Section End"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:543 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:547
msgid "Normal font size" msgid "Normal font size"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:614
#, python-format #, python-format
msgid "S&earch Google for '%s'" msgid "S&earch Google for '%s'"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28
msgid "Zoom &in" msgid "Zoom &in"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29
msgid "Zoom &out" msgid "Zoom &out"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:40
msgid "&Save as" msgid "&Save as"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:41
msgid "&Rotate" msgid "&Rotate"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:67
msgid "Choose a file to save to" msgid "Choose a file to save to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:100
#, python-format #, python-format
msgid "View Image: %s" msgid "View Image: %s"
msgstr "" msgstr ""
@ -17583,6 +17579,18 @@ msgstr ""
msgid "Failed to render document %s" msgid "Failed to render document %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:57
msgid "View Table"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:72
msgid "No table found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:73
msgid "No table was found"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100
msgid "Test name invalid" msgid "Test name invalid"
msgstr "" msgstr ""

Some files were not shown because too many files have changed in this diff Show More