微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将字符串从键盘布局转换为另一个?

如何解决如何将字符串从键盘布局转换为另一个?

有时我输入的输入语言错误;我希望能够以编程方式将键入错误的文本转换为正确的输入语言。我目前正在使用这种方法

##
export persian_chars="ضصثقفغعهخحجچشسیبلاتنمکگظطزرذدپو.ًٌٍَُِّْ][}{|ؤئيإأآة»«:؛كٓژٰ‌ٔء<>؟٬٫﷼٪×،)(ـ"
export en_chars="qwertyuiop[]asdfghjkl;'zxcvbnm,.QWERTYUIOP{}|ASDFGHJKL:\"ZXCVBNM<>?@#\$%^&()_"
##
function per2en() {
    gsed "y/$persian_chars/$en_chars/"
}

function en2per() {
    gsed "y/$en_chars/$persian_chars/"
}

但这似乎很脆弱,并且特定于我当前的键盘布局。还有更好的方法吗?

PS:一些示例:

❯ echo آهو ئفشزنخرثقبمخص\! | per2en                                                                                       
Hi,Stackoverflow!

❯ echo 'sghl& nkdh' | en2per                                                                                            
سلام، دنیا

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。