Termux自定义键盘
转载自:https://wiki.termux.com/wiki/Touch_Keyboard
前言
使用CLI终端需要使用 Alt、Ctrl、Esc 等键。Termux 触摸键盘不包括一个。为此,Termux 使用降低音量按钮来模拟 Ctrl 键。例如,按下触摸键盘会发送与按下硬件键盘 音量减+L
相同的输入。Ctrl+L
将 Ctrl
与键组合使用的结果取决于使用的程序,但对于许多命令行工具,以下快捷方式有效:
- Ctrl+A → 将光标移动到行首
- Ctrl+C → 中止(发送 SIGINT 到)当前进程
- Ctrl+D → 退出终端会话
- Ctrl+E → 将光标移动到行尾
- Ctrl+K → 从光标处删除到行尾
- Ctrl+U → 从光标处删除到行首
- Ctrl+L → 清除终端
- Ctrl+Z → 暂停(发送 SIGTSTP 到)当前进程
- Ctrl+W → 清除单词前的提示(单词是空格后的一组字符)
- Ctrl+alt+C → 打开新会话(仅适用于 Hacker's Keyboard)
音量加键也可用作产生特定输入的特殊键:
- 音量加+E → 退出键
- 音量加+T → Tab 键
- 音量加+1 → F1(以及音量加+2 → F2 等)
- 音量加+0 → F10
- 音量上+B → Alt+B,使用readline时回一个字
- 音量上+F → Alt+F,使用readline时前进一个字
- 音量加X → Alt+X
- 音量加+W → 上箭头键
- 音量加+A → 左箭头键
- 音量加+S → 下箭头键
- 音量加+D → 右箭头键
- 音量加+L → | (管道字符)
- 音量加+H → ~(波浪号)
- 音量加+U → _(下划线)
- 音量加+P → 上一页
- 音量加+N → 向下翻页
- 音量加+。→ Ctrl+\ (SIGQUIT)
- 音量加+V → 显示音量控制
- 音量加+Q → 显示额外按键视图
- 音量加+K → 切换额外按键视图的另一种变体
额外的键盘
Termux 也有一个额外的键视图,允许你扩展你当前的键盘。要启用额外的键视图,您必须长按左侧抽屉菜单中的键盘按钮。您也可以按音量加+Q 或音量加+K。
在 Termux v0.66 之后,额外的键行可以通过文件~/.termux/termux.properties
进行配置。如果此文件不存在,您将需要创建它。
编辑 Termux.properties
文件后,您需要通过执行命令termux-reload-settings
重新加载 Termux 配置。
设置 extra-keys-style
可用于选择用于键的符号集。有效选项是“default”、“arrows-only”、“arrows-all”、“all”和“none”。
extra-keys-style = default
启用 2 行(在 Termux v0.65 中)额外键的示例配置:
extra-keys = [['ESC','/','-','HOME','UP','END','PGUP'],['TAB','CTRL','ALT','LEFT','DOWN','RIGHT','PGDN']]
如果需要,extra-keys
定义本身也可以分布在多行中,通过“反斜杠转义”每行末尾的换行符,例子:
extra-keys = [\
['ESC','|','/','HOME','UP','END','PGUP','DEL'],\
['TAB','CTRL', 'ALT','LEFT','DOWN','RIGHT','PGDN','BKSP'] \
]
支持的键
每个键“条目”可以是字符串(例如'|'、'/'或'=')或下面列出的值之一。这些值在 ExtraKeysView.java
中定义,值列表(不包括可能的同义词)为:
- CTRL ("特殊键")
- ALT ("特殊键")
- FN ("特殊键")
- SPACE
- ESC
- TAB
- HOME
- END
- PGUP
- PGDN
- INS
- DEL
- BKSP
- UP
- LEFT
- RIGHT
- DOWN
- ENTER
- BACKSLASH
- QUOTE
- APOSTROPHE
- F1~F12
- KEYBOARD (隐藏键盘)
- DRAWER (打开应用程序抽屉)
上面列出的三个“特殊键”中的每一个在额外键定义中最多只能列出一次,即不能有多个 CTRL
键。拥有多个“特殊键”实例将导致这些键无法正常工作的错误。
关于反斜杠的说明:此字符具有特殊含义,您不应直接使用它来定义键。请改用BACKSLASH
,否则请正确转义它 \\\\
。
高级额外键配置
在 Termux v0.95 中,额外的键配置通过可配置的弹出窗口进行了扩展。可以通过向上滑动相应的键来触发弹出键。
这是使用弹出窗口定义键的语法:
{key: KEY, popup: POPUP_KEY}
这是更高级密钥的语法:
{key: KEY, popup: {macro: 'KEY COMBINATION', display: 'Key combo'}}
例子:
extra-keys = [[ \
{key: ESC, popup: {macro: "CTRL f d", display: "tmux exit"}}, \
{key: CTRL, popup: {macro: "CTRL f BKSP", display: "tmux ←"}}, \
{key: ALT, popup: {macro: "CTRL f TAB", display: "tmux →"}}, \
{key: TAB, popup: {macro: "ALT a", display: A-a}}, \
{key: LEFT, popup: HOME}, \
{key: DOWN, popup: PGDN}, \
{key: UP, popup: PGUP}, \
{key: RIGHT, popup: END}, \
{macro: "ALT j", display: A-j, popup: {macro: "ALT g", display: A-g}}, \
{key: KEYBOARD, popup: {macro: "CTRL d", display: exit}} \
]]
文本输入视图
终端模拟器通常不支持触摸键盘的高级功能,如自动更正、预测和滑动输入。为了解决这个问题,Termux 有一个文本输入视图。在其中输入的文本将被粘贴到终端。因为它是原生的 Android 文本输入视图,所以所有的触摸键盘功能都可以使用。要访问文本输入视图,您必须向左滑动额外的键视图。
Pay by AliPay