我喜欢在交互模式下使用 bc 作为计算器。但是,它只接受句点 (.) 作为小数分隔符,但我使用的是德语键盘布局,因此数字键盘上只有逗号 (,)。当单手在数字键盘上使用 bc 时,这非常不方便,因为输入小数时我必须移动手并寻找句点键。
所以我正在寻找一种仅在数字键盘上使用 bc 的简单方法。
我现在看到的一些可能性:
- 将 bc 的键盘布局更改为英语
- 输入时将逗号替换为句点
- 更改 bc 中的小数点分隔符
如有任何想法我将不胜感激。
答案1
这是我的替代 bc 的别名:
sh -c "sed -u 's/,/./g' | bc -l"
我的窗口管理器下有这个快捷方式:
urxvt -e sh -c "sed -u 's/,/./g' | bc -l"
祝你好运!
答案2
我的变体不会破坏 bc 中的所有 readline 函数:
alias bcl='xmodmap -e "keycode 91 mod2 = KP_Delete period"; bc -l; xmodmap -e "keycode 91 mod2 = KP_Delete comma"'
这会在启动 bc 之前将键盘的 Delete/Comma 键重新映射到 Delete/Period,并在 bc 退出后将其映射回逗号。