## 简介

### "输入文本或按键" 的功能有啥用 ?

1. 重映射按键, 比如用 3 + H/J/K/L 来输入 0/1/2/3
2. 重映射不好按的组合键, 比如用 Capslock+X 来触发 Alt+F4
3. 输入成对符号并把光标移动到中间, 比如「 ... 」(...)
4. 常用文本缩写, 比如可以让 yx 等于 youxiang@mail.com

## 输入组合键

一些系统自带的快捷键并不是很好按, 比如 Win+Left、Alt+F4、Ctrl+BackSpace
如果用 `Capslock+X` 触发 `Alt+F4`, 就能让这些系统自带的快捷键更加快捷

举个例子, 你想用 Capslock+T 触发 Win+Left, 那么可以在下面的输入框填 `#{left}`:

其中 `#` 表示 Win 键、`{left}` 表示左方向键, 另外键盘左下角的四个键都有对应的特殊符号:

- `^` 表示 Ctrl 键
- `#` 表示 Win 键
- `!` 表示 Alt 键
- `+` 表示 Shift 键

### 输入组合键的例子

代码 | 表示的组合键
--- | ---
^c | Ctrl + C
#e | Win + E
^!c | Ctrl + Alt + C
+!c | Shift + Alt + C
!{f4} | Alt + F4 (这里键名 f4 不止一个字符
^{end} | Ctrl + End (所以要用大括号 {} 括起来

## 输入文本

### 一个例子

### 上述例子的解释

(1) `abc` 表示依次输入 a、b、c 三个键

(2) `{text}abc` 表示输入 abc 这样一串文本, 其中 `{text}` 前缀表示输入文本而不是按键, 这能避免中文输入法的影响

(3) `{left 2}` 表示按两次左方向键, 它等价于 `{left}{left}`

## 特殊按键列表

(1) 下表中列出了可以发送的特殊按键 (键名不区分大小写):

(2) 更多特殊按键可以参考 AutoHotkey 文档

按键代码 | 表示的按键
--- | ---
{F1} - {F24} | 功能键. 例如: {F12} 表示 F12
{Enter} | Enter (回车键)
{Space} | Space (空格键)
{BS} | Backspace (退格键)
{Del} | Delete (删除键)
{Ins} | Insert (插入键)
{AppsKey} | Menu (右键菜单)
{Up}、{Down}、{Left}、{Right} | ↑↓←→ (上下左右方向键)
{PrintScreen} | PrtScr (屏幕截图到剪切板)
{{}、{}} | {、}
{!}、{#}、{+}、{^} | !、#、+、^
{Esc}、{Tab}、{Home}、{End}、{PgUp}、{PgDn} | Esc、Tab、Home、End、PgUp、PgDn
``,` (因为逗号是特殊符号, 需要使用 ` 转义一下 | ,
``;` (因为分号是特殊符号, 需要使用 ` 转义一下 | ;
```` (因为反引号是特殊符号, 需要使用 ` 转义一下 | `
``%` (因为百分号是特殊符号, 需要使用 ` 转义一下 | %

## 其他细节

个别情况下会有兼容问题, 比如 WPS Office 无法识别 MyKeymap 发送的按键.

总之甭管三七二十一, 遇到问题先尝试用 sendevent 模式发送按键, 从写法①改成写法②:

①要输入的按键或文本: `{left}`
②要输入的按键或文本: `sendevent, {left}`

也就是在前面加上 `sendevent,` 如果还是不行就联系作者反馈问题.