The IdeaVim plugin in pycharm doesn't support continuous scroll as nor Vim or MacVim does. When you press "j" to move or any other key to move, it acts just once, instead of scrolling continuously when long pressed. Any suggestions ?
Asked
Active
Viewed 4,104 times
17
-
Just as a heads-up: IdeaVim [is a plugin.](http://plugins.jetbrains.com/plugin/164) – Makoto Feb 22 '15 at 17:51
-
My guess is that your operating system's key repeating (typematic delay) is somehow messed up. At least for me (on Linux) Vim doesn't handle it by itself but scrolling works because of the key repeating. – Sevanteri Feb 23 '15 at 08:24
1 Answers
23
Yes, it's an OS problem; key repeat works fine in IdeaVIM if the OS is configured to support it.
There's a thread discussing a change in Mac OS X Lion (10.7) that disabled key repeat, along with workarounds to turn it back on. You can either re-enable key repeat globally or per-application; the thread contains commands for both.
To set it globally:
defaults write -g ApplePressAndHoldEnabled -bool false
To set it for IntelliJ Community Edition:
defaults write com.jetbrains.intellij.ce ApplePressAndHoldEnabled -bool false
IntelliJ Ultimate Edition:
defaults write com.jetbrains.intellij ApplePressAndHoldEnabled -bool false
AppCode:
defaults write com.jetbrains.appcode ApplePressAndHoldEnabled -bool false
PhPStorm:
defaults write com.jetbrains.phpstorm ApplePressAndHoldEnabled -bool false
Android Studio:
defaults write com.google.android.studio ApplePressAndHoldEnabled -bool false
PyCharm:
defaults write com.jetbrains.pycharm ApplePressAndHoldEnabled -bool false
-
1But if it is that , than it should also not work in MacVim, which i regularly use and supports continuous press on the same system (macbook). – curiousMonkey Feb 24 '15 at 02:14
-
Yes, fair enough. I also use MacVIM, and I don't remember having to use this workaround there. Maybe there is something in an application's Info.plist which can accomplish this same setting, which MacVIM has but IntelliJ does not? Just guessing... – jbyler Feb 24 '15 at 04:56
-
@jbyler is there way to set `ApplePressAndHoldEnabled -bool false` for all jetbrains products, but not global in one command? – skywinder Feb 25 '15 at 07:18
-
@skywinder Not that I know of. You can run `man defaults` to read up on the Mac OS X user defaults system. It looks like a domain generally corresponds to a single application. There is a global domain which is shared among all applications, but I think that's the only shared state available. – jbyler Feb 25 '15 at 21:47
-
This doesn't appear to be working in the latest Android Studio under Yosemite. – Thomas Ingham Sep 21 '15 at 18:17
-
@ThomasIngham Maybe the android studio defaults domain has changed? You can try the "global" version if the app-specific version isn't working for you. I don't have Android Studio installed so I can't easily test that one, but key repeat is still working fine for me in IntelliJ IDEA Ultimate Edition on Yosemite as of 2015-10-12. – jbyler Oct 12 '15 at 19:40
-
@jbyler Do you have the setting turned off globally on your Mac? – Thomas Ingham Oct 12 '15 at 23:33
-
@ThomasIngham Yes, it looks like I do have it turned off globally on my Mac. For some reason using `defaults read-type -g ApplePressAndHoldEnabled` shows the type as `string`, when I think it should be a `boolean`, but the value is 0, which matches the value shown for other "-bool FALSE" values. – jbyler Oct 13 '15 at 00:20
-
Invoking `defaults write com.jetbrains.intellij.ce ApplePressAndHoldEnabled -bool false ` has no effect in IntelliJ IDEA CE 14.1.5, Mac OS 10.12.3 and IdeaVim 0.41. After setting the variable, then closing and opening IntelliJ IDEA, holding down the `l` key still shows a dialogue with a blue `ł` character instead of continuously moving the cursor to the right. Only the global setting works. – Neil Mar 09 '17 at 15:13
-
Same problem for RubyMine, only the global setting works. I see a `com.jetbrains.rubymine.plist` file in `~/Library/Preferences` but attempting to set the key in it makes no difference. – Lane Rettig Jun 08 '17 at 09:53
-
2For those still experiencing this problem, a step that seemed to be required to make this work on an M1 mac was to run the global change above and then to uninstall and reinstall the vim plugin – reportingmonkey Oct 11 '22 at 08:35