UtkarshPramodGupta
UtkarshPramodGupta

Reputation: 8162

How to map mac command key in vim?

I want to map my NERDTREE toggle to Cmd + space but I don't know what character represents Mac's command key in .vimrc. I searched and found that we can use 'D' to represent cmd key from this link, but it doesn't work. BTW I am using vim from the terminal not MacVim.

Upvotes: 40

Views: 46577

Answers (4)

Guillermo Siliceo Trueba
Guillermo Siliceo Trueba

Reputation: 4629

An example in iTerm 2 of mapping CMD+p to vim's Meta P to call :CtrlP command. This has the advantage that Meta is usually not used for anything so it won't clash with existing commands.

iTerm key config for CMD+p

And on .vimrc you'd add

map <M-p> :CtrlP<CR>

Upvotes: 9

Eduard Kolosovskyi
Eduard Kolosovskyi

Reputation: 1584

With IdeaVim you can use: <M-*>, for example <M-c> means Cmd + c

Upvotes: 5

Goblinhack
Goblinhack

Reputation: 3096

iTerm2 can do this - here I mapped command enter to :wq

enter image description here

Upvotes: 36

halfelf
halfelf

Reputation: 10107

It is true that <D- maps to command key. You can see it by :help <D-.

However, this will not work in your vim+terminal. It only works in MacVim. See here

The best shot for your intention is to map the combination as hex code, sending to terminal.

Still I will not recommend doing this. command is too important for mac os environment. For example, anyone uses an input method can't map it to command+space.\

Please consider using the usual method here: <leader>.

Upvotes: 41

Related Questions