0

I'm trying to map C-S-[ and C-S-] respectively to :tabprev and tabnext, but when I try that then I get "no lines in buffer".

A mapping like C-S-tab works. I looked through :nmap and didn't find an existing mapping. What am I missing?

Ovesh
  • 113
  • 3

1 Answers1

0

Thanks to the link in the comment by @statox♦ I was able to figure this out. This answer included a link to this question where the accepted answer explains that intercepting a <C-f> is equivalent to intercepting a <C-F> (technically <C-S-f>) in gvim, because:

Vim reads characters from the terminal, which sends ^F (ASCII code 0x06) for both Ctrl+f and Ctrl+Shift+f; Vim has no way of knowing whether you pressed the Shift key.

The solution is to just map C-[ and C-], which works well for me.

Ovesh
  • 113
  • 3
  • 4
    Be careful though, <c-[> is an equivalent of <esc> and <c-]> is "Jump to the definition of the keyword under the cursor". You might want to use something else, e.g <leader>]. – Biggybi Jul 20 '20 at 09:57