I found ViEmu, which allows you to use Vim key bindings in Visual Studio and certain Office applications. Does anyone know of similar software for using Vim key bindings in Microsoft Onenote? Free or Open Source is a plus, but any options would be appreciated.

8 Answers 8


You should be able to do with AutoIt (or possibly AutoHotkey) scripting, but I could not find anything that has already been written.


Vim-Keybindings-For-Onenote brings the power of VI to onenote via an AutoHotkey plugin.

The plugin has many of the common key bindings, including the folding commands to help manage OneNote lists.

Some advanced key bindings (e.g. 5dfa) are not implemented, but if there are keybindings you'd like added, the author (that's me), will help as he can.

  • Thx, its not that good, but still a lot better than no Vim keybindings :D
    – Emile 81
    Commented Jul 19, 2016 at 14:17

I do know the shortcuts for OneNote, but you don't understand the level of data processing, the volume of content/text processing that even a newbie VIM user outpaces... you.

Not every application interface can or should support a VIM-style interface

Although this is true, the users that made comments pointing out this obvious fact are totally missing the point. The point that they are missing is that there is a level of productivity and efficacy that information workers achieve when they can keep their hands on the keyboard constantly.

Consider a developer; fundamentally they operate within a text editor as source code is created or maintained. Maybe a few emails are written too. Hopefully, ample documentation for the codebase is also created and maintained. Believe it or not, the time that it takes to move a hand from the keyboard to the mouse adds up to be significant over the course of a day.

Sure, GUI applications have shortcuts too. You're still missing the point. VIM's interface provides complex and flexible functionality while requiring the minimal amount of keystrokes.

OneNote's disgustingly obese interface and running process profile aside; M$ is generally pretty good about having standard/consistent shortcuts across all apps. Consistency is important and so give Bill his due credit there, but consider this: what is/are the keyboard keystroke(s) required to repeat the last atomic editing action in OneNote or Word? The minimum is one 3-key combination (highlight last word) followed by two 2-key combinations (Copy then paste).

For example:

  • Task: modify the word "int" to "void" for the beginning of several functions.
  • Given: Each line to be modified has the form \t\tint someFunction(void);
  • Given: You have just replace "int" with "void" for the first function
  • Given: You need to repeat this action 5 more times.

*Assume: the word being replaced is highlighted (i.e. selected as a whole), then "v-o-i-d" is typed, and then...

1) Ctrl+Shift+ to select the last inserted word 2) Ctrl+C *to copy the word; 3) We'll ignore keystrokes to move to the next position, for simplicity, putting the cursor in front of the "i" character in the word being replaced. 4) Ctrl+Shift+ to select the next word to be replaced 5) Ctrl+V to overwrite the selected word with "static" 6) Repeat steps 3-4 for all of the required modifications.

To accomplish the same task in VIM

*Assume: the word being replaced is selected as a whole (via visual mode or the "cw" sequence), then "v-o-i-d" is typed, and then...

1) We'll ignore keystrokes to move into the next position putting the cursor on the "i", the first character, in the word being replaced. 2) "." *to duplicate the last edit action, which was "v-o-i-d" 3) Repeat steps 1 & 2

When you are spending 8 to 10 hours in a text editor each day the VIM style interface adds up considerably to enhance productivity. That was a contrived example above, but you should realize that switching between files, viewing two files at once in the same GUI or shell, saving changes, and exiting the editor back to a terminal prompt (or back to the top-level app if not using a terminal)... all of these actions are done with similar minimalistic and simple key combinations.

To Save and Quit:

VIM: 1) "wq" 2)

OneNote: 1) Alt+f 2) s, 3) Alt+f 4) x

Oh, I'm not done

What do you mean you can define a macro or complex series of steps, bind it to a key, and then execute that complex series of steps repeatedly (e.g. A VIM macro like "10 @i" would execute the macro bound/identified by the "i" key 10 times in a row). That can be done 100, 1000, a 100,000,000 times without any trouble at all.



Not a very helpful answer, but seriously now people - not every application has a Vim oriented key bindings. They are a different app.

If it helps, here is the list of Onenote shortcuts

  • 1
    +1 for this answer. Even if I really enjoy vim but somehow, you cannot do vim every where. But if you really a vim user, you should use plain txt with markdown syntax for notes I think :) Commented Jul 3, 2012 at 11:01
  • @Vdt - No you shouldn't. You should use whatever notes application you like. Vim is just another program <gasp!>, not a religion!
    – Rook
    Commented Sep 18, 2012 at 0:42
  • 2
    sometimes, I consider vim is only keybindings and not even a program :)
    – tkokasih
    Commented Mar 18, 2015 at 2:10

Boooo ViEMU

I tried ViEMU, but ultimately was unsatisfied. After that I discovered VisVIM. If I recoall, ViEMU didn't implement large portions of VIM functionality.

Hooray VisVIM

Simply follow the instructions found in the %VIMFILEs%\README_VisVim.txt document that is installed along with the standard GVIM installation package for Windows.


I think GlobalVim is a perfect answer to this question.

GlobalVim has many features of vim and can work across all input situations. Registers, macro-recording, pattern replacement, and python expression evaluation...

I love this tool so much.


I'm looking for the same thing with Emacs-style key-bindings (gotta love vi/emacs). Anyway I've got key bindings working in MS Word (for emacs that is), and have to believe something similar exists but I've just started using OneNote.

My next step is to look for .NET or VBA control over OneNote. That'll be the key to controlling OneNote using the key bindings you prefer (or that's my best guess).

  • As some of my geek-friends (that's a compliment) used to say; "the best thing about EMACS is that it's key-bindings can be configuration in [VIM][1]. [1]: vim.org/scripts/script.php?script_id=300 If you look into the link above maybe you can get the Emacs keyboard configuration you prefer, but leverage VisVIM's integration with Visual Studio. If you follow the VisVIM installation steps you will be led to the interface in Visual Studio that allows you to configure external applications. In general, OLE capable applications should integrate well. [I found this too][2]
    – GuyHoozdis
    Commented Oct 28, 2012 at 18:51
  • I found [this][1] too. [1]: gnu.org/software/emacs/windows/old/faq10.html
    – GuyHoozdis
    Commented Oct 28, 2012 at 19:10

I use the excellent https://github.com/rcmdnk/vim_ahk library which is currently being maintained (April 2020).

I use the https://github.com/ililim/dual-key-remap C app to remap CapsLock, as I found that using an Autohotkey script caused issues.

And I've blogged about my experiences here: https://davemateer.com/2020/04/10/OneNote-with-Vim

Using Vim in OneNote makes me very happy!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .