NeoVintageous 1.19.0
NeoVintageous 1.19.0 has just been released. The highlights are the new vim modeline feature, improved marks, new shell commands, new options, new keys, and new aliases.
Ch-ch-ch-ch-Changes
There are two notable changes:
- The
'ignorecase'
option is now false by default. - The
'winaltkeys'
option is now "menu" by default.
To change the options back to the previous defaults open your RC file and add:
set ignorecase
set winaltkeys=yes
Vim modeline
The new vim modeline feature allows you to automatically set options with the :set
command.
It's easiest to illustrate with an example. For example, if you add the following modeline to the top or bottom of your file:
# vim: tw=30 ts=2 nu
It will ensure the file is always loaded with textwidth=30
, tabstop=2
(tab size) and the number
option (gutter line numbers) enabled.
A modeline can be prefixed by any text, usually a comment.
// vim: tw=30 ts=2 nu
The following options are supported:
'autoindent'
'belloff'
'hlsearch'
'ignorecase'
'incsearch'
'list'
'magic'
'menu'
'minimap'
'modeline'
'modelines'
'number'
'sidebar'
'spell'
'statusbar'
'winaltkeys'
'wrap'
'wrapscan'
Modeline is enabled by default and replaces sublime-specific modelines.
See :help modeline
for detailed documentation.
Marks
The most significant improvement to marks is how they now adjust their position with edits. To set a mark at the current cursor position (does not move the cursor, this is not a motion command):
m{a-z}
Jumping to a mark can be done in two ways:
- With ` (backtick): The cursor is positioned at the specified location and the motion is exclusive.
- With ' (single quote): The cursor is positioned on the first non-blank character in the line of the specified location and the motion is linewise.
For example, set mark "t":
mt
And then you can jump to the mark with
`t
or
't
New shell commands
:read
:[range]r[ead] !{cmd}
Execute {cmd}
and insert its standard output below the cursor or the specified line. {cmd}
is executed like with :!{cmd}
. For example to insert the output from :!ls
below the current line:
:read !ls
And to put it below line 9:
:9read !ls
The shell that is used in the command part (:!{cmd}
) can be configured, the default is $SHELL
or "sh" and on Windows it's "cmd.exe":
set shell=/bin/bash
To start a new shell use the :shell
command, the program used to start the shell can be configured with the vintageous_terminal
setting e.g. to use GNOME Terminal update your settings with:
{
"vintageous_terminal": "gnome-terminal"
}
New options
Several new options are available:
option | default |
---|---|
'textwidth' 'tw' | wrap_width sublime setting |
'tabstop' 'ts' | tab_size sublime setting |
'expandtabs' 'et' | translate_tabs_to_spaces sublime setting |
'expandtabs'
has since been renamed 'expandtab'
New keys
All of the new keys can be mapped!
<C-bs>
alias toh
<C-home>
alias togg
<C-left>
alias toB
<C-pagedown>
alias togt
<C-pageup>
alias togT
<C-right>
alias toW
<C-space>
<D-.>
<D-S-.>
<D-bs>
<D-cr>
<D-del>
<D-down>
<D-home>
<D-left>
<D-pagedown>
<D-pageup>
<D-right>
<D-space>
<D-up>
<Enter>
alias to<CR>
<M-left>
alias toh
<M-right>
alias tol
<Return>
alias to<CR>
<S-down>
alias toCTRL-f
<S-left>
alias tob
<S-right>
alias tow
<S-up>
alias toCTRL-b
<insert>
alias toi