alacritty无法输入中文以及标题栏问题

Alacritty在Ubuntu wayland下无法切换到中文输入法,标题题栏也显示异常,可通过配置 env WINIT_UNIX_BACKEND=x11 环境变量解决,Alacritty依赖Winit,Winit是一个rust窗口处理库,默认使用Wayland后端,这么设置的意思是切换到Xwayland,不影响其它软件,如下所示,启动的时候添加环境变量。

➜  applications cat Alacritty.desktop
[Desktop Entry]
Type=Application
TryExec=alacritty
Exec=env WINIT_UNIX_BACKEND=x11 alacritty
Icon=org.gnome.Terminal
Terminal=false
Categories=System;TerminalEmulator;

Name=Alacritty
GenericName=Terminal
Comment=A fast, cross-platform, OpenGL terminal emulator
StartupWMClass=Alacritty
Actions=New;

X-Desktop-File-Install-Version=0.26

[Desktop Action New]
Name=New Terminal
Exec=env WINIT_UNIX_BACKEND=x11 alacritty
➜  applications pwd
/usr/share/applications

这个环境变量有2个合法值x11和wayland,解释如下:

/// - **Linux:** Backend type can be controlled using an environment variable
///   `WINIT_UNIX_BACKEND`. Legal values are `x11` and `wayland`.
///   If it is not set, winit will try to connect to a Wayland connection, and if that fails,
///   will fall back on X11. If this variable is set with any other value, winit will panic.

有人可能会问,Wayland下就不可以吗?抱歉,目前还真的不行,情况看这个issue,Gnome的世界是复杂的。

更改后即可输入中文,标题栏也美观了些,效果如下图所示,标号2的标题栏的确非常原始:

Alacritty title bar

2023-3-22更新:

拉取最新master分支,编译安装最新版本,标题和中文输入的问题都已修复。

1➜  cargo build --release --no-default-features --features=wayland
2➜  alacritty -V
3alacritty 0.13.0-dev (4b91a1db)

有兴趣的可以直接使用这个版本。

最后修改于: Monday, August 28, 2023

相关文章:

翻译: