vim中两个等号(==#)后的哈希(#)符号是什么意思

puk*_*puk 3 vim

我在此处输入链接描述时遇到了以下代码,它的作用是将视觉选择中的单词从大写切换到小写,然后切换到标题大小写。我正在尝试将此功能更改为将单词从 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)

NPE*_*NPE 8

==#是“始终区分大小写”的比较运算符(完全==取决于:set ignorecase)。

有关更多信息,请参阅Vimscript 备忘单

  • 除此之外,在 Vim 中使用 `:help &lt;我好奇的事情&gt;` 的成功率非常高;-) 输入 `:help ==#` 并没有让人失望 :-) (3认同)