Zsh 快捷键绑定 (keybinding) =========================== 查看当前绑定 ------------- 使用 ``bindkey`` 命令即可 :: $ bindkey 快捷键 ------- +--------------------+------------------+ | 功能 | 快捷键 | +====================+==================+ | 向前移动 | ctrl-f/right | +--------------------+------------------+ | 向后移动 | ctrl-b/left | +--------------------+------------------+ | 按单词向前移动 | esc-f/ctrl-right | +--------------------+------------------+ | 按单词向后移动 | esc-b/ctrl-left | +--------------------+------------------+ | 删除上一个单词 | ctrl-w | +--------------------+------------------+ | 清屏 | ctrl-l | +--------------------+------------------+ | 撤销 | ctrl-_/ctrl-/ | +--------------------+------------------+ | 上一行最后一个参数 | esc-./!$ | +--------------------+------------------+ | 将本行加引号 | alt-' | +--------------------+------------------+ | 查询命令 | alt-shift-? | +--------------------+------------------+ | 剪切光标前内容 | ctrl-u | +--------------------+------------------+ | 剪切光标后内容 | ctrl-k | +--------------------+------------------+ | 粘贴剪切的内容 | ctrl-y | +--------------------+------------------+ | 反向搜索 | ctrl-r | +--------------------+------------------+ | 正向搜索 | ctrl-s | +--------------------+------------------+ 快捷键设置 ---------- 设置文件位置 ^^^^^^^^^^^^ 绑定的设置可以写入 ``.zshrc`` 文件中。如果使用 ``oh-my-zsh`` ,配置还可以写入 ``~/.oh-my-zsh/lib/key-bindings.zsh`` 中。 转换序列 ^^^^^^^^ 在使用 ``bindkey`` 命令时,一帮第一个参数使用对应快捷键的 `CSI 序列`_ ,如果想知道某种快捷组合键的 CSI 序列,可以有如下两种方法: 1. 先按 ``Ctrl-V`` 然后再按组合键,如 ``Ctrl-A`` 2. 输入 ``cat > /dev/null`` ,之后输入组合键 设置命令 ^^^^^^^^ :: # 前后移动一个单词 bindkey '^[^[[C' emacs-forward-word # Alt-Right bindkey '^[^[[D' emacs-backward-word # Alt-Left # or bindkey '^[Oc' emacs-forward-word # Ctrl-Right bindkey '^[Od' emacs-backward-word # Ctrl-Left 参考 ---- 1. `zsh pony `_ 2. `zsh wiki `_ 3. `CSI 转换序列 `_ .. _CSI 序列: http://en.wikipedia.org/wiki/ANSI_escape_code