Support for super-keys

You can now map super-keys via <D-...>, also known as command-keys on OSX, and window-keys on Windows.

Suppose, for example, you wanted to map <D-i> to Goto Symbol in Project. That command is available out-of-the-box in Sublime Text via goto_symbol_in_project, and in NeoVintageous we can map to any command by camel casing it, upper-casing the first letter, and appending <CR>. We can create the map in our vintageousrc file:

nnoremap <D-i> :GotoSymbolInProject<CR>

For more details on the vintageousrc file, see the help docs via the help command :h vintageousrc.

Remember to enable the super-keys when you want use them. Menu > Preferences > Settings:

Note: operating systems make extensive use of the super-keys for desktop commands. If you find a super-key is not working in Sublime Text, then it's probably bound to a desktop command, and if that's the case then ST won't receive the key event. You can check if ST is receiving the key event by running sublime.log_input(True) in the console (Menu > View > Show Console). If it's not receiving the key, then you need to clear whatever desktop command the key is bound to. If you use Ubuntu here is some help on managing Ubuntu keymaps.

Command-line editing and search history

Search history for / and ? has been added (currently only supports current session). Use the arrow keys <Up> and <Down> to recall recent and older history.

Various Command-line editing commands have been added, including <C-b>, <C-e>, <C-h>, <C-n>, <C-p>, <C-u>, and <C-w>. Also a popular request: CTRL-c and CTRL-[ now exit Command-line mode.

Toggle Side Bar

A toggle side bar command is now provided out-of-the-box (NeovintageousToggleSideBar). When you use a toggle side bar mapping it's recommended to use this command, because it will receive fixes and tweaks tuned for NeoVintageous.

Suppose, for example, you wanted to map ,d to toggle the sidebar when you're in normal mode (where we'll use a comma leader key). Create the mapping in your vintageousrc file:

Removed

The recursive mappings were removed because they were not implemented as recursive mappings, and removing them now in preference of the non-recursive may prevent some potential problems in the future if the recursive mapping commands are ever implemented.

Here is a table of the recursive, which have been removed, and the non recursive mapping commands that you can use instead:

For anyone wanting to get more of a vim feel I made a plugin which replaces the long Saved + path string with the word written.

One downside which I haven't managed to figure out yet if you save the file any other way other than :w the default message will flash up for a fraction of a second, but saving with :w it works exactly like vim.

nnoremap mm :w<CR> also shows it flash up so you would have to save it using :w manually.

In your second screenshot the file name is on the left of the status bar, by default ST doesn't show the file name, do you have a plugin installed for that?

devcarlos:

One downside which I haven't managed to figure out yet if you save the file any other way other than :w the default message will flash up for a fraction of a second, but saving with :w it works exactly like vim.

You'd need to override the other ways of saving e.g. if you use CTRL-s to save you'd setup a mapping:

nnoremap <C-s> :w<CR>

Overriding the command palette commands and the context menu commands is much harder and probably not worth doing.

This is what i'm talking about, notice how the first time I save the file using the nnoremap command the second time I do it manually and it doesn't flash up.

What do you mean by manually? I can't see from the gif.

If you run save from the menu, Menu > File > Save, that will invoke ST's save command i.e. it bypasses the command run by :w. Similarly, if you run save from the command palette, or a context menu the same will happen i.e. it will bypass the command run by :w. Nonetheless, your event should still be triggered on post save.

Your plugin event is running after the original message is display, and overwrites it. There is always going to be some time between the original message showing, and overwriting it with your custom message. So, you will sometimes see a flash of the orignal message. There's no way around that. Neovintageous needs to solve this in the core, or provide an way for users to customise the message (which is probably not worth it once the correct message is fixed). But even if Neovintageous solves this for ex commands like :w, it will not display the same for save commands run via Menu's or the command palette.

When I say manually I mean opening command line mode using : and then typing w and hitting return, although the mapping nnoremap mm :w<CR> is technically the same thing with fewer button presses they both work differently.

In the gif you notice when I save the file the first time using the mm mapping the original message displays for a fraction of a second but the second time I manually open command line mode and then type w and press return and the original message never displays eliminating the flash.

I'm not sure why they work differently but i'm happy to save the file the second way as this never shows me the original message.