有没有办法使用寄存器的动作?
Is there a way to use a motion with a register?
假设我的寄存器中有一个 5 "
,
我希望能够使用该寄存器的内容来移动 5 个字。一个例子
5w
会是
[some way to read the register]w
这可能吗?
无非:
:exec 'norm! '.@".'w'
这是
的作品
@x
returns x
寄存器的内容,所以在这种情况下 @"
returns "
寄存器的内容
- 正在生成包含
norm! <val of " reg>w
的字符串(.
是 VimL 中的串联运算符)
:norm!
将在正常模式下将给定的字符串作为操作执行(忽略任何用户映射,这是 !
所做的)
:exec
将执行给定的字符串,因为它是命令行模式命令
假设我的寄存器中有一个 5 "
,
我希望能够使用该寄存器的内容来移动 5 个字。一个例子
5w
会是
[some way to read the register]w
这可能吗?
无非:
:exec 'norm! '.@".'w'
这是
的作品@x
returnsx
寄存器的内容,所以在这种情况下@"
returns"
寄存器的内容- 正在生成包含
norm! <val of " reg>w
的字符串( :norm!
将在正常模式下将给定的字符串作为操作执行(忽略任何用户映射,这是!
所做的):exec
将执行给定的字符串,因为它是命令行模式命令
.
是 VimL 中的串联运算符)