gpt4 book ai didi

vim - 我如何CamelCase启用Vim搜索

转载 作者:行者123 更新时间:2023-12-03 12:57:13 26 4
gpt4 key购买 nike

当我连续输入大写字母时,是否有vim插件,脚本或函数可以扩展vim搜索以匹配驼峰式单词?

这是一个例子,以澄清:

可以说我正在寻找WordInQuestion

我希望能够只键入/wiq来找到它。

另外,如果我可以通过键入getWordInQuestion找到/gwiq,那就太好了,这意味着我要搜索的单词的第一个字母可能是小写字母。

最佳答案

所描述的功能可以通过Vim脚本轻松实现。
让我们考虑以下自定义映射。

nnoremap <expr> <leader>/ SearchCamelCase('/')
nnoremap <expr> <leader>? SearchCamelCase('?')
function! SearchCamelCase(dir)
call inputsave()
let ab = input(a:dir)
call inputrestore()
let l = filter(split(toupper(ab), '\zs'), 'v:val =~ "\\w"')
if len(l) > 0
let l[0] = '[' . l[0] . tolower(l[0]) . ']'
end
let @/ = '\C\<' . join(map(l, 'v:val . "[0-9a-z_]*"'), '') . '\>'
return a:dir . "\r"
endfunction

关于vim - 我如何CamelCase启用Vim搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8675613/

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