You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

咨询:在启用Vim绑定的Bash命令行中使用并保存Vim宏

在Bash的Vi模式中使用并保存宏

Bash启用set -o vi后的Vi模式是基于Readline库实现的轻量Vi模拟,不支持Vim的let命令,但可以通过Readline的bind命令来设置和保存宏,步骤如下:

1. 临时录制并使用宏(当前会话有效)

  • 按Esc进入Vi命令模式
  • 按q+寄存器名(比如q)开始录制宏
  • 执行操作:0(跳转到行首)→ y$(复制从当前位置到行尾的内容)→ dd(删除整行)
  • 按q停止录制
  • 之后在命令模式下按@q就能重复执行这个宏,按@@可以快速重复上次的宏

2. 永久保存宏(每次启动Bash都生效)

要让宏在每次打开终端都可用,需要把宏配置添加到你的Bash配置文件(比如~/.bashrc)中:

  • 打开~/.bashrc,添加以下内容:
    # 启用Vi绑定(如果还没配置的话)
    set -o vi
    # 为q寄存器设置宏:复制当前行内容并删除该行
    bind -m vi-command '\"q: 0y\$dd'
    
  • 保存后执行source ~/.bashrc让配置立即生效

关键说明

Bash的Vi模式和原生Vim是两个不同的实现,原生Vim的脚本语法(比如let @q = ...)在这里不适用,必须用Readline的bind命令来配置按键和宏。

内容的提问来源于stack exchange,提问作者armando

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 15:05:58