vim中的语句文本对象

问题描述 投票:0回答:1

借助Vim 8的新终端功能:term,使用交互式控制台时不再需要tmux。使用sendtoterm插件将代码发送到Vim术语窗口时,我注意到我错过了Vim中的“语句文本对象”。我经常有这样的代码:

p = plot(xlims=(0,107), ylims=[0,107], 
         grid=false,
         label="", legend=true)
vline!([107], label="", color=:black, linestyle=:dot)

我只想执行第一个命令,而不是第二个。此外,第一条语句中有换行符。因此,在这种情况下,仅发送一行以及整个段落均无效,因此必须直观地选择语句并发送此选择。我想要的是一个语句文本对象,可以用tS调用它,并且只会发送:

p = plot(xlims=(0,107), ylims=[0,107], 
         grid=false,
         label="", legend=true)

已经有这样的文本对象,它适用于大多数编程语言,或者有更简单的方法吗?

vim read-eval-print-loop
1个回答
0
投票

我为自己的问题找到了一个充分的解决方案,该问题适用于以上示例,如果使用了match.it并且位于第一行,则也适用于“ for循环”:V%。因此,对于我的用例,将文本对象或直接将命令映射到此可视选择中是可行的。但更多精致的解决方案受到赞赏。

© www.soinside.com 2019 - 2024. All rights reserved.