Skip to content

@dougmassay dougmassay released this Dec 3, 2020 · 156 commits to master since this release

Sigil-1.4.3 Critical Bug Fix Release

Bug Fixes Since Sigil-1.4.0:

  • critical bug fix for OPF metadata attributes that use named entities
  • fix bug in "Add Existing" files when file names would require percent encoding
  • fix bug in multiple language spellchecking dialog word lookup when no language attributes used
  • update de, nl, sv, ko, ru translations that missed the Sigil 1.4.0 initial release
  • critical bug fix for over xml encoding html used inside metadata in the opf
  • revert ctrl-f to it long standing Find and Replace behaviour
  • fix mismatched override wait cursor usage
  • fix crashes when dictionaries are missing on load or during first spellcheck
  • update the mapping of language codes to dictionaries without the need to restart
  • fix critical bug which caused split to break links that are bare fragments
  • fix additional critical bugs which caused split to lose fragments from link targets
  • fix double # chars in fragment ids during merge
  • fix hang on load with bad encryption.xml font uris
  • quiet unneeded debug output when importing an epub
  • fix opf cleanup bug when identical xmlns values are used with two different prefixes on the same tag

Sigil-1.4.3 represents additional critical bug fixes and is meant to immediately replace Sigil 1.4.0 through Sigil-1.4.2. It has all the features of the original Sigil 1.4.0 including new icon themes and multiple language spell checking.


Please check the Sigil Wiki for important Sigil support links, additional resource downloads, and platform-specific trouble-shooting tips/requirements.

Mac users should still download and install ActiveState's ActiveTcl Community Edition to utilize plugins that use Tk/Tcl GUIs. More here.
Mac users should also check out the wiki entry on the New Release File Format

The latest Sigil user guide can always be downloaded from its own repository.

PGP Fingerprint

Assets 8

@dougmassay dougmassay released this Nov 21, 2020 · 156 commits to master since this release

Sigil-1.4.2 Critical Bug Fix Release

This release has been replaced with Sigil-1.4.3 that has some additional critical bug fixes.

Upgrade to Sigil-1.4.3

Bug Fixes Since Sigil-1.4.0:

  • critical bug fix for incorrectly xml encoding of opf metadata attributes that use entities
  • fix bug in "Add Existing" files when file names would require percent encoding
  • fix bug in multiple language spellchecking dialog word lookup when no language attributes used
  • update de, nl, sv, ko, ru translations that missed the Sigil 1.4.0 initial release
  • critical bug fix for over xml encoding html used inside metadata in the opf
  • revert ctrl-f to it long standing Find and Replace behaviour

If you are using either Sigil-1.4.0 or Sigil-1.4.1, we strongly urge you to upgrade to Sigil-1.4.2.


Please check the Sigil Wiki for important Sigil support links, additional resource downloads, and platform-specific trouble-shooting tips/requirements.

Mac users should still download and install ActiveState's ActiveTcl Community Edition to utilize plugins that use Tk/Tcl GUIs. More here.
Mac users should also check out the wiki entry on the New Release File Format

The latest Sigil user guide can always be downloaded from its own repository.

PGP Fingerprint

Assets 5

@dougmassay dougmassay released this Nov 16, 2020 · 162 commits to master since this release

Please use Sigil 1.4.2 in place of this release as it contains some critical bug fixes

Sigil-1.4.1

Bug Fixes:

  • critical bug fix for over xml encoding html used inside metadata in the opf
  • return use of ctrl-f to its long standing functionality

Please use Sigil 1.4.1 in place of Sigil 1.4.0.


Please check the Sigil Wiki for important Sigil support links, additional resource downloads, and platform-specific trouble-shooting tips/requirements.

Mac users should still download and install ActiveState's ActiveTcl Community Edition to utilize plugins that use Tk/Tcl GUIs. More here.
Mac users should also check out the wiki entry on the New Release File Format

The latest Sigil user guide can always be downloaded from its own repository.

PGP Fingerprint

Assets 4

@dougmassay dougmassay released this Nov 13, 2020 · 167 commits to master since this release

Sigil-1.4.0

Sigil-1.4.0 represents a mix of bug fixes and new features for both epub2 and epub3 users.

Multiple Language Spellcheck support! Icon Themes and other cool stuff! Read all about it.

New Features:

  • Two different types of Multiple Language Spellchecking support added:
    • A user can now specify a Primary and a Secondary Language dictionary for real-time spellchecking (red squiggley underline).
    • The Spellcheck Dialog will now support spell checking as determined by xml:lang and lang attributes in any languages with dictionaries
  • Main UI icons now use scalable svg files to better serve higher res displays. All provided by BeckyEbook (ala BeckyDTP). A huge Thank You! to BeckyEbook
  • New brighter Sigil Application Icon is now being used.
  • Alternate Sigil main Application Icon now available as a build-time option
  • Sigil now provides 3 different Icon Themes for the user: Main, Fluent, and Material. Again all thanks goes to BeckyEbook for creating/collecting all of the icon themes!
  • Sigil will now support a custom user-determined Icon theme via a custom .rcc file.
    • pre-made icon themes for Legacy and Material themes in different base colors are now available with more user-contributed theme files to hopefully come. Again Thank BeckyEbook!
    • checkout https://github.com/Sigil-Ebook/IconThemes for more information and additional themes
  • New main toolbar icons are now available and improved icon groupings have been made to provide the user with a greater degree of toolbar customization. Users may need to drag and drop icon grouping and modify their selections of Toolbars to see some of these new options.
  • Improved support for IRI (international) hrefs. OPF newly added file manifest ids now converted to plain ascii to prevent issues with older readers

Bug Fixes:

  • Fix bugs in Marking for Index
  • Perform major URL en/decode refactoring to properly handle '#' (and other reserved chars) in file names
  • Translate "Table of Contents" using book language not ui langauge
  • Fix handling of links when using Add Existing on xhtml files with links to other xhtml files
  • Fix split code to better handle duplicate target ids that reside in different files
  • Bug fixes for the plugin interface from wrCisco (Thank you!)
  • Bug fixes for the plugin interface setguide from BeckyDTP (Thank you!)
  • Fix bug in OPF parsing when valid but non-traditional namespace prefixes are used
  • Fix rare off by one condition in clip number to clip enditor model conversion

Please check the Sigil Wiki for important Sigil support links, additional resource downloads, and platform-specific trouble-shooting tips/requirements.

Mac users should still download and install ActiveState's ActiveTcl Community Edition to utilize plugins that use Tk/Tcl GUIs. More here.
Mac users should also check out the wiki entry on the New Release File Format

The latest Sigil user guide can always be downloaded from its own repository.

PGP Fingerprint

Assets 5

@dougmassay dougmassay released this Jul 24, 2020 · 289 commits to master since this release

Sigil-1.3.0

Sigil-1.3.0 represents a mix of bug fixes and new features for both epub2 and epub3 users.

Windows users please note that the installer will now allow Sigil to be installed for the current user only if desired. The installation of the included Visual Studio C++ runtime, however, will always require administrative privileges. You can provide those credentials for the runtime install portion only (if you install Sigil for the current user). The user can also skip the runtime check/install entirely if they desire. If they do so, however, it will be up to them (or their administrator) to make sure the proper Visual Studio C++ runtime is installed. Because of these changes, it recommended that Windows users uninstall the previous version of Sigil before installing this one. No settings, preferences, or plugins (or their configurations) will be lost by doing so.

New Features (since the 1.2.0 release):

  • Added FontTab to show a specific font by double-clicking in BookBrowser
  • Added Index Toolbar
  • Windows/macOS release build updated to Qt 5.12.9 with added bug fixes
  • Windows/macOS release build updated to Python 3.8.3
  • Added increased protection against evil epubs manipulating file: urls
  • Changes to support building with Visual Studio 2019 on Windows
  • Improved Windows Installer and handling of C++ runtime libraries
  • Updated Build instructions for MacOS, Windows, and Linux

Bug Fixes (since the 1.2.0 release):

  • Reorganized the source code to add a Widgets folder to reduce code duplication
  • Fixed spelling mistakes in MetaEditor user interface and xmlsanitycheck error messages
  • Fixed mistakes handling font files (and other files) whose names start with a "." on macOS/Linux
  • Improved embedded python error messages
  • Improved some error messages on epub load
  • Fix TabConnections to properly handle the new FontTab tabs
  • grew Preferences Colour widths to better handle non-English colour names (Thanks BeckyEbook)
  • Fixed bug in handling missing local links when using Add Existing ...
  • Removed all python2 remanants from the Sigil plugin and pythonlib code
  • If "Mend on Open" set, better handle import of huge file of of run-on lines
  • Bug fix for css url updating
  • Fix bug that prevented css updates from being shown in Preview without reload
  • Fix gcc8 build warnings where possible
  • Prevent BookBrowser's Rename and RERename from using URI delimiters ("#",etc) in file names

Please check the Sigil Wiki for important Sigil support links, additional resource downloads, and platform-specific trouble-shooting tips/requirements.

Mac users should still download and install ActiveState's ActiveTcl Community Edition to utilize plugins that use Tk/Tcl GUIs. More here.
Mac users should also check out the wiki entry on the New Release File Format

The latest Sigil user guide can always be downloaded from its own repository.

PGP Fingerprint

Assets 8

@dougmassay dougmassay released this Mar 29, 2020 · 364 commits to master since this release

Mainly a Linux source-only release to handle an issue with the dulwich Python module (required for the new Sigil checkpointing feature) on systems with a Python 3 version less than 3.8.0.

Assets 5

@dougmassay dougmassay released this Mar 29, 2020 · 370 commits to master since this release

Sigil-1.2.0

Sigil-1.2.0 represents a mix of bug fixes and new features for both epub2 and epub3 users.

New Features (since the 1.1.0 release):

  • Provide a tweak setting to adjust drag distance for Windows & Linux
  • Added YesToAll and NoToAll options for replacing images via Add Existing...
  • Highdpi and uifont setting information is now available to Sigil's plugins
  • Add a Checkpoint feature to Sigil for fast versioned saves to git repositories
  • add ability to easily create a Checkpoint (stored via a local git repository)
    • add ability to see the changes between the current epub and any earlier Checkpoint
    • add ability to revert the entire epub back to an earlier Checkpoint
    • added ability to manage and delete Checkpoint repositories.

Bug Fixes (since the 1.1.0 release):

  • Fix cosmetic file name issue when aborts file rename edits in BookBrowser
  • Improve default drag-distance for BookBrowser for Windows & Linux
  • Reduce required drag distance for macOS
  • Fix index generation bug related to non-escaped text used in regular expressions
  • Fix bug that caused lost class attributes when marking words for an index
  • Guide to Landmark Semantic mappings have been extended to better cover "other.*" guide items
  • Changed the removeDir() routine to better deal with Windows delete file issues.
  • Updated Building on Windows docs
  • Updated Building on MacOS docs
  • Modified the codebase to use Ordered hashes/dictionaries throughout to prevent unneeded reordering in tag attribute order

Please check the Sigil Wiki for important Sigil support links, additional resource downloads, and platform-specific trouble-shooting tips/requirements.

Mac users should still download and install ActiveState's ActiveTcl Community Edition to utilize plugins that use Tk/Tcl GUIs. More here.
Mac users should also check out the wiki entry on the New Release File Format

The latest Sigil user guide can always be downloaded from its own repository.

PGP Fingerprint

Assets 7

@dougmassay dougmassay released this Feb 7, 2020 · 489 commits to master since this release

Sigil-1.1.0

Sigil-1.1.0 represents a mix of bug fixes and new features for both epub2 and epub3 users. Some of the highlights for this release include:

Dark mode suport for Windows Linux and macOSX. Mac is the only one of the three platforms where Qt inherently supports the system-level dark mode.

A brand-new higher-contrast icon set for Sigil has been contributed by BeckyEbook. Thanks for all your contributions to this version @BeckyDTP !

Sigil's preference widgets have been redesigned to fit on smaller screens and to make room for future preference. Make sure you take a look around. Everything is still there (and a few things have been added), but some things have been regrouped and relocated.

Platform-specific Dark Mode details:

On Windows, darkmode is most commonly controlled by the darkmode settings in the latest version of Windows 10's settings. It won't work "on the fly" like many apps from the Windows Appstore, so you'll have to restart Sigil if you change your system settings to see the settings take effect. To override the system setting (or to enable dark mode on versions of Windows that don't officially have a dark mode), use the SIGIL_USES_DARK_MODE environnment variable (0 = off, anything else = on).

On Linux, Sigil has made changes to try and honor all platform themes that users define for their Qt apps on their desktop of choice. So theme managers like qt5ct or kvantum should work well with changing Sigil's look. There might be a bit of color/qss tweaking to do, but all-in-all, I've seen good results with a myriad of themes (dark and light). If you'd like to opt-in to Sigil's own included dark palette, set the FORCE_SIGIL_DARKMODE_PALETTE environment variable before launching Sigil. That will cause Sigil to ignore platform themes/overrides and to use the same dark palette that Windows uses.

On macOSX, Dark mode should just work. Qt has added a lot of inherent support for Mac's dark mode and Sigil has incorporated that support. Even on-the-fly time-of-day changes should work with Sigil.

New Features (since the 1.0.0 release):

  • Added Support for Dark Mode for Windows, Linux and macOSX (Thanks BeckyEbook!)
  • Added new icons that work well under both Light and Dark modes (Thanks BeckyEbook)
  • Added ability to use Dark Mode for Preview (controlled by Preferences)
  • Added Zoom Keys Ctrl +/- support to the Inspector (for improved Accessibility)
  • Added support for a second Clip bar with up to 20 additional clips
  • Select Special Character Dialog now support scrollbars
  • Guide and Nav titles are now translated into ebook language (if translations available)
  • All Report Names have been shortened to allow larger font sizes for better Accessibility
  • Added improved contrast icons (Thank you BeckyEbook!)
  • Completely reworked all Sigil Preference Dialogs to make them more screen/user friendly
  • Added support for controlling Windows/Linux HighDPI settings
  • Clips from the Clips QDockwidget window can now be used in CSS Tabs as well.
  • The plugin interface has been extended to show current colorMode and primary colors

Bug Fixes (since the 1.0.0 release):

  • Replaced deprecated QSignalMapper code with QActionGroups throughout Sigil's code base
    (still more work to do there)
  • Fixed bug in "open-with" on macOSX that did not allow .app files to be selected
  • Soft hyphens characters are now handled properly by Spellchecking [PR from BeckyEbook]
  • Fixed bug in 'split at cursor" that created extra empty pages
  • Fix bug in Insert Files from Disk
  • Fixed same thread re-entrancy issues with tab creation / deletion code due to Qt signal/slot handling
  • Fixed source code typos [PR from luzpaz]
  • Fixed incorrect number of "times used" in Image Reports
  • Fixed plugin font_iter() code to properly handle new Iana.org font media types
  • Broken links are no longer changed during ImportHTML (Add Existing...) operations
  • Cover svg image "vh" "vw" fixup code now properly handles empty headers on cover page
  • GetBookpathByPathEnd() will now work properly and thereby better handle detection of file
    name conflicts during imports
  • Better handle file name info from Validation plugins
  • Inserting Links now creates proper links for top of page of the same file
  • Fix ImportHTML when creating a new book to properly add an NCX if needed
  • Include official QT backported fixes to Qt 5.12.6 to make it more stable
  • The nav will now properly handle internal links to top of page of the nav itself
  • harden lxml xml processing with resolve_entities set to false for improved security

Please check the Sigil Wiki for important Sigil support links, additional resource downloads, and platform-specific trouble-shooting tips/requirements.

Mac users should still download and install ActiveState's ActiveTcl Community Edition to utilize plugins that use Tk/Tcl GUIs. More here.
Mac users should also check out the wiki entry on the New Release File Format

The latest Sigil user guide can always be downloaded from its own repository.

PGP Fingerprint

Assets 7

@dougmassay dougmassay released this Dec 18, 2019 · 655 commits to master since this release

Sigil-1.0.0 represents a major milestone in Sigil's history. The requirement that all epubs must be restructured to meet Sigil's long-held standard has finally been lifted. Users can still manually choose to restructure epubs to the old Sigil standards if they choose, but it will no longer be done automatically upon opening. Please read the following notes carefully to avoid confusion.

The major changes since Sigil-0.9.18 include the following:

  • Upon initial load, the epub structure that exists will be loaded and kept in its "as-is" state, moving and renaming nothing
  • The BookBrowser will still show the Text, Images, Styles, Fonts, Audio, Video, and Misc "folders" but these are now "virtual folders" that simply organize the existing resources by type but do not restrict their actual location within the epub.
  • A new Preferences setting has been added to the Appearance Preferences that will determine if the book folder relative path will be shown in the BookBrowser or its shorter unique name (filename) will be used instead. In either case, the BookBrowser tooltips will always show the file's true book folder relative path. Duplicate file names (in different subfolders) will always show the longer path to be able to differentiate between them regardless of the new Appearance Preference.
  • A Tools menu item has been added to standardize any epub already loaded to Sigil's old structure
  • A Tools menu item has been added to allow a user to design a custom "empty" epub layout
  • A "Move" context menu item has been added to BookBrowser to enable moving of resources to where you want them to be.
  • A "Rename" context menu item has been added to BookBrowser to enable renaming of the NCX and OPF resources.
  • The python plugin interface has been extended to support all of this as documented in the new Sigil_Plugin_Framework_rev12.epub and online at MobileRead in our Plugin Development thread.

Please note, the design goal of Sigil 1.0.0 was to make minimal changes for users and ebook developers that still want to use Sigil as they did. The new Preference setting defaults to showing only the filename as before, and the default empty epub for creating new epubs is the same as before. The interface and functionality should stay almost exactly the same. Loading any epub previously saved by Sigil will still work exactly as before. Only editing new epubs that are in non-standard form will necessitate a use of the new Tool menu (see the fourth item above) to standardize it.

Bug Fixes (since the 0.9.991 Pre-release):

  • All bugs reported in alpha release have been fixed.
    Special thanks to Vroni, BeckyEBook, Doitsu, Odamizu,
    Un_Pogaz, snarkophilus, and many others who ran tests and reported bugs.
  • Fix for crash on macOS opening Preferences following New MainWindow
  • Workaround Qt bug in restoreState after maximize with Find and Replace open
  • Fix logic to identify and store window geometry when normal (not maximized)
  • Fix handling of plugin dialog being closed or aborted / cancelled
  • Prevent Preview timer related crashes on closing MainWindow on macOS
  • Update and harden media types recognition
  • Use non-native QFileDialogs on macOS to workaround Qt bugs
  • Fix crash of fast Tab closing on all platforms
  • Prevent whitespace inside code tags from being changed when prettifying
  • replace case change "text icon" with actual sizable icon (Thank you BeckyEbook)

New Features (since the 0.9.991 Pre-release):

  • Add Load/Save capability for the Custom Empty Epub Layout Designer
  • Large speedups in Reports using QtConcurrent
  • Speedups in Spellcheck Dialog sorting
  • Add File Name to Preview Window title
  • Add Regular Expression File Renamer to BookBrowser context menu
  • Mend on Open or Save only touch/repair non-wellformed files
  • Re-enable Drag and Drop of Tabs
  • Add menus/icons for "New ePub2" and "New ePub3" to ease creation of empty epubs (icons courtesy of BeckyEbook)
  • Extend ePub2 Guide Semantics to include many of the "other.*" codes common to ePub3 as well

Please check the Sigil Wiki for important Sigil support links, additional resource downloads, and platform-specific trouble-shooting tips/requirements.

Mac users should still download and install ActiveState's ActiveTcl Community Edition to utilize plugins that use Tk/Tcl GUIs. More here.
Mac users should also check out the wiki entry on the New Release File Format

The latest Sigil user guide can always be downloaded from its own repository.

PGP Fingerprint

Assets 7
Pre-release

@dougmassay dougmassay released this Nov 10, 2019 · 784 commits to master since this release

Announcing Sigil-0.9.991 (pre Sigil-1.0) Alpha Release


Before Sigil 1.0 can be released, we felt it was very important to remove the restriction that all epubs must be in Sigil standard form which included one OEBPS folder, specific names for the OPF, and NCX, only one folder for each type of resource (Text, Images, etc.).

Therefore, over the last two months, we have had to tear out much of the internals of Sigil to teach it to not standardize epubs on initial load, not to rename the OPF, NCX, not to move files to our specific folders, etc. Then we had to teach Sigil how to properly work with files in any structure or locations, how to build the correct links between them. This included extending the Sigil plugin interface appropriately.

To accomplish this over 4000 lines of code were added and over 2000 were deleted, touching almost every file in Sigil. All of this work has been very disruptive with the potential for lots of breakage and new bugs being introduced.

Special thanks must be given to both BeckyEbook and Doitsu for regularly building and testing the changes as they were being made and reporting back any breakage or issues they found and providing feedback on ideas. Without their hard volunteer effort, Sigil would be in a much much worse condition.

The work on Sigil-1.0 has now stabilized, and it is now ready for additional volunteers and testers to try and break it so that any final nits or issues can be tracked down and fixed before the upcoming Sigil 1.0 release.

The main changes include the following:

  1. Upon initial load, the epub structure that exists will be loaded and kept in its "as-is" state, moving and renaming nothing
  2. The BookBrowser will still show the Text, Images, Styles, Fonts, Audio, Video, and Misc "folders" but these are now "virtual folders" that simply organize the existing resources by type but do not restrict their actual location within the epub.
  3. A new Preferences setting has been added to the Appearance Preferences that will determine if the book folder relative path will be shown in the BookBrowser or its shorter unique name (filename) will be used instead. In either case, the BookBrowser tooltips will always show the file's true book folder relative path. Duplicate file names (in different subfolders) will always show the longer path to be able to differentiate between them regardless of the new Appearance Preference.
  4. A Tools menu item has been added to standardize any epub already loaded to Sigil's old structure
  5. A Tools menu item has been added to allow a user to design a custom "empty" epub layout
  6. A "Move" context menu item has been added to BookBrowser to enable moving of resources to where you want them to be.
  7. A "Rename" context menu item has been added to BookBrowser to enable renaming of the NCX and OPF resources.
  8. The python plugin interface has been extended to support all of this as documented in the new Sigil_Plugin_Framework_rev12.epub and online at MobileRead in our Plugin Development thread.

Additional bug fixes include:

  • handle javascript location.href style in Preview
  • use CaseInsensitive sort in Plugins menu (Thank you BeckDTP)
  • use Locale aware sort routines for AddMetadata, and MetaData Names (Thankyou Doitsu)
  • recognize x-font-otf style media types
  • recognize vnd.adobe.page-template+xml media type
  • recognize webp images media type
  • improve updating of smil xml files when moved
  • preserve whitespace inside the code element when prettifying
  • try again to prevent timer events during MainWindow close that causes random crashes on exit on macOS
  • fix svg cover images to use 100vh and 100vx in Preview

Please note, the design goal of this project was to make minimal changes for users and ebook developers that still want to use Sigil as they did. The new Preference setting defaults to showing only the filename as before, and the default empty epub for creating new epubs is the same as before. The interface and functionality should stay almost exactly the same. Loading any epub previously saved by Sigil will still work exactly as before. Only editing new epubs that are in non-standard form will necessitate a use of the new Tool menu (see # 4 above) to standardize it.

Call For Feedback, Testing, Plugin Developers, etc...


So we really need your help to test Sigil to make sure we have not broken anything and to provide feedback on the new features.

This release will also serve to allow Plugin Developers to test their plugins and make any changes needed to make sure their plugins will still work as expected.

So please take a minute to download Sigil-0.9.991 and test it as you would use earlier versions of Sigil, reporting back on MobileRead or via our GitHub site any bugs you find with instructions on how to recreate them. This is especially true of some of Sigil's more advanced features such as HTML TOC, Index generation, Merging and Splitting of Files, Reports, movement of resources, and any other feature of Sigil you would normally use on a regular basis. Though we're not going to ignore any reported issues, we're asking that you try to limit your reports to broken functionality or incorrect behavior. Cosmetic issues and minor inconveniences (with easy workarounds) can be dealt with later.

Note: Sigil-0.9.991 should not be considered a "production-ready" release. It is being made available to make sure our upcoming Sigil 1.0 release is as bug free and stable as possible.

Assets 7