MobileRead Forums

MobileRead Forums (https://www.mobileread.com/forums/index.php)
-   Plugins (https://www.mobileread.com/forums/forumdisplay.php?f=268)
-   -   epubcheck plugin for Sigil (https://www.mobileread.com/forums/showthread.php?t=248186)

Doitsu 10-17-2014 09:35 AM

EpubCheck plugin for Sigil
 
1 Attachment(s)
[Plugin] EpubCheck - Simple epubcheck wrapper

Updated: November 15, 2021
Current Version: "0.4.6.2"

This plugin is a very simple EPUBCheck v4.2.6 wrapper.

Note that since the EPUBCheck Java app is executed in the background, you'll have to wait a couple of seconds before the messages are being displayed.

Disclaimer:
Even though it's unlikely that the plugin will somehow corrupt the epub that you're working on or crash Sigil, you may want to save your ePub in Sigil before running this plugin.

System requirements

Before installing the plugin, please make sure that the following system requirements are met:

1. Python 2.7.x (or Python 3.4)*
2. Java 1.8 or higher

* Not required for Sigil 0.9.0 and higher, which comes with Python 3.

To find out whether these programs are installed, enter the following commands in a terminal/command prompt window:

python -V (should display Python 2.7.x/3.x)
java -version (should display java version "1.8.0_xx" or a higher version number)

Installation

1. Select Manage Plugins from the Plugins menu, then select Use Bundled Python, if it isn't already selected.
If you haven't updated to Sigil 0.9.0 (or higher), click one of the Auto buttons to detect the Python interpreter path or Set to manually select it.
2. Click Add Plugin and select epubcheck_v0.4.6.2.zip. This will install the epubcheck plugin, which you can select via Plugins > Validation > epubcheck.


Settings

You can control several EpubCheck plugin settings via the EpubCheck.json file, which'll be generated after the first run of the plugin. (To enable a setting change false to true.)

Code:

{
  "locale": "fr",
  "github": true,
  "clipboard_copy": false,
  "update_check": true,
  "check_interval": 7, 
  "usage": false,
  "is32bit": false
}

locale if specified, EPUBCheck will display messages in the language specified by the language code. You can use this setting, for example, to display French epubcheck messages on a computer with an English OS or vice versa.

The following language codes can be used:
Code:

"en", "de", "es", "fr", "it", "ja", "nl", "pt-BR", "ko-KR", "zh_TW", "da"
Note that Japanese output will not work on non-Japanese Windows PCs.

github if enabled, the plugin will check the W3C Github site for EPUBCheck updates. (This setting is enabled by default.)

clipboard_copy if enabled, the plugin will automatically copy validation results to the system clipboard. (This setting is disabled by default and might not work with some Linux/macOS versions.)

update_check if enabled, the plugin will check MR for plugin updates. (This setting is enabled by default.)

check_interval the number of days between update checks. (The default value is 7; i.e., the plugin will check for updates once a week.)

usage if enabled, the plugin will also display best practice recommendations. (This setting is disabled by default.)

is32bit If you're getting a StackOverflow error message, change this value to true.

Troubleshooting tips for Windows users

Java isn't found

If your getting a FileNotFound Python error message or an error message after entering java -version, Java is most likely not installed and/or the path to the Java binaries wasn't added to the Windows PATH environment variable.

If you're unsure whether Java is installed on your machine download and install the latest Java version. (You might have to reboot your machine after the installation.)

If you're pretty sure that Java is installed on your machine open the Windows Explorer and look for the following folders:

Code:

C:\Program Files\Java\
C:\Program Files (x86)\Java\

If one of these folders exists, search for a \jre1.x.0_yy\bin subfolder that contains java.exe (and a bunch of other programs) and copy the folder path to Notepad. For example:

Code:

C:\Program Files\Java\jre1.8.0_25\bin
Then open the Environment Variables dialog box (Control Panel > System > Advanced Settings > Environment Variables > PATH > Edit) and add a semicolon and the Java path to the PATH environment variable. (For more information see the Oracle website.)

You should now get a version number, when you enter java -version in a command prompt window.

Note: If you install Java for the first time make sure to disable the Java browser plugin(s).

Python isn't detected when you click the Auto button

If no Python path is detected when you click Auto in the Manage Plugins dialog box, install Python.
(However, it'd be much easier, if you simply checked the Use Bundled Python option, if it isn't greyed out.)

Troubleshooting tips for macOS users

Since the update check feature might not work with certain macOS/Sigil versions, you might have to manually download the latest EPUBCheck files from the W3C website. (Unzip epubcheck.jar and the lib folder to the EpubCheck plugin folder.)

License: GNU General Public License v3 (GPL-3)

JSWolf 10-17-2014 09:41 AM

Very nice!

Arios 10-17-2014 01:04 PM

Thanks Doitsu!

This is a very nice idea and AFAIK after 3 quick tries, its work well.

Cheers.

KevinH 10-17-2014 04:16 PM

Hi,

Yes, very nicely done. And the perfect thing for a plugin.

Is there a moderator here who can add this plugin thread to the sticky list of plugins?

Thanks!

KevinH

theducks 10-17-2014 04:31 PM

Stuck

pete6055 10-17-2014 06:03 PM

Thanks for the plugin. It's the first I've tried, and when I run it I get the following error:
Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'

has value '1.8', but '1.7' is required.

Error: could not find java.dll

Error: Could not find Java SE Runtime Environment.

Java and SE Runtime are installed and in the system path.

Any idea why I'm getting this error.

Thanks for your help.

Doitsu 10-17-2014 07:08 PM

Quote:

Originally Posted by pete6055 (Post 2950995)
Thanks for the plugin. It's the first I've tried, and when I run it I get the following error:
Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'

has value '1.8', but '1.7' is required.

If you have a 64bit machine, you might have different 32bit and 64bit Java versions installed and/or your PATH environment variable doesn't point to the correct Java program folder.
Unless you have other more important Java programs installed that require a specific Java version, I'd recommend downloading and installing the latest 32bit and 64bit Java versions from Oracle. (The installer will automatically remove older versions.)

Also don't forget to add/update the PATH environment variable as described in my first post. (If you enter java -version in a command prompt window and don't get a version number, the plugin will not work.)

If you still can't get it to work, I'd recommend downloading epagina's user-friendly epubcheck version, which should work with Java 1.6. or higher.

user_none 10-18-2014 10:30 AM

This was something Kevin and I talked about but never had the time to do. It looks like you're going to force us to make a new plugin type specifically for validators sooner rather than later.

KevinH 10-18-2014 11:22 AM

Hi,
Actually the output plugin works well for this as it changes nothing at all in the current ebook files inside Sigil as the only access is via a book copy but does make the entire ebook (less mimetype) file available.

Now if you wanted to do something special with the epubcheck output or wanted to make it easy to highlight text needing work in files or something along those lines, then a separate plugin type for validators with expanded capability would truly be needed.

Basically, the same approach used by Doitsu can be used to invoke kindlegen or any other separate tool. So if Doitsu or any other plugin author wants to build a Kindlegen plugin, say maybe with a search to find the kindlegen executable on the users system or a filedialog to allow users to select it and saved preferences for settings and options for kindlegen that would be a wonderful thing!!! ..... Hint Hint ;)

KevinH

user_none 10-18-2014 12:53 PM

Quote:

Originally Posted by KevinH (Post 2951446)
Now if you wanted to do something special with the epubcheck output or wanted to make it easy to highlight text needing work in files or something along those lines, then a separate plugin type for validators with expanded capability would truly be needed.

That's what I was thinking. Some way for the plugin to return a standardized format which we can then load into an issues widget (like FlightCrew currently does), then the user could go though each one and clicking the issue would take them directly to it (as happens with FlightCrew now).

pete6055 10-18-2014 01:39 PM

Thanks for the help with my java problem. It is fixed. When I looked I found some old entries in the Program Data folder and the registry. I also uninstalled 1.7 but left 1.8...

Neat plugin!

user_none 10-19-2014 05:17 PM

@Doitsu,

The next release of Sigil will include a "validation" plugin type. If you use it then you can set the validation results in the plugin and they'll be loaded into the validation pane in the main window. Just like what happens when you use FlightCrew. This means the results won't disappear when the plugin runner dialog is closed and you can click on the entry to go directly to the associated error line.

Here is a quick example of how you'd use it in a plugin:
Code:

def run(bk):
    bk.add_result('info', 'Section0001.xhtml', 1, 'info stuff')
    bk.add_result('warning', 'Section0001.xhtml', 3, 'warn stuff')
    bk.add_result('error', 'content.opf', 4, 'error stuff')
    return 0


Doitsu 10-19-2014 05:34 PM

Quote:

Originally Posted by user_none (Post 2952249)
@Doitsu,

The next release of Sigil will include a "validation" plugin type. If you use it then you can set the validation results in the plugin and they'll be loaded into the validation pane in the main window. Just like what happens when you use FlightCrew. This means the results won't disappear when the plugin runner dialog is closed and you can click on the entry to go directly to the associated error line.

Here is a quick example of how you'd use it in a plugin:
Code:

def run(bk):
    bk.add_result('info', 'Section0001.xhtml', 1, 'info stuff')
    bk.add_result('warning', 'Section0001.xhtml', 3, 'warn stuff')
    bk.add_result('error', 'content.opf', 4, 'error stuff')
    return 0


Thanks that's great news! I'll check it out once the next version becomes available and will update my plugin.

crutledge 11-30-2014 06:27 AM

epubcheck
 
Thanks for the guidance.

I got everything installed and apparently running OK. The tool doesn't like any header. What is a "XML NMTOKEN"?

Code:


ERROR: tmpnm8njs.epub/OEBPS/Text/Drift from Two Shores_0001.htm(9,67): value of attribute "name" is invalid; must be an XML NMTOKEN

Code:

<head>
  <title>Drift from the Shores</title>
  <meta content="Harte, Bret" name="dcterms.creator" />
  <meta content="2014/11/29" name="dcterms.date of publication" />
  <meta content="Ebook prepared by crutledge@knology.net" name="dcterms.Description" />
  <meta content="en" name="dcterms.language" scheme="DCTERMS.RFC4646" />
  <meta content="Public Domain" name="dcterms.rights" />
  <meta content="Short Stories" name="dcterms.subject" />
  <meta content="Drift from the Shores" name="dcterms.title" />
  <link href="../Styles/main.css" rel="stylesheet" type="text/css" />
</head>


Doitsu 11-30-2014 06:55 AM

Quote:

Originally Posted by crutledge (Post 2989772)
The tool doesn't like any header. What is a "XML NMTOKEN"?

An XML NMTOKEN ís "IDPF speak" for "valid id/name value." You used

Code:

<meta content="2014/11/29" name="dcterms.date of publication" />
which is invalid, because id/name attributes must not contain spaces. If you replace them with dots the error will go away. However, you might as well delete all <meta content=...> entries, because, AFAIK, no reading app actually uses them.

You may want to define these entries in Sigil's Metadata Editor instead.

Doitsu 11-30-2014 12:27 PM

New beta version uploaded
 
I've uploaded a new epubcheck version with validation pane support for Sigil 0.8.2. (It's attached to the first message in this thread.)
The new version emulates the behavior of FlightCrew. I.e., it'll write error messages to the Validation Results window and you can now click on an error message to display the line it refers to.
Like the previous version it'll also write the epubcheck output to the Plugin Runner window, which you'll need to close by clicking OK to access the Validation Results window.

This update was only tested with the 32bit/64bit Windows and Linux versions of Sigil, however, it should also work with the OSX version.

Note: Before you can install the new version (epubcheck_v0.2.zip), you'll need to uninstall the currently installed version via Plugins > Manage Plugins > epubcheck > Remove Plugin.

If you get the following message in the Plugin Runner window after running the plugin:

Code:

Status: failed
Launcher: script type validation is not supported

you'll need to install Sigil 0.8.2. (If no 0.8.2 build is available for your platform you'll need to install the previous version without validation pane support.)

crutledge 11-30-2014 01:46 PM

Doitsu;

Installed epubcheck_v0.2.zip.

epubcheck seems to cause a problem.

Before run

Code:

<meta content="2014/11/30" name="dcterms.date.of publication" />
After run

Code:

<meta content="2014/11/30" name="dcterms.date of publication" />
Repair to

Code:

<meta content="2014/11/30" name="dcterms.date.of publication" />
After run

Code:

<meta content="2014/11/30" name="dcterms.date of publication" />

KevinH 11-30-2014 02:16 PM

Hi,

As Doitsu said, you should remove all of the metadata from that html page and convert it to proper dc metadata at the book level using Sigil's metadata editor. The metadata you have is not correct for dcterms and has spaces in the name "field" which are not allowed.

So either remove it completely or change it to
Code:

name="dcterms.dateOfPublication"
or some other name without spaces.

Or better yet, convert it to be proper dc or dcterms metadata.

KevinH

Doitsu 11-30-2014 02:17 PM

Quote:

Originally Posted by crutledge (Post 2989988)
Installed epubcheck_v0.2.zip.
epubcheck seems to cause a problem. [...]

epubcheck does not touch files; it copies the currently loaded epub to a temporary folder and then runs epubcheck. (It also can't automatically fix problems found by epubcheck.)

I've just tested it with Drift from Two Shores.epub, which you uploaded yesterday in DiapDealer's thread and didn't see any changed lines nor was an asterisk being displayed after the file name in the title bar.

If you're still convinced that the plugin changes the content of epubs, please attach one that will be changed after running the epubcheck plugin.

crutledge 11-30-2014 04:59 PM

My problem may not be with epubcheck. It has worked corectly once or twice.

I have the Validations Results panel locked at the bottom of the sigil display.

When working correctly, the results appear in the locked Validation Results panel. When things go wrong the Validation Results appears as a floating panel.

Doitsu 11-30-2014 07:39 PM

Quote:

Originally Posted by crutledge (Post 2990089)
When working correctly, the results appear in the locked Validation Results panel. When things go wrong the Validation Results appears as a floating panel.

Like all other Sigil plugins, the epubcheck plugin displays a modal Plugin Runner window, which needs to be closed, before you can access the Validation Results window.
If you use a floating Validation Results window, it might overlap with the Plugin Runner window and hide it. For this reason, you may want to dock the Validation Results window before running the epubcheck plugin. (Future Sigil versions won't have this issue.)

If you find the updated version of the epubcheck plugin difficult to use, you can always use the online version, the pagina drag & drop version or the original epubcheck version (without validation pane support).

Leonatus 12-03-2014 03:42 AM

I have the same issue that pete6055 described in #6, i. e.
"Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'
has value '1.8', but '1.7' is required.

Error: could not find java.dll
Error: Could not find Java SE Runtime Environment."

And, likewise: "Java and SE Runtime are installed and in the system path" in my case. He managed to solve this problem, but I didn't really understand, how (and I woud not like messing my registry). Could you, please, give a step-by-step guidance for dummies? The interesting is that, some time ago, the plugin worked without problems.

Thans in advance!

Doitsu 12-03-2014 04:46 AM

Quote:

Originally Posted by Leonatus (Post 2992353)
I have the same issue that pete6055 described in #6, i. e.
"Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'
has value '1.8', but '1.7' is required.

Unfortunately, I can't help you with this, because I've never encountered this problem myself with my Windows 8 and Windows XP machines. If you have a 64bit machine, this problem might have been caused by different 32bit and 64bit Java versions on your machine. (Since both versions can be installed and used independently from each other, they might have different version numbers and registry entries.)
I'd recommend uninstalling both 32bit and 64bit versions from your machine and reinstalling the latest 32bit and 64bit versions from Oracle. (You'll also need to add the Java path to the PATH environment variable.)
(Make sure that there are no Java leftovers in the Windows program folders (C:\Program Files\ or C:\Programme) after uninstalling Java and that there are no Java path related registry entries in the Windows registry, before installing the latest versions.)

BobC 12-27-2014 04:14 PM

[QUOTE=Leonatus;2992353]I have the same issue that pete6055 described in #6, i. e.
"Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'
has value '1.8', but '1.7' is required.

Error: could not find java.dll
Error: Could not find Java SE Runtime Environment."

And, likewise: "Java and SE Runtime are installed and in the system path" in my case. He managed to solve this problem, but I didn't really understand, how (and I woud not like messing my registry). Could you, please, give a step-by-step guidance for dummies? The interesting is that, some time ago, the plugin worked without problems.
/QUOTE]

I've also been fighting this problem - I'm using the "legacy" verson of Sigil on a 32 Bit XP machine.

After quite a bit of fiddling it became apparent that the problem was with Java. I had 1.7 and 1.8 installed but with 1.7 deactivated in the Java control panel.

I've solved the problem by completely uninstalling the 1.7 version - using the system/control panel (not the Java control panel). Now Sigil's plugins work.

HTH

BobC

Leonatus 01-02-2015 07:14 AM

Thank you, BobC! It might well be as you say. I bought me a new computer, and there is no issue.

Capricorn 04-01-2015 03:21 AM

Hi, I have just discovered the plugin possibilities for sigil and now I am testing the epubcheck plugin.
I have installed python, I have installed java. And it works for example with the sanitychecker plugin.
But I run into the following problem wit the epubcheck plugin:
I am in Calibre, I use the "open with" plugin to open an epub in sigil and then I run the epubcheck plugin within sigil. I then get this error message within the epubcheck plugin window:
Status: failed

Traceback (most recent call last):
File "C:\Program Files\Sigil\plugin_launchers\\python\launcher.py", line 135, in launch
self.exitcode = target_script.run(container)
File "C:\Users\Dirk\AppData\Local\sigil-ebook\sigil\plugins\epubcheck\plugin.py", line 41, in run
result = jarWrapper(*args)
File "C:\Users\Dirk\AppData\Local\sigil-ebook\sigil\plugins\epubcheck\plugin.py", line 15, in jarWrapper
process = Popen(list(args), stdout=PIPE, stderr=PIPE)
File "C:\Python27\lib\subprocess.py", line 710, in __init__
errread, errwrite)
File "C:\Python27\lib\subprocess.py", line 958, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified
Error: [Error 2] The system cannot find the file specified

I am NOT sure what it means.
But, if I go into the calibre library folder, and so AVOID the "open with" plugin, and then open the same epub file there with sigil and then run the epubcheck plugin, it executes normally.
Any pointers to make this sigil plugin work while using the calibre "open with" plugin with sigil would be much appreciated, as it saves me lots of time using the "open with" plugin.

eschwartz 04-01-2015 03:45 AM

The latest version of calibre does include a native Open With capability, right-click on the format in calibre.

Might help.

Capricorn 04-01-2015 08:47 AM

Cool. That works. Marvelous. Thank you very much. That made my day.

Doitsu 04-01-2015 09:12 AM

IMHO, running Sigil only to run epubcheck is a bit of overkill. It'd be easier to simply add pagina EPUB-Checker as a Calibre Open With app. (This app is also based on epubcheck 3.0.1.)

DiapDealer 04-01-2015 09:23 AM

I'm guessing the original issue has something to do with a python plugin subprocessing a c++ program that was subprocessing a python plugin that was subprocessing a java program. ;)

Actually, I see in the Open With plugin code that there's a special handler for Sigil on Windows that involves the PATH being deleted from the retrieved os.environ dictionary before launching the Sigil subprocess. I'm sure something necessitated that bit of trickeration, but unfortunately, it also means that any Sigil plugin that relies on the ability to launch an external program without the full path to the exe is doomed to failure whenever Sigil is launched via the Open With calibre plugin on Windows. The "Open With" plugin also first blanks the LD_LIBRARY_PATH (for all launched subprocesses) on Linux, so any Sigil plugins that rely on using/diddling the LD_LIBRARY_PATH will be doomed to similar failures when Sigil is launched via the OW plugin on Linux.

Good to know that the new native "Open With" calibre feature eliminates the problem. :thumbsup:

Doitsu 09-09-2015 05:33 PM

I've attached a new version that runs epubcheck 4.0.1 and is compatible with Python 3.4.x and Python 2.7.x.

The new version does not add any new functionality for checking ePub2 files and requires the Java 1.6 runtime (Java 1.7 recommended).

Leonatus 11-08-2015 12:57 PM

Hi, Doitsu! I've downloaded the new version but receive this message:
Code:

Running ePubCheck ... please wait

Traceback (most recent call last):

  File "C:\Program Files\Sigil\plugin_launchers\python\launcher.py", line 301, in <module>

   
sys.exit(main())
  File "C:\Program Files\Sigil\plugin_launchers\python\launcher.py", line 277, in main
    errorlog += unicode_str(data)
  File "C:\Program Files\Sigil\plugin_launchers\python\compatibility_utils.py", line 189, in unicode_str
    return p.decode(enc)
  File "C:\Python27\lib\encodings\utf_8.py", line 16, in decode
    return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode byte 0xfc in position 191: invalid start byte

Running ePubCheck ... please wait

It happens nothing else. No idea what Icould do.
Windows 10, 32 bit engine.

KevinH 11-08-2015 01:14 PM

FWIW, errors like this typically happens when latin1 or cp1252 chars are passed to python routines that are expecting utf-8 encodings. In this case, an error is being detected or generated by the plugin and it is the error message itself that is causing the issue as its contents are not utf-8.

You could run epubcheck via the command line and see what gets sent to std error to see what might be going on. To prevent this issue in future versions of the launcher I will tell it to 'replace' on error.

Leonatus 11-09-2015 04:28 AM

Thanks, KevinH! Unfortunately, I don't know how to run epubcheck via command line under Windows 10.
But I'll send the file where this occurs and further information to Doitsu. He will have a look at it.

exaltedwombat 11-09-2015 08:34 PM

Sigil 0.9 64 bit Windows 10
"Use bundled python"

What's going wrong? I got this working once!

Thanks

Status: failed

Traceback (most recent call last):
File "C:\Program Files\Sigil\plugin_launchers\python\launcher.py", line 134, in launch
target_script = __import__(script_module)
File "C:\Users\lp\AppData\Local\sigil-ebook\sigil\plugins\ePubTidyTool\plugin.py", line 27, in <module>
from ManualWordChecker import cManualWordCheck
File "C:\Users\lp\AppData\Local\sigil-ebook\sigil\plugins\ePubTidyTool\ManualWordChecker .py", line 9, in <module>
from bs4 import BeautifulSoup
ImportError: No module named 'bs4'
Error: No module named 'bs4'

eschwartz 11-09-2015 08:57 PM

Because you haven't installed BeautifulSoup4, I would assume.

DiapDealer 11-09-2015 08:59 PM

Sigil's bundled Python has no bs4 module. It has a modified version of BeautifulSoup called sigil_bs4 that's available to all plugins.

Developers who want plugins which have a bs4 dependency to work with Sigil's bundled python AND an external python installation will probably want to do something like:
Code:

try:
  from sigil_bs4 import BeautifulSoup
except ImportError:
  from bs4 import BeautifulSoup

This will have the advantage of still being able to work if and when Sigil's modified bs4 module ever becomes unnecessary in the future.

Just using:
Code:

from sigil_bs4 import BeautifulSoup
will probably work too, since the sigil_bs4 module is available to any external python installations (via the launcher framework), but has the disadvantage of possibly not working with earlier versions of Sigil, and potentially not working with future versions, if the special sigil_bs4 module ever becomes unnecessary.

Even if you have no plans to support external python interpreters with your plugin, it will still probably be a good idea to incorporate the try/except technique with (sigil_)bs4 for future-proofing. bs4 is currently the only "non-stock" python module that Sigil uses. If the constraints that force us to use it ever go away, we'd love to do away with it and replace it with the stock version. This technique will ensure your plugin's continued functionality in the event that happens.

Quote:

Originally Posted by exaltedwombat (Post 3203104)
What's going wrong? I got this working once!

If you had it working once, I assume it's because you have a working external installation of Python with bs4 already installed. If that's the case, just uncheck "Use Bundled Python" and setup your external Python interpreter(s) in Manage Plugins.

DNSB 11-09-2015 11:24 PM

Yet another error message. Windows 10 x64. The error only occurs when I launch Sigil using Calibre's Open With plugin. Otherwise, I get the expected No problems found! message in Sigil's message box.

Code:

Status: failed

Traceback (most recent call last):
  File "C:\Program Files\Sigil\plugin_launchers\python\launcher.py", line 135, in launch
    self.exitcode = target_script.run(container)
  File "C:\Users\David\AppData\Local\sigil-ebook\sigil\plugins\EpubCheck\plugin.py", line 32, in run
    result = jarWrapper(*args)
  File "C:\Users\David\AppData\Local\sigil-ebook\sigil\plugins\EpubCheck\plugin.py", line 9, in jarWrapper
    process = Popen(list(args), stdout=PIPE, stderr=PIPE)
  File "subprocess.py", line 859, in __init__
  File "subprocess.py", line 1112, in _execute_child
FileNotFoundError: [WinError 2] The system cannot find the file specified
Error: [WinError 2] The system cannot find the file specified


KevinH 11-09-2015 11:33 PM

FWIW: I do not think opening an app like Sigil with its builtin python 3 in a python 2.7 program like Calibre would be generally a good idea.

KevinH

DNSB 11-10-2015 01:06 AM

Quote:

Originally Posted by KevinH (Post 3203171)
FWIW: I do not think opening an app like Sigil with its builtin python 3 in a python 2.7 program like Calibre would be generally a good idea.

KevinH

Convenience trumps good idea 99% of the time.


All times are GMT -4. The time now is 06:06 PM.

Powered by: vBulletin
Copyright ©2000 - 3.8.5, Jelsoft Enterprises Ltd.
MobileRead.com is a privately owned, operated and funded community.