Thursday, March 24, 2011

Sigil 0.4.0β3

The third beta of 0.4.0 is now in the downloads area. Changelog follows:

  • added a workaround for loading broken epub files that use the incorrect mimetype for the NCX (issue #815)
  • fixed a rare issue with loading epub files with OPF's that had the XML version set to 1.1, but also had other attributes in the XML declaration (issue #812)
  • fixed an issue with entries appearing at random in the TOC after a split on SGF markers is followed up with "Generate TOC from headings" request (issue #804)
  • fixed an issue with files not appearing in the Book Browser after a split on SGF markers (issue #816)
  • fixed a regression that caused the auto-cover-setting heuristics to unset covers when they are already set (issue #806)
  • opening an HTML file now automatically builds a TOC from the headings
  • fixed a regression that caused the Add Semantics menu to stop working (issue #807)

Again, keep the bug reports coming. :)

Monday, March 21, 2011

Sigil 0.4.0ß2

New beta is now in the downloads area. Changelog follows:

  • fixed an issue with the ID of the manifest item of a resource not being updated when the resource was renamed
  • fixed an issue with chapter splits being created in the wrong reading order (issue #797)
  • fixed an issue with some HTML files disappearing after a save/load cycle if chapter splitting was performed before the save
  • fixed an issue with renaming a file and then splitting it causing duplicate ID's in the OPF manifest (issue #800)
  • fixed a validation issue with the Meta Editor not adding the correct namespace prefix to some Dublin Core metadata element attributes

Keep the bug reports coming. The more you report, the more I can fix and the happier we'll all be.

Sunday, March 20, 2011

Sigil 0.4.0β1

So the first beta of 0.4.0 is now out. You can get it from the downloads area. The changelog follows:

  • fixed an issue with CSS @import rules in the '@import "something.css"' format not being recognized and thus not updated on import
  • removed the "CustomID" basic metadata entry from the Meta Editor; those wishing to use custom ID's can now add them directly to the OPF
  • Sigil now preserves custom unique identifiers in the OPF (issue #552)
  • removed support for the Sigil-proprietary SGF format
  • the user can now edit the OPF file by hand (issue #281)
  • the user can now edit the NCX file by hand (issue #282)
  • the OPF file is now preserved on import (issue #586)
  • the NCX file is now preserved on import (issue #283)
  • the Table Of Contents editor has been replaced with a new Table of Contents sidebar; clicking on an item in this sidebar takes the user to the target location, enabling TOC navigation (issue #100)
  • a dialog now informs the user if his XHTML, NCX or OPF documents are not well-formed XML (with error location and description), thus allowing him to fix the potential problems by hand instead of leaving them to Tidy to fix (issue #519)
  • fixed a rare issue with no tab opened by default when loading epubs
  • made the sigil.sh startup script more robust (courtesy of Craig Sanders) (issue #737)

The big features everyone has been waiting for are now in. The OPF and NCX are now preserved on import, and you can edit them by hand. You can still let the GUI do everything, but you now have the power to make changes directly.

The TOC editor is gone and has been replaced by the TOC sidebar. A button at the bottom of the TOC sidebar allows the generation of the NCX form the headings in your epub. You can ignore that button if you want and just build the NCX by hand. Typing in the NCX file updates the TOC sidebar live, using a background thread to keep things fast and responsive. Clicking on an item in the TOC sidebar takes you directly to the target location. Yes, you can now navigate the epub with the TOC.

A new dialog is now presented to the user when you screw up the markup in your XHTML (and NCX and OPF) files so badly that they become ill-formed XML. Previously Tidy was used to correct such errors, but now this dialog informs you of the problem and lets you fix it by hand if you wish, with the “Fix Manually” option. By selecting the “Fix Automatically” option in the dialog, everything goes through Tidy and it will then fix it for you, just like it did so previously. Basically the dialog is there to let power users skip Tidy’s error correction and fix the problem by hand. Naturally, the dialog tells you the line/column location of the error and a brief description.

With this dialog and the previous Tidy cleaning on/off button (which controlled the dreaded “clean” option), the negative aspects of Tidy are now something you can completely avoid.

This whole NCX/OPF preservation and editing by hand deal required a very thorough rewriting of a lot of Sigil’s internals. This has certainly brought many bugs so bear that in mind.

The whole point of the beta process is to discover and report bugs in unstable versions of the software. So report any bugs you find! And don’t be surprised when you find them, because you will certainly encounter some of them in this beta. If you’re uncomfortable with that, then don’t use the beta. Wait for 0.4.0 FINAL. This is pre-release software, that’s why it’s called a beta.

There were some features that I initially planned for the first beta but that eventually didn’t make the cut. I spent days on one of them to finally realize that it simply isn’t going to work (through no fault of mine, but it’s a long story for a new blog post). The other major feature that didn’t make it in was simply pushed back to a future beta. I’d like feedback and bug reports on the massive rewrite needed to implement OPF/NCX preservation/editing sooner rather than later, so I thought it wise to push the first beta out today.

Tuesday, March 8, 2011

Sigil 0.3.4b for Windows

There was an interesting problem with the recent OpenCandy integration: Microsoft Security Essentials started flagging the Sigil Windows installers as containing adware. From discussions with the OC people, this appeared to be because the MS people didn’t like that OC was storing a certain key in the registry and then transmitting it to the OC servers. The key acted exactly like a browser cookie, and pretty much every website you’ve ever visited stores one on your computer. Other AV vendors and security researchers agreed with the OC folks that this is just fine and doesn’t constitute “adware” behavior, but the MS folks disagreed.

So after two weeks of back-and-forth, the OC folks have decided to remove this specific behavior from their SDK. For their part, MS has agreed that the new OC plugin isn’t adware even by their definition, so installers using it will not throw warnings.

I have just uploaded Sigil 0.3.4b for Windows to the downloads area, and it contains this new version of the plugin. MSE has no complaints about the new installers.

Sigil itself remains unchanged in this version, so if you have 0.3.4 installed, there is no reason to update.