Breaking changes
Default Git branch
-
The
v3branch has replacedv2as the repository's default branch. New clones use
v3automatically, but existing clones remain on their currently checked-out
branch. Existing Git users should fetch and switch tov3:git fetch origin git checkout v3 git pull --ff-only
Desktop and source builds
-
The desktop application was ported from the old Qt 5 bindings to
MiQt, Qt 6, and CGO. Building the GUI from source now
requires CGO and the Qt 6 Base and Multimedia development files; Go 1.24 remains the
minimum supported version. -
The Go module path changed from
github.com/ilius/ayandict/v2to
github.com/ilius/ayandict/v3. Install this release with:go install github.com/ilius/ayandict/v3@latest
-
The previous root build with
go build -tags noguiis no longer supported. The
non-GUI entry point moved to its own command; build it with:go build ./cmd/ayandict-nogui/
The GUI binary's runtime
--no-guiflag remains available. A standalone web-server
entry point is also available at./cmd/ayandict-web/.
Configuration and saved state
-
popup_style_strwas renamed toloading_popup_style_str. -
favorites_auto_savewas removed; favorites are now always saved immediately. -
max_results_total = 0is no longer supported as an unlimited result count. Set a
positive limit instead. -
Window geometry, splitter positions, table state, and desktop-widget state are now
stored as JSON in the platform state directory instead of Qt'sQSettings. Qt 5-era
window and layout state is not reused, so it may reset once after upgrading. The
configuration, history, most-frequent queries, and favorites remain in the existing
configuration directory.- Linux:
$XDG_STATE_HOME/ayandict, or~/.local/state/ayandict - macOS:
~/Library/Application Support/AyanDict - Windows:
%APPDATA%\AyanDict\State
- Linux:
-
The new
desktop_widgetandscan_popup_apioptions default totruewhen they are
absent from an existing configuration. Set either option tofalseif it is not
wanted. The desktop widget is still used as a fallback when no system tray is
available. -
Users of development snapshots that used
dektop_widgetshould rename it to
desktop_widget.
See the configuration reference for the complete list of current
options and defaults.
What's Changed
AyanDict 3.0.0 is the first stable release of the Qt 6-based v3 line. It adds
selection and clipboard lookup, much deeper desktop integration, new search and result
views, expanded keyboard navigation, and macOS packaging without Homebrew runtime
dependencies.
Scan Popup and desktop integration
- Added a configurable Scan Popup for looking up clipboard text, the X11 primary
selection, local-socket requests, or terms selected from an article. Popups support
result navigation, favorites, in-article search, movable frameless windows, and
opening the result in the main window. - Added a system-tray menu and a desktop-widget companion. They can show or hide the
main window, control scan sources, open About, and show a Random Favorite or Random
Entry. The desktop widget remembers its position and can provide the same controls
when no system tray is available. With a visible tray icon,start_hiddencan launch
the application without showing the main window. - Closing the main window now hides it instead of quitting while the system-tray icon
is available. - Added a per-user local socket API to ping the running instance, open the main window
or a Scan Popup with a query, and return search results as JSON. Linux and macOS
helper scripts are included undercmd/. - Added
--query=TERMto open or reuse AyanDict with a query. - Added
--privatemode, which does not write history, most-frequent queries, or
favorite changes. Its window and application title clearly identify the private
session. - Added optional periodic Random Favorite popups.
Search and results
- Added an optional Soundex mode for finding sound-alike words. Set
soundex_words_fileto enable it. - Word Match, also available in AyanDict 2.2.4, can now be selected independently for
Random Favorite withrandom_favorite_search_mode. - Improved fuzzy scoring, same-case ranking, and result pruning.
- Added an optional hierarchical result tree with
result_tree = true, including
alternate terms and richer result metadata. - The result header now shows the total result count and the selected result number.
- Regex search-on-type is disabled by default and can be enabled separately for the
desktop and web interfaces.
Navigation, favorites, and interface
- Added in-article search with
Ctrl+FandCtrl+GorEnter, next/previous result
withAlt+DownandAlt+Up, and backward/forward history navigation with
Alt/Ctrl+LeftandAlt/Ctrl+Right. - Added shortcuts for toggling a favorite (
F), opening Dictionaries (Ctrl+D),
reloading configuration (Ctrl+R), fully reloading configuration, dictionaries, and
styles (Ctrl+Shift+R), clearing history (Ctrl+Delete), quitting (Ctrl+Q), and
opening About (F1). - Escape now closes in-article search before continuing with the existing sequence of
leaving the query field and then clearing the query and results. - Expanded favorites with favorite markers in results, configurable colors, and a
Favorite context menu for managing alternate terms. - Simplified the main toolbar. Ctrl-clicking Clear also clears history; Ctrl-clicking
Reload reloads configuration, dictionaries, and styles; Shift-clicking Reload
reloads configuration and styles without reloading dictionaries. - Improved Dictionary Manager with checkboxes for search-mode options, single-row
selection, Reload and Close All toolbar actions, and per-dictionary audio autoplay
controls. - Added an in-app Keyboard Shortcuts dialog, application icons, and a Website button to
About. The activity labelRecentwas renamed toHistory.
Audio, articles, and reliability
- Added playback support for SPX, WAV, OGG, OGA, and Opus audio, an autoplay minimum
score, and more reliable manual and automatic playback. The minimum-score option is
currently spelledaudio_auto_play_min_scorein the configuration file. The default
wait between automatically played clips increased from 500 ms to 800 ms. - Improved article context menus and added automatic closing for malformed
<link>
tags that could otherwise hide an entire article. - Improved StarDict startup time and memory use, and fixed
.ifofiles that use Windows
CRLF line endings. - Fixed macOS ARM startup failures, user stylesheet loading, error dialogs, result-tree
crashes, favorite-toggle refreshes, article scroll/find preservation, and unwanted
audio playback when toggling favorites. Window sizing on small screens was also
improved.
Packaging
- The macOS ARM64 release build now links Qt statically and has no Homebrew runtime
dependencies. - Added separate platform artifact workflows and standalone web and non-GUI commands.
Full Changelog: https://github.com/ilius/ayandict/compare/v2.2.4..v3.0.0
I will try to build and upload Windows GUI binary (for now only non-GUI / web-only binary is available).