You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Fish Shell中转换export XMODIFIERS=@im=ibus的语法?

解决Fish Shell中设置XMODIFIERS=@im=ibus的问题

你之前的写法出错是因为误解了环境变量的赋值逻辑——Fish的变量名不允许包含@符号,而且根本不需要把@im拆成单独变量来处理。

正确的写法

直接把完整的字符串值赋值给XMODIFIERS环境变量即可:

set -x XMODIFIERS "@im=ibus"

为什么之前的写法失败?

你尝试的代码:

set -x @im ibus
set -x XMODIFIERS @im

Fish报错Variable name '@im' is not valid,是因为Fish的标识符(变量名)只能包含字母、数字和下划线,且不能以数字开头,@不属于合法字符范围。

更关键的是,Bash里的export XMODIFIERS=@im=ibus本质是直接将XMODIFIERS的值设为完整字符串@im=ibus,并不是把@im作为变量引用,所以在Fish里直接把这个完整字符串作为值赋值就可以,完全不需要拆分。

验证是否生效

执行完正确命令后,可以用以下方式检查环境变量是否设置成功:

echo $XMODIFIERS
# 或者
env | grep XMODIFIERS

如果输出@im=ibus就说明设置成功了。

内容的提问来源于stack exchange,提问作者Dhaval Shah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:57:58