4 ms·
Learning muscle memory for nonstandard mappings is a bad idea. I used "jk" as an escape for a long time. It's nicer than using esc, but no other program that ha
by qqqw 13y ago
Learning muscle memory for nonstandard mappings is a bad idea. I used "jk" as an escape for a long time. It's nicer than using esc, but no other program that has vim emulation supports mappings like that.
Also, you can do <num>@q (e.g. 4@q) anyways, and @@ to repeat a macro, so that isn't that useful of a remapping anyways.
- sillysaurus2 13y agoEh, I disagree. First, vim emulation is horrific -- absolutely horrific. With the exception of ViEmu, and possibly the new Emacs one (haven't had the chance to try it), there's not a single good Vim emulator. Second, @@ is two keystrokes, and it's incredibly annoying to type @@n@@n@@n@@n@@n@@n in order to invoke the macro 6 times. " n n n n n n" is much easier.
- lowboy 13y ago@@n.n.n.n.n.n. isn't much worse than the version with spaces. edit: but . doesn't work for macros, as was pointed out.
- sillysaurus2 13y ago. can't invoke a macro.
- lowboy 13y agoHuh, so it can't.
- qqqw 13y agoWhat do you mean by "n"? Moving to the next position in a search? You can structure a macro to end with going to the position of next edit. Then you can hit 100@@ or whatever and do all of the edits in one go.
- sillysaurus2 13y agoMost of the time you want to individually review each instance of what the macro is doing before invoking it, so 100@@ is rarely used. (At least by me.)
- belden 13y agoMacros in vim can call themselves; so if you want to make an edit across an entire file, something like: <esc>qqq //clear q macro qq //start recording q macro /foo // search for something 3clbar // do some edit @q // call q macro q //done recording @q //invoke q macro No need to guess how many times to call your macro.
- splawn 13y agoevil-mode is fantastic. (I think it might be the new one you haven't tried yet) combined with key-chord mode, it will handle the "jk mapped to esc" use case, I have mine mapped to "jj" (key-chord-define evil-insert-state-map "jj" 'evil-normal-state)
- justinmk 13y ago> there's not a single good Vim emulator vrapper (for eclipse) is on par with emacs evil, actually. https://github.com/vrapper/vrapper https://github.com/vrapper/vrapper
- jlgreco 13y ago> Learning muscle memory for nonstandard mappings is a bad idea. People, especially vi users (compared to Emacs users, who in my experience have few qualms about heavily customizing their editor), like to say that, but in my many years of experience I just can't say this is true in practice. I don't use coworkers' accounts so alien configurations never trip me up, and when I find myself working on a prod host that doesn't have my configuration, I just don't find myself tripping up in practice (if I had to guess, perhaps the absence of my custom color scheme in those cases may be flipping a 'go back to compat mode' switch in my head). I do not use any other programs that have "vim emulation". Tried that firefox 'total conversion mod' a while ago and hated it. Executing macros the regular way is what I do for all macros I want to be long-lived (@q can get overwritten a dozen of times or more an hour for me, so complex operations I want to keep around longer I store in other registers), but even @@ does not have the low mental barrier to entry and satisfying nature that "twock" on a nice loud keyboard has. (instead of [esc] for escape, I use [capslock] on windows and linux while on thinkpads, and [find](actually super) on linux on my chromebook. xmodmap/autohotkeys/xcape has my bases covered there.)