2

Why does my Vim requires double tapping ^ to go to the first character of the line instead of a single tap, and is there anything I can do to change it?

I'm on Windows 10 with a the Vim plugin 'vscodevim' in Visual Studio Code. I also have a standalone (not a plugin for vscode) Vim 9.0 which I tried it on in case it's a vscode problem, but this one has the same problem.

The vimrc that I use doesn't contain any remappings involving ^.

I tried googling, and I can find a lot of info, but nothing about double tapping.

Visual Studio Code version info:

Version: 1.58.2 (user setup)
Commit: c3f126316369cd610563c75b1b1725e0679adfb3
Date: 2021-07-14T22:10:15.214Z
Electron: 12.0.13
Chrome: 89.0.4389.128
Node.js: 14.16.0
V8: 8.9.255.25-electron.0
OS: Windows_NT x64 10.0.19045
4
  • 2
    Welcome to Vim :-) Could you tell us what is your keyboard layout? I particular what is the result of ^o (^o or ô)? Commented Feb 21 at 2:49
  • FYI, the tag [original-vim] is rarely used and usually to denote differences between different Vim implementations. Anyway, did Vivian's answer help you find a solution? If not, please provide more information as to what you expect. Thank you.
    – Friedrich
    Commented Feb 21 at 16:08
  • 1
    @VivianDeSmedt, My layout is United States-International, which after what I've learned now, should be called US with dead keys. Your solution with _ also works, but getting rid of dead keys altogether also solves issues with the other Vim commands like the backtick. Lucky I'm not a Frenchman so I can live without accent graves and accent circumflexes. Commented Feb 21 at 19:55
  • 1
    @Friedrich, done Commented Feb 22 at 10:41

2 Answers 2

2

I suspect that in your keyboard layout (like in mine ;-)) the ^ key is an 'dead' key, it produces a character only in combination of the next one ^o gives ô, ^^ gives ^.

The solution I have is to use: _.

10
  • 2
    OP's user name suggests they're using QWERTY btw :-)
    – Friedrich
    Commented Feb 21 at 7:05
  • 3
    Or that's what they would want you to believe.
    – romainl
    Commented Feb 21 at 9:50
  • 3
    FWIW, the exact name of this is "dead key".
    – romainl
    Commented Feb 21 at 9:52
  • 1
    Wikipedia's example for a dead key is the grave accent (use the English pronunciation!). Someone seems to have a dark sense of humor...
    – Friedrich
    Commented Feb 21 at 10:48
  • 1
    @romainl, thanks for the 'dead key' I knew I was using the wrong term but I couldn't find out the good one (I'm a fish). Commented Feb 21 at 10:48
1

My own solution (with credits to Vivian):

It appears that ^ is a dead key, used to produce accented characters (e.g. for French). Apparently, my Windows installation came with the default keyboard:

English (United Kingdom) - United States-International

Which to get rid of the dead keys, I had to change to:

English (United Kingdom) - US

With what I know now, the former setting should actually be called

English (United Kingdom) - US with dead keys

So in the end it wasn't a problem specific to Vim, but I still think it's valuable to keep the question up here, as I can't imagine I'm the last Vim user running into this issue.

1
  • Thanks for that! I learned about the United States-International layout that I didn't knew before :-) Commented Feb 22 at 11:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.