The One with the Thoughts of Frans

Archive for Software

KOReader 2021.04 “Gouty Gauss”

As one of the maintainers of KOReader, a versatile a document and image viewer, I’m proud to announce the latest release.


koreader-gaussian-fs8

In a big step forward, this month @poire-z decided to add MathML support! In short, that means we can now read ourselves about Gaussian math in KOReader the way it was meant to be (#7465).

We now do multitouch on the H2O, exciting times. I must admit I couldn’t quite figure it out back in 2014 myself.

We’d like to thank all contributors for their efforts. Some highlights since the previous release include:

  • Standardize directory/folder to folder (#7410) @hius07
  • PdfDocument: Unbreak highlights (#7457) @NiLuJe
  • Rotation icons: make ’em dynamic. (#7440) @NiLuJe
  • The great Input/GestureDetector/TimeVal spring cleanup (a.k.a., a saner main loop) (#7415) @NiLuJe
  • Kindle: Fix gyro events on Zelda (#7459) @NiLuJe
  • crengine: add support for MathML (#7465) @poire-z
  • ReaderZooming: Fix defaults handling (#7463) @NiLuJe
  • Add DBNL footnotes styletweak (#7467) @Frenzie
  • Text editor: option to show/hide keyboard on start (#7460) @hius07
  • Fulltext search: show notification when nothing found (#7436) @hius07
  • Standardize search/find to search (#7398) @hius07
  • Search dialogs: don’t close when nothing entered (#7501) @hius07
  • Input: Process input events in batches (#7483) @NiLuJe
  • Inputtext: don’t allow the cursor to move within a hint (#7507) @hius07
  • remarkable FW 2.6: use explicit busybox for ‘sync’ (#7509) @gbyl
  • FileManager: Hold the “+” button to refresh content (#7559) @hius07
  • FileManager: Also refresh content when tapping the “Home” button (#7564) @gbyl
  • Style tweaks: add links italic style (#7567) @hius07
  • ReaderToc: Unbreak ToC depth detection (#7569) @NiLuJe

Full changelog β€” closed milestone issues

CommentsTags: ,

KOReader 2021.03 “Magnificent Mullet”

As one of the maintainers of KOReader, a versatile a document and image viewer, I’m proud to announce the latest release.


koreader-2021 03-magnificent-mullet-fs8

There have been many behind the scenes code cleanups and speed improvements, but the one thing that stood out most to me personally was the new show QR code plugin (#7310) contributed by @AntonLee. It’s perfect to quickly check out an external link on your phone.

Image credit: “The Fisheries and Fisheries Industries of the United States”, by George Brown Goode (1887). Via.

We’d like to thank all contributors for their efforts. Some highlights since the previous release include:

  • Switch ConfigDialog’s rotation toggle to custom icons (#7306) @NiLuJe
  • Revamp flash_ui handling, once more, with feeling πŸ˜‰ (#7262) @NiLuJe
  • History: avoid opening non-existent files (#7280) @poire-z
  • TOC settings: add bind chapter navigation/titles to ticks (#7280) @poire-z
  • SkimToWidget: remove title bar, add bookmark button (#7280) @poire-z
  • Goto dialog: use “Go to Page” also with CreDocuments (#7280) @poire-z
  • Bookmarks dogear: fix position with CRe top status bar (#7312) @poire-z
  • When displaying a date (as opposed to a time), pad the hour with blanks if necessary in order to get a consistent alignment (#7322) @NiLuJe
  • CoverBrowser: list mode: limit font size of components (#7324) @poire-z
  • flash_ui: Workaround potential EPDC races (#7332) @NiLuJe
  • Legacy Kindle: Actually handle (system) power events (#7336) @NiLuJe
  • TOC: expand to show all chapters on current page (#7339) @poire-z
  • Kindle: Unbreak Zelda/Rex (#7341) @NiLuJe
  • crengine: CSS line-break/word-break, various fixes (#7342) @poire-z
  • External link: adds “Show QR code” (#7310) @AntonLee
  • Add Bulgarian keyboard layout (#7367) @josdion
  • OPDS: Parse Open Search Definition for feeds that support it (#7380) @ajvpot
  • reMarkable 2 clean wakeup from sleep (#7345) @snelg
  • SkimToWidget: swap ‘1’ and ’10’ buttons (#7408) @hius07
  • Unbreak HTTP authentication in WebDAV (#7425) @johnbeard
  • Update PDF annotations when changing bookmark text (#7411) @Toromtomtom
  • TOC settings: fix ticks disappearing (#7443) @poire-z
  • Initial KOA3 support (#7446) @NiLuJe

Full changelog β€” closed milestone issues

CommentsTags: ,

KOReader 2021.01 “Magnetic Flux”

As one of the maintainers of KOReader, a versatile a document and image viewer, I’m proud to announce the latest release.


koreader-logo-magnetic-field-fs8

It’s a new year, so we got ourselves a new haircut (#6937). A big thanks to @johnbeard for the effort! Here are a couple of screenshots of the new icons to whet your appetite.

The dictionary will now be significantly faster on dictionaries with synonyms (#7068).

The quite active reMarkable community has added initial support for the reMarkable 2 (#6992, #7066, #7065, #7122). Please keep in mind that it’s still in an early state and installation instructions on the KOReader wiki may not yet be fully updated either (see here).

Finally, book thumbnails will now load faster (after initial caching) thanks to ZSTD, although I never thought they were particularly slow in the first place (#6976).

Image credit: Magnetic field produced by current flow

We’d like to thank all contributors for their efforts. Some highlights since the previous release include:

  • kodev: Use getopt instead of a hand-rolled hack (#6980) @NiLuJe
  • remarkable2 support (#6992) @ddvk
  • BookInfoManager: Convert thumbnail compression to ZSTD (and many more behind the screens improvements) (#6976) @NiLuJe
  • Radius corners of more boxes (#6997) @johnbeard
  • Add MaterialDesignLight SVG icons (#6937) @johnbeard
  • Update UI layout code to use new SVG icons (#6977, #7019) @poire-z
  • Implement proper alpha-blending of SVG icons (#7011) @NiLuJe
  • Fix y origin of the configmenu extended tapzone (#7015) @NiLuJe
  • NetworkManager: Slightly more accurate wifi strength icons (#7020) @NiLuJe
  • Revert ManyBooks and Flibusta to HTTP (#7031) @Frenzie
    The OPDS servers for ManyBooks and Flibusta don’t actually have proper HTTPS support.
  • OPDSBrowser: Update the title during navigation (#7034) @NiLuJe
  • rM: Switch to plain dumb sleep during the crash screen (#7038) @NiLuJe
  • rM: Unbreak PowerEvents (#7043) @NiLuJe
  • Add fall back to text selection option to panel zoom (#6960) @Galunid
  • OPDS: Inform and warn about downgrade attack (#7032) @Frenzie
  • htmlToPlainText(): Format paragraphs with indentation (#7027, #7095) @Frenzie @poire-z
  • Quickstart: add long press sets default (#7048) @yparitcher
  • UI: Make button radius match default window radius (#7054) @johnbeard
  • bump sdcv for fast synonym search (#7068) @pazos
  • Time-adjust on all reMarkable events, not just EV_ABS (#7066) @snelg
  • Fix double-pressing reMarkable 2 power button twice to wake up (#7065) @snelg
  • UI: Clicking menu icon returns to top of menu (#7074) @johnbeard
  • Keyboard input in InputText (#7037) @johnbeard
    On desktop builds, you’ll now be able to use your regular keyboard in input fields.
  • Footer: add “Pages left in book” as footer item (#7047) @JasonInOttawa
  • LuaJIT on Android fixes (#7094) @NiLuJe
    KOReader depends on just-in-time compilation (JIT) provided by LuaJIT to be fast. A small minority of Android devices isn’t too fond of that, so on Android JIT has always been disabled in various parts of the program. With any luck you’ll notice the difference.
  • Dict/Wiki lookup: less text cleanup on manual input (#7099) @poire-z
  • DictQuickLookup: hold prev/next buttons go to first/last result (#7099) @poire-z
  • CRE: allow both Top/Bottom margins fine tuning (#7104) @poire-z
  • Legacy Kindle: Unbreak screensavers (#7112) @NiLuJe
  • add noop callback to cache size to prevent artifacts (#7106) @yparitcher
  • reader.lua: rework file/directory argument handling. (#7053) @yparitcher
  • Add menu to configure the top/alt status bar in crengine (#7107) @zwim
  • Add deprecation messages to plugins (#7101) @pazos
  • Dispatcher: update document.configurable (#7116) @yparitcher
  • Save rotation across restarts (#7096) @yparitcher
  • show AltStatusBar when changing the font size (#7119) @zwim
  • Revamp “flash_ui” handling (#7118) @NiLuJe
  • [UX] Footer: add prefix option “Compact items” (#7127) @JasonInOttawa
  • add table persistence module (#7120) @pazos
  • bump crengine: parsing, lists, 2-pages mode fixes & tweaks (#7138) @poire-z
  • Mark calibrecompanion plugin as obsolete (#7147) @pazos
  • Address assorted Weblate comments (#7154) @Frenzie
  • [reMarkable] Don’t need to keep attempting WiFi connection after success (#7121) @snelg
  • [feat] Support mimetypes in DocumentRegistry:hasProvider() (#7155) @Frenzie
  • [feat] Add skimming support for Non-Touch devices (#7163) @rezaarifandee

Full changelog β€” closed milestone issues

CommentsTags: ,

KOReader 2020.12 “Focused Treatment”

As one of the maintainers of KOReader, a versatile a document and image viewer, I’m proud to announce the latest release.

koreader-logo

screenshot-koreader-2020-12-17-zoom-options-fs8The biggest novelty this month is the reworked zoom functionality for paged documents, contributed by @jperon (#6885). Not only is it now easier to activate trusted companions like zoom to fit content, but easily customizable row and column modes were added as well. The directional arrows easily allow for switching between different routes to traverse the page. Happy holidays!

We’d like to thank all contributors for their efforts. Some highlights since the previous release include:

  • Reference page numbers list: highlight current page (#6888) @poire-z
  • Footer: ensure minimum height for the in-fill in progress bar (#6878) @Jellby
  • android: fix dict overrides (#6887) @pazos
  • Hide non-linear fragments (#6847) @Jellby
  • CoverImage plugin: add “Size and background” options (#6884) @zwim
    • CoverImage plugin: allow saving covers as BMP (#6904)
    • CoverImage plugin: enable on Remarkable and PocketBook (#6906)
    • CoverImage plugin: allow saving covers as JPG (#6924)
  • ReaderCropping: prettier bottom buttons (#6900) @poire-z
  • Kobo, Mk.5: Tweak CPU frequency scaling (#6905) @NiLuJe
  • add Latin hyphenation (#6910) @jperon
  • Paged documents: rework zoom options (#6885) @jperon
  • Kobo: Warn on restart if the startup script is outdated (#6916) @NiLuJe
  • switch between internal and external sdcard (#6919) @pazos
  • Use Unicode minus in ButtonProgressWidget (#6939) @johnbeard
  • Fix bad authentication handling in opds browser (#6942) @Galunid
  • Make default UI tapzones more generous (#6918) @NiLuJe
  • [Android] Switch compression to lzma2 (#6881) @pazos
  • Fix the frontlight gesture range scaling (#6946) @NiLuJe
  • JPG/PNG: MuPDF as default provider (#6931) @jperon
  • RenderImage: add renderSVGImageFile() (#6952, #6950) @poire-z
  • TextEditor: fix some settings not sticking (#6979) @poire-z
  • ReaderFooter: Don’t duplicate a 12h clock time format option (#6973) @NiLuJe
  • bump luajit-launcher: fix for some dict downloads (#6990) @pazos
  • Calibre plugin fixes for android (#6996) @pazos

Full changelog β€” closed milestone issues

CommentsTags: ,

KOReader 2020.11 “Hive of Industry”

As one of the maintainers of KOReader, a versatile a document and image viewer, I’m proud to announce the latest release.

2020-11 hives of industry-fs8

In November we’ve mostly seen the usual batch of refinements and bug fixes. The Android app will now avoid a zombie state when it’s killed by the activity manager (#6811). Besides that, we have a few new plugins: QR code display (#6844) and CoverImage (#6813), which provides a workaround for Android devices which use an image file to display a screensaver image.

Image credit: Bees and Hive

We’d like to thank all contributors for their efforts. Some highlights since the previous release include:

  • ReaderStatistics: Data collection improvements (#6778) @NiLuJe
  • Pocketbook: use raw input I/O (#6791) @ezdiy
  • Ensure the SD card is actually detected in Nickel on exit. (#6800) @NiLuJe
  • GestureDetector: add Tap interval setting, to avoid bounces (#6798) @poire-z
  • Dispatcher: allow registering actions at runtime (#6785) @yparitcher
  • Statistics: speed up Calendar view (#6807) @poire-z
  • [Kobo, Mk. 7] Enable the power LED when charging (#6810) @NiLuJe
  • android: handle onDestroy (#6811) @pazos
  • KoptInterface:getWordFromBoxes: guard against nil boxes (#6827) @pazos
  • Pocketbook: Use a single launcher (#6814) @ezdiy
  • H2O: Fix initial tap detection (#6832) @NiLuJe
  • Reader: rationalize “Back” key/action handling (#6840) @poire-z
  • Qrcode support (#6844) @jperon
  • Apply CSS tweaks for links to all elements below a elements. (#6856) @tastytea
  • Dispatcher: add Screenshot action (#6858) @yparitcher
  • coverimage plugin (#6813) @zwim
  • Android bundle update (#6870) @pazos
    • adaptative icons
    • minify + shrink
    • remove unused assets to save a few KBs
    • install apk by clicking on notification after download (doesn’t apply to F-Droid)

Full changelog β€” closed milestone issues

CommentsTags: ,

KOReader 2020.10 “Poignant Raindrops”

As one of the maintainers of KOReader, a versatile a document and image viewer, I’m proud to announce the latest release.


This month we’ve had more PocketBook fixes, and ToC ticks handling was simplified (#6716) and thereby made better.



We’d like to thank all contributors for their efforts. Some highlights since the previous release include:



Full changelog β€” closed milestone issues


CommentsTags: ,

KOReader 2020.09 “Peanut Butter”

This month’s release addresses a few long-standing PocketBook platform issues to bring the experience more in line with other platforms. A big thanks to @ezdiy for the effort.


On Kobo it’s now possible to enable USB Mass Storage without (re)starting Nickel (#6552). Since most of the KoboUSBMS tweaks required touching the startup script, a full, proper Exit -> Start cycle is required (or a device reboot). With a simple KOReader restart, the old startup script would still be used, and it doesn’t know how to deal with the new changes, which at best means a crash or a shutdown.


We’d like to thank all contributors for their efforts. Some highlights since the previous release include:



Full changelog β€” closed milestone issues

CommentsTags: ,

KOReader 2020.07 “Tumbleweed”

As one of the maintainers of KOReader, a versatile a document and image viewer, I’m proud to announce the latest release.


It’s been a busy month, so I’ll get right to some of the highlights.

Ruby (furigana)

Ruby characters (also known as furigani) are now supported in the form of the <ruby> element, small typographic annotations to aid pronunciation (#6305).

Rotation handling

Usually I tend to emphasize user-visible changes, and in a way this one’s both. Rotation was refactored (#6309), which immediately and easily allowed for better Android TV support (#6327).

The following screenshots showcase the new rotation handling on Chrome OS (running Android apps) and Android TV:
chromeOS-overlay
tv

calibre

The calibre metadata search and calibre wireless connections were merged into a single plugin (#6177).

search metadata changes:

  • search directly into calibre metadata files.
  • search can be performed on more than one library (configurable from a menu)
  • device scans now find all calibre libraries under a given root
  • search options can be configured from a menu. (case sensitive, find by title, author and path)
  • removed legacy global variables.
  • option to search from the reader
  • option to generate a cache of books for faster searches.

calibre wireless connection changes:

  • keep track of books in a library (includes prunning books from calibre metadata if the file was deleted locally)
  • remove files on device from calibre
  • support password protected connections
  • FM integration: if we’re in the inbox dir it will be updated each time a book is added or deleted.
  • disconnect when requested by calibre, available on newer calibre versions (+4.17)
  • remove unused opcodes.
  • better report of client name, version and device id
  • free disk space checks for all calibre versions
  • bump supported extensions to match what KOReader can handle. Users can override this with their own list of extensions (or from calibre, by configuring the wireless device).

Hebrew translation

A big thank you to all of our translators. This month a good chunk of KOReader was localized in Hebrew. Please head over to https://hosted.weblate.org/engage/koreader/ if you want to help.

We’d like to thank all contributors for their efforts. Some highlights since the previous release include:

  • Fix bottom menu item titles truncation (#6273) @poire-z
  • Add chapter title when exporting notes in Evernote (JSON/HTML, remote) (#6146) @Galunid
  • [chore] Rename ‘More plugins’ to ‘More tools’ (#6279) @Frenzie
  • [chore] Device abstraction (#6280) @pazos
  • Unified calibre plugin (#6177) @pazos
  • [chore, UX] Move some ‘permanent’ settings inside more_tools (#6282) @pazos
  • [Android] Add support for custom startup scripts (#6275) @zwim
    This is only available on the rocks flavor of Android, which is provided here on GitHub. In the fdroid flavor it’s been disabled. See the wiki for more information.
  • [plugin] Dispatcher: for profiles & gestures (#6106) @yparitcher
  • Don’t rotate BookStatus & ReadingProgress in screensavers. (#6286) @NiLuJe
  • Translator: Add definition of the word to the translation (#6295) @Galunid
  • bump crengine: add support for elements (#6305) @poire-z
  • Add the possibility run shell scripts from filemanager on android (#6288) @zwim
  • Add PocketBook 614W (Basic 3) definition (#6312) @roshavagarga
  • [feat] FocusManager: wrap around horizontally (#6315) @Frenzie
  • [UX] Add left to close to ConfigDialog for hasFewKeys (#6318) @Frenzie
  • [plugin] Wallabag: Make remove from history consistent with deletion (#6320) @Frenzie
  • [UX] Move double tap to gesture manager (#6322) @Frenzie
  • [i18n] Add support for fledgling Hebrew translation (#6333) @Frenzie
  • [feat] Add text/html to OPDSBrowser (#6335) @Frenzie
  • Landscape FM / Refactor rotation (#6309) @yparitcher
  • bump crengine: memory fixes, speedup, bg image enhancements (#6350) @poire-z
  • android: support for native surface rotation (#6359) @pazos
  • Allow locking the gyro to the current screen mode (#6347) @NiLuJe
  • Add macOS target (#6361) @JasonInOttawa
  • ReaderGesture: cleanup (#6292) @yparitcher
  • Dispatcher: use sections (#6364) @yparitcher
  • Perception expander: disable margin increase when set to 0 (#6377) @yparitcher
  • Initial handling of the upcoming Kobo Nia (#6380) @NiLuJe NB This may not work properly on a real Nia once it’s released.
  • [UX] German keyboard layout qwertz (#6385) @zwim
  • SetNightMode event & Night Mode refresh rate (#6386) @yparitcher
  • Implement numeric collator (natural sorting) in file manager (#6378) @Galunid
  • Remarkable button-listen when resuming from suspendsuspend fix (#6396) @tcrs

Full changelog β€” closed milestone issues

CommentsTags: ,

KOReader 2020.06 “Mosaic”

As one of the maintainers of KOReader, a versatile a document and image viewer, I’m proud to announce the latest release.





This month we’ve seen quite a number of small improvements in various areas, such as support for book-specific style tweaks (#6244), support for ::before/after (#6236), an offline add link to Wallabag queue (#6170), as well as some Android fixes. Enjoy!


We’d like to thank all contributors for their efforts. Some highlights since the previous release include:



Full changelog β€” closed milestone issues

CommentsTags: ,

Fix Firefox Adressbar Autofill Broken

After updating to the latest Firefox ESR 68.8, for some reason my Firefox stopped autofilling the addressbar.

Our first stop lies in Help β†’ Troubleshooting information β†’ Places Database (which will take you to about:support).

Click verify integrity, it will probably detect an issue, and then it claims it will replace it on the next startup.

> Task: checkIntegrity
– Unable to fix corruption, places.sqlite will be replaced on next startup

But oddly enough, nothing of the sort happened! Not to worry, right at the top there’s the profile directory, which indicates where the places.sqlite file can be found. Rename it to something like .bck or .old, or just outright delete it if you don’t care, and success! Everything will be working again.

> Task: checkIntegrity
+ The places.sqlite database is sane
+ The favicons.sqlite database is sane

Unfortunately you’ll have to repopulate the autofill if you take this approach.

Geekery

But I didn’t want to admit defeat. Surely it can’t be too hard to salvage our old database. As an aside, but not strictly relevant to what I did here, I think it’s always useful to have sqlitebrowser installed. That way you can browse the data and run SQL commands on it. For example, if you open places.sqlite and run PRAGMA integrity_check on it… Oh dear, it says the same thing as Firefox: database disk image is malformed.

But we have a trick up our sleeve: command line SQLite. My initial plan was to play around with export and import to determine where the error was located since SQLite didn’t want to say, but that seemed a bit tedious. Essentially to try it table by table, and once I’d identified the table, basically to keep cutting it in half. But as luck would have it, SQLite 2.29 and higher has a built-in error correction feature. Docs here.

sqlite3 places.sqlite ".recover" | sqlite3 places_fixed.sqlite
Error: near line 378367: NOT NULL constraint failed: moz_origins.host

All that was left was to give it a try and all was well with the world again β€” or at least with Firefox. The SQLite error recovery command found the error and fixed it up all by itself. So now I still have all of my location history. Useful? Maybe not in this particular case, but good to know if anything like this should happen in the future on some more important data.

CommentsTags:

« Newer Entries β€’ Older Entries »