0.11.0
First of all, we'd like to formally and enthusiastically thank the winit team over at https://github.com/rust-windowing/winit for developing, providing and stabilizing a new, neat and nice keyboard API over the course of several years. Without them and their monstrous efforts, Neovide would have its Wayland support still broken and subject to even more input issues.
Breaking Changes
- The environment variable
WINIT_UNIX_BACKEND=x11
is no longer supported. It's preferred to run in native Wayland. But if you absolutely want to run in XWayland, you can runenv -u WAYLAND_DISPLAY neovide
instead. - The keyboard mappings can work slightly differently, and due to the issues on macOS, you might want to stay on an older release if those cause problems for you.
- CMD + SHIFT works as CMD only
- fails to interprets in Macos. I set neovide_input_macos_alt_is_meta
- Make sure that you map the actual character produced and don't include shift in your mappings. There are two exceptions to this:
- Mappings of special keys like
<Space>
,<Enter>
,<Tab>
,<F1>
and so on. You can use<S-Space>
to map shift combined with space. - Mappings involving CTRL and normal alphabetic characters, due to the way Neovim deals with them:
CTRL-{char} {char} typed as a control character; that is, typing {char}
while holding the CTRL key down. The case of {char} is
ignored; thus CTRL-A and CTRL-a are equivalent. But in
some terminals and environments, using the SHIFT key will
produce a distinct code (e.g. CTRL-SHIFT-a); in these
environments using the SHIFT key will not trigger commands
such as CTRL-A.
- Mappings of special keys like
Features
- Add profiling support through Tracy Profiler by @fredizzimo in #1787
- Config file by @LoipesMas in #1119
- Configuration option to set theme to light/dark/auto by @mgax in #1917
- Wayland support
- IME support without pre-edit
Bug Fixes
- Fix download for Windows` link by @ErichDonGubler in #1834
- Remember windows size via pixel by @chomosuke in #1706
- Fix opening from Finder in macOS by @AThePeanut4 in #1832
- Fixes window position not being remembered on multi-monitor by @chomosuke in #1837
- Prevent wsl console window shown by @nazo6 in #1850
- Update swash to fix crash at startup by @last-partizan in #1887
- Disable srgb on Linux and macOS by @fredizzimo in #1885
- Improve error reporting for invalid UI events by @fredizzimo in #1876
- Update to winit 0.29.0-beta.0 by @Kethku in #1789
- This fixes a lot of long outstanding issues, for example:
- Wayland is now fully supported
- Focusing issues and keys getting stuck, especially when using tiling Window managers
- Launching issues
- Theming issues on Gnome in Wayland
- This fixes a lot of long outstanding issues, for example:
- Center the line by adding half of linespace to y_adjustment by @cshuaimin in #1915
- Simplify the use of the new winit keyboard API by @fredizzimo in #1899
- This fixes almost all keyboard related issues, but on macOS, there are a few critical issues remaining:
- Fix broken link - Change Arch repository to extra by @imNel in #1934
- Fix AppImage support and Dockerfile for testing by @fredizzimo in #1941
- Center the line by adding half of linespace to y_adjustment by @cshuaimin in #1915
Other changes
- Mutex is not needed; Unused THREAD_SENDERS by @juchiast in #1860
- Fix
no idle
behaviour by @LoipesMas in #1889 - fix(config): Don't show error when config is missing, instead just log it by @last-partizan in #1893
- Allows using
NEOVIDE_WSL
or config file to set wsl by @Ricky12Awesome in #1942 - chore: Extract window_wrapper and the update loop to their own modules by @fredizzimo in #1939
- fix: Fix deadkey sequences ending with space by @fredizzimo in #1930
New Contributors
- @ErichDonGubler made their first contribution in #1834
- @AThePeanut4 made their first contribution in #1832
- @juchiast made their first contribution in #1860
- @nazo6 made their first contribution in #1850
- @cshuaimin made their first contribution in #1915
- @imNel made their first contribution in #1934
- @Ricky12Awesome made their first contribution in #1942
Full Changelog: 0.10.4...0.11.0