我在此处输入链接描述时遇到了以下代码,它的作用是将视觉选择中的单词从大写切换到小写,然后切换到标题大小写。我正在尝试将此功能更改为将单词从 Title Case 切换为小写,然后切换为 UPPER CASE。问题是我不知道==#这里是什么意思。有人可以提供一个关于==#是什么的答案。
function! TwiddleCase(str)
if a:str ==# toupper(a:str)
let result = tolower(a:str)
elseif a:str ==# tolower(a:str)
let result = substitute(a:str,'\(\<\w\+\>\)', '\u\1', 'g')
else
let result = toupper(a:str)
endif
return result
endfunction
vnoremap ~ y:call setreg('', TwiddleCase(@"), getregtype(''))<CR>gv""Pgv
Run Code Online (Sandbox Code Playgroud)
==#是“始终区分大小写”的比较运算符(完全==取决于:set ignorecase)。
有关更多信息,请参阅Vimscript 备忘单。