Welcome FBII — the high-performance terminal e-book reader for FB2, FB2-in-ZIP, and EPUB (2.x / 3.x) written in Rust with Vim-like navigation controls.
Features
- Format Parsing: Seamless parsing of
.fb2,.fb2.zip, and.epubarchives. - Auto Character Encoding: Auto-detects XML charset declarations and BOMs (UTF-8, Windows-1251, ISO-8859-1) via
encoding_rs. - Database Storage: Async SQLite library management (
sqlx) tracking reading history, progress, bookmarks, and reading sessions. - Library Management: Recursively scan a directory to bulk-import books (
:scan <dir>or--scan-dir), delete books/bookmarks, sort the library (recent/title/author), and live-filter the library list. - Layout & Unicode Wrapping:
unicode-widthline wrapping with custom measure limits, configurable line/paragraph spacing, and hyphenation. - Full-Text Search Index: Fast NFKD Unicode-normalized search (stripping accents & diacritics), with correct word wrapping for space-free scripts (CJK, etc.).
- Inplace Image Rendering: Images are rendered directly inside the scrollable text layout at their exact reading position using Kitty, Sixel, iTerm2, or Unicode half-blocks; press
vto zoom any image to full size. Book cover art is also displayed in the Info modal (i). - CSS-Aware EPUB Parsing: Content marked with an inline
display: nonestyle is hidden by default; toggleCto reveal it. - Reading Stats: Session count and total pages read are tracked per book and shown in the Info modal.
- OPDS Catalogs: Browse and download books from OPDS feeds; custom catalogs are persisted to the config file.
- Themes: Built-in color palettes (
dracula,monokai,github-dark,github-light).