gpt4 book ai didi

vim - 如何将可视范围传递给没有数字或使用 :command in vim? 的函数

转载 作者:行者123 更新时间:2023-12-04 09:47:34 24 4
gpt4 key购买 nike

如何从脚本和 将视觉选择传递给函数不是 命令行/映射。我想知道这样的事情是否可能?或者如果有一个函数可以获取范围?

我想要的是:

:call LowerToUpper('<,'>)
:call LowerToUpper(GetVisualRange())

不是这个
:call LowerToUpper(1,5)
command! -range Edit call LowerToUpper(<line1>,<line2>)
:'<,'>LowerToUpper

下面是函数示例:
function! LowerToUpper(first,last) abort
for lineno in range(a:first,a:last)
let line = getline(lineno)
let newLine= substitute(line, '\v(\w)','\U\1','g')
call setline(lineno,newLine)
endfor
endfunction

解决方案可能是制作一个返回视觉选择 GetVisualSelection() 的函数。

最佳答案

:call LowerToUpper('<,'>)



你非常非常接近。使用 line() 获取标记线:
:call LowerToUpper(line("'<"), line("'>"))

关于vim - 如何将可视范围传递给没有数字或使用 :command in vim? 的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62075745/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com