How can I toggle smartcase in Vim?

前端 未结 2 1258
再見小時候
再見小時候 2021-02-07 11:10

I love smartcase, but there are times that I\'d like to turn it off and search for just lowercase. Is there a builtin that will toggle smartcase, or do I need to w

相关标签:
2条回答
  • 2021-02-07 11:50

    If you want to toggle if off completely, just do

    :set nosmartcase
    

    But if you want to toggle the mode of one-two searches, use special symbols in your search patterns:

    • \c makes the pattern ignore case, for example: /iGnOrEcAsE\c (matches "ignorecase");
    • \C makes the pattern match case, for example: /matchcase\C (doesn't march "MatchCase").
    0 讨论(0)
  • 2021-02-07 11:52

    If you add a bang after the option name in the set command, like this:

    :set smartcase!
    

    ...it will toggle the option. You can create a key mapping to do this:

    :map \s :set smartcase!<CR>
    

    <CR> stands for carriage return. It represents the Return key.

    Now just press \s and it toggles.

    I usually write the mapping to also show in the bottom line whether the option is on or off, like this:

    :map \s :set smartcase!<CR>:set smartcase?<CR>
    
    0 讨论(0)
提交回复
热议问题