The character encoding detection stack in KDE Frameworks just got its most significant overhaul in years. Version 6.31.0, released 2026-10-09, rebuilds KEncodingProber from the ground up with a statistical approach for UTF-8 and UTF-16 detection, improved Latin1 confidence scoring that evaluates accented and unaccented character pairs, fixed Big5 state tables, and a refactored Universal prober architecture that makes individual single-byte and multi-byte charset probers selectable. The net result is substantially more accurate detection of Windows-1252, CJK encodings, and mixed-script text, which matters for anyone working with legacy files or multilingual content on the Linux desktop.
KTextEditor picks up several vi-mode improvements that Vim users on KDE will appreciate. Numpad digits now work as repeat counts, addition and subtraction commands (Ctrl-A, Ctrl-X) operate in visual mode selections, binary number format is supported in those arithmetic commands, and backspace motion behavior has been corrected. Accessibility also gets attention, with fixed text boundary offsets for screen reader navigation. The color theme selector has been moved from the menu bar to the View menu, reflecting that it is a per-view setting rather than a global one.
File operations across KIO received a deep round of reliability work. The copy job now reports accurate progress percentages by correctly handling skipped files and directories in byte totals, and moves no longer exceed 100%. FTP workers implement RFC 3659 for proper file modification timestamps, and search results in Dolphin now update correctly when files are deleted or renamed. Trash directories are watched for external changes, FUSE-mounted remote filesystems are properly detected as slow, and symlink targets are resolved when creating new links. The copying code path has been consolidated into a single routine, which should make future maintenance simpler.
Syntax Highlighting adds a comprehensive Zsh update covering brace command substitution from zsh 5.10, arithmetic expansion via $[...], glob and subscript fixes, and new parameter expansion modifiers. Perl highlighting gets missing operators and heredoc language support, systemd unit files are updated to systemd v262, and a new LRC Lyrics definition joins the collection. Elsewhere, Breeze Icons adds Bluetooth speaker icons matching the names PipeWire requests, a dedicated tab-close icon, and a Zeal tray icon. KFileMetaData now extracts GPS coordinates, creation timestamps, and Apple-proprietary metadata from video files through FFmpeg. KDav gains DAV Push notification support and sync-token-based item fetching for more efficient calendar and contact synchronization.
KDE Frameworks 6.31.0 requires Qt 6.9.0 and is available as source tarballs or through distribution package managers. A cross-framework adoption of ECMInstalledLibraryCheck, touching over 50 libraries, improves build-time validation for packagers and anyone compiling from source with kdesrc-build.