Lector (software)

Last updated
Lector
Lector icon 2018.svg
Initial releaseNovember 2017
Stable release
0.5.1 / 9 March 2019
Repository
Written in Python, Qt
Operating system Linux
Available in8 languages
List of languages
Chinese, Czech, French, German, Japanese, Portuguese, Russian, Spanish
License GPL-3.0-or-later
Website github.com/BasioMeusPuga/Lector   OOjs UI icon edit-ltr-progressive.svg

Lector is a free e-book reading application for desktop Linux systems that also has basic collection management features. [1]

Contents

History

Lector was developed by a Spanish programmer known as BasioMeusPuga [2] He started publishing code on GitHub in November 2017. [3] and released on March 10, 2018.

Initially there was no support for annotations or text highlighting, neither for PDF files. Preliminary PDF support via Poppler was released in spring 2018 in version 0.2. [4] [1]

Features

It deals with both popular e-book formats and comic books: EPUB, Mobipocket, AZW(3/4), comic book archive (CBR/CBZ), Portable Document Format (PDF), DjVu, FictionBook (FB2) [5] It does not support files with digital rights management. [2]

Lector opens to an overview of the book collection ("library"), which can be sorted by the content of different metadata fields or last reading time and can search/filter titles. It can be configured as an array of book cover thumbnails or as a simple table. A book metadata editor is available via the context menu.

The reading view has a distraction-free mode, saves the reading position [1] and offers zoom controls, full-text search, text annotations [1] and an integrated dictionary. Text rendering (font, size, spacing) and page color can be configured. It can save several configuration profiles, switch between them and export them. Bookmarks can be organized via a sidebar.

Distribution

Lector is released as Free Software, and thus with its complete source code, under the terms of the GNU General Public License in version 3 or later on GitHub. It has been included in the default package repositories of Arch (AUR), openSUSE [6] and Gentoo.

Technology

The application is written in Python, using Qt 5 widgets via PyQt for the user interface. Given a folder with e-books, it indexes them in place. Metadata and cover images are stored in a SQLite database. [1]

Sources

Related Research Articles

AutoKey

AutoKey is a free, open-source scripting application for Linux.

The Linux Desktop Testing Project (LDTP) is an open-source testing tool that uses computer assistive technology to automate GUIs. The GUI functionality of an application can be tested in Windows, Mac, Linux, Solaris, FreeBSD and embedded environments. The Mac OS X version is called PyATOM, and the Windows version is Cobra.

Transmission (BitTorrent client) BitTorrent client

Transmission is a BitTorrent client which features a variety of user interfaces on top of a cross-platform back-end. Transmission is free software licensed under the terms of the GNU General Public License, with parts under the MIT License.

Cobbler is a Linux provisioning server that facilitates and automates the network-based system installation of multiple computer operating systems from a central point using services such as DHCP, TFTP, and DNS. It can be configured for PXE, reinstallations, and virtualized guests using Xen, KVM or VMware. Cobbler interacts with the koan program for re-installation and virtualization support. koan and Cobbler use libvirt to integrate with different virtualization software. Cobbler is able to manage complex network scenarios like bridging on a bonded Ethernet link.

TurnKey Linux Virtual Appliance Library

The TurnKey Linux Virtual Appliance Library is a free open-source software project which develops a range of Debian-based pre-packaged server software appliances. Turnkey appliances can be deployed as a virtual machine, in cloud computing services such as Amazon Web Services or installed in physical computers.

LightDM Free, open-source X display manager

LightDM is a free and open-source X display manager that aims to be lightweight, fast, extensible and multi-desktop. It can use various front-ends to draw User Interface, also called Greeters. It also supports Wayland.

<i>Endgame: Singularity</i> 2005 video game

Endgame: Singularity is a 2005 free and open source science fiction strategy/simulation game for Linux, Microsoft Windows, and Mac OS X.

Spyder (software)

Spyder is an open-source cross-platform integrated development environment (IDE) for scientific programming in the Python language. Spyder integrates with a number of prominent packages in the scientific Python stack, including NumPy, SciPy, Matplotlib, pandas, IPython, SymPy and Cython, as well as other open-source software. It is released under the MIT license.

Puddletag

Puddletag is a graphical audio file metadata editor ("tagger") for Unix-like operating systems.

Maliit

Maliit is an input method framework for computers with particular focus on implementing virtual keyboards. Designed mostly for touchscreen devices, Maliit allows the inputting of text without the presence of a physical keyboard. More advanced features such as word correction and prediction are also available.

Newsbeuter

Newsbeuter was a text-based news aggregator for Unix-like systems. It was originally written by Andreas Krennmair in 2007 and released under the MIT License. The program is aimed at power users and strives to be "the mutt of rss feed readers." It supports the major feed formats including RSS and Atom and can import and export subscription lists in the OPML format. Newsbeuter (podbeuter) also supports podcasting and synchronization. As of 2017, the project is no longer maintained; the original developers advise users to switch to Newsboat, an actively maintained fork of Newsbeuter.

Snap (software) Software deployment system for Linux by Canonical

Snap is a software packaging and deployment system developed by Canonical for operating systems that use the Linux kernel. The packages, called snaps, and the tool for using them, snapd, work across a range of Linux distributions and allow upstream software developers to distribute their applications directly to users. Snaps are self-contained applications running in a sandbox with mediated access to the host system. Snap was originally released for cloud applications but was later ported to also work for Internet of Things devices and desktop applications.

Flatpak Linux software deployment utility

Flatpak, formerly known as xdg-app, is a utility for software deployment and package management for Linux. It is advertised as offering a sandbox environment in which users can run application software in isolation from the rest of the system.

Windows Subsystem for Linux Compatibility layer for running Linux binary executables natively on Windows

Windows Subsystem for Linux (WSL) is a compatibility layer for running Linux binary executables natively on Windows 10, Windows 11, and Windows Server 2019.

qutebrowser Free keyboard-focused web browser with a minimal GUI

qutebrowser is a web browser for Linux, Windows, and macOS operating systems with Vim-style key bindings and a minimal GUI. It is keyboard-driven and is inspired by similar software such as Vimperator and dwb. It uses DuckDuckGo as the default search engine. qutebrowser is included in the native repositories of Linux distributions such as Fedora and Arch Linux. qutebrowser is developed by Florian Bruhin, for which he received a CH Open Source award in 2016.

GNOME SoundConverter

GNOME SoundConverter is an unofficial GNOME-based free and open-source transcoder for digital audio files. It uses GStreamer for input and output files. It has multi threaded design and can also extract the audio from video files.

JPEG XL is a royalty-free raster-graphics file format that supports both lossy and lossless compression. It is designed to outperform existing raster formats and thus to become their universal replacement.

Fyne (software) Graphical toolkit for building cross platform GUIs

Fyne is a free and open-source cross-platform widget toolkit for creating graphical user interfaces (GUIs) across desktop and mobile platforms. Fyne uses OpenGL to provide cross-platform graphics. It is inspired by the principles of Material Design to create applications that look and behave consistently across all platforms. It is licensed under the terms of the 3-clause BSD License, supporting the creation of free and proprietary applications. In December 2019 Fyne became the most popular GUI toolkit for Go, by GitHub star count and in early February 2020 it was trending as #1 project in GitHub trending ranks.

Foliate (software) E-book reading application for Linux

Foliate is a free e-book reading application for desktop Linux systems. The name refers to leaves, meaning "(getting) leafy" or "…-leaved".

JData is a light-weight data annotation and exchange open-standard designed to represent general-purpose and scientific data structures using human-readable (text-based) JSON and (binary) UBJSON formats. JData specification specifically aims at simplifying exchange of hierarchical and complex data between programming languages, such as MATLAB, Python, JavaScript etc. It defines a comprehensive list of JSON-compatible "name":value constructs to store a wide range of data structures, including scalars, N-dimensional arrays, sparse/complex-valued arrays, maps, tables, hashes, linked lists, trees and graphs, and support optional data grouping and metadata for each data element. The generated data files are compatible with JSON/UBJSON specifications and can be readily processed by most existing parsers. JData-defined annotation keywords also permit storage of strongly-typed binary data streams in JSON, data compression, linking and referencing.

References