linux设置steam为中文,[Steam聊天工具]Linux下,Steam中文输入的治标方案.

2020-04-14

更新下现状,linux的steam上还是不能直接输入中文。

脚本后面又做了小改动。这个工具要配合着系统的快捷键来使用更方便。给它绑定一个全局快捷键,以方便在需要的时候呼出它来。set -e

which zenity &>/dev/null || (echo '错误:zenity 程序未安装。' >&2; exit 2)

which xdotool &>/dev/null || (echo '错误:xdotool 程序未安装。' >&2; zenity --error --text '错误:xdotool 程序未安装' --title 'steam linux中文聊天辅助工具'; exit 2)

_chat_input="$(zenity --entry --text '在系统内绑定一个全局快捷键给它。\n请在此输入聊天内容(Esc退出):' --title 'steam linux中文聊天辅助工具')"

sleep 0.7

echo [$(date '+%Y/%m/%d %H:%M:%S')] $_chat_input >> _history

sleep 0.7

# xdotool key Return

xdotool type --delay 150 "$_chat_input" # 若输入间隔太短,可能造成少字的情况,这种情况下可以调整下delay的值,时间单位是毫秒。

# xdotool key Return

以下是原日志

Linux下的Steam无法切换中文输入法,于是只能靠复制粘贴来聊天. 但这样的方式需要切出去打字复制,再切进游戏内粘贴,碰上不能粘贴的游戏,更是没辙.

我是发愁已久了,这两天又是不死心,想看看网上有没有出现新的方法可以使用,这一找,还真找到了个辅助方法.

minecraft-chat-helper, 这是给mc用的中文聊天工具,经测试可以用在steam上聊天.

传送门:https://github.com/m13253/minecraft-chat-helper

我对这个工具进行了些许修改:

1.原先需要在菜单界面再用工具打字,改为直接在正常界面下呼出工具打字.

2.原工具发送一次即退出.现在加了个死循环,除非按ESC键,或输入'qqq'退出

传送门:https://git.coding.net/anye7up/steam-chat-helper.git

整个代码很简单,可以自己新建个.sh后缀的文件,里面代码如下:set -e

which zenity &>/dev/null || (echo '错误:zenity 程序未安装。' >&2; exit 2)

which xdotool &>/dev/null || (echo '错误:xdotool 程序未安装。' >&2; zenity --error --text '错误:xdotool 程序未安装' --title 'steam linux中文聊天辅助工具'; exit 2)

while :

do

_mcchat_input="$(zenity --entry --text '保持游戏运行,并切换到此工具。\n请在此输入聊天内容(输入'qqq'退出工具):' --title 'steam linux中文聊天辅助工具')"

test "$_mcchat_input" == 'qqq' && exit 0

sleep 0.25

xdotool key Return

xdotool type --delay 150 "$_mcchat_input"

xdotool key Return

done

欢迎大家分享更好的解决方案,最好是能在游戏内直接切换输入法的那种.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值