Ken Takata wrote:
> I saw the latest version8.txt.
> In the "Vim script improvements" section, the ".." operator is not described
> explicitly. (It is described as a part of `:scriptversion`.)
> How about adding it explicitly?
Well, I like to keep this an overview with not too many details.
> For the improvements and changes in Vim 8.2, I'd like to list my works for
> Windows as well:
>
> * Revised Windows installer.
> Supports translations, silent install, nice appearance.
> * VIMDLL: make it possible to merge the common part of gVim and Vim into a
> DLL.
> This can reduce the total install size.
We already had VIMDLL, but it was basically removed and re-implemented.
> (Enabling this or not in the official Windows package is up to you, Bram.
> vim-win32-installer doesn't enable this yet, though.)
I rather not change it so short before a release.
> * Drop support for old compilers.
> Borland C++, MSVC 2008 or older.
>
> And other improvements in Vim 8.2 are:
>
> * Improved 'incsearch'.
> * Support modifyOtherKeys.
> * Support ConPTY on Windows 10.
> Full colors are available in the terminal mode.
> * Added /= and %= assignment operators.
I updated the text to also mention things that were removed and
graduated:
Vim script improvements *new-vimscript-8.2*
-----------------------
Functions can now be called in a chain, using "->": >
mylist->filter(filterexpr)->map(mapexpr)->sort()->join()
The new `:eval` command can be used if the chain has no result.
The `:scriptversion` command was added to allow for changes that are not
backwards compatible. E.g. to only use ".." for string concatenation, so that
"." can be used to access a dictionary member consistently.
`:const` was added to allow for declaring a variable that cannot change: >
const TIMER_DELAY = 400
A heredoc-style assignment was added to easily assign a list of lines to a
variable without quoting or line continuation: >
let lines =<< trim END
line one
line two
END
The |Blob| type was added. This makes it easy to deal with binary data.
The /= and %= assignment operators were added.
A Dictionary can be defined with #{} where the keys are used literally. This
avoids having to use quotes: >
let options = #{width: 30, height: 24}
Other improvements *new-other-8.2*
------------------
- When 'incsearch' is set it also applies to `:substitute`.
- |modifyOtherKeys| was added to allow mapping more key combinations.
- ConPTY support was added for Windows 10, supports full color in the terminal.
- The windows installer supports translations, silent install and looks
better.
Changed *changed-8.2*
-------
The xdiff library was included to avoid the need for an external diff program
and to make updating diffs much faster.
The code is using a few more modern C features, such as // comments.
Support for old compilers has been dropped: Borland C++, MSVC 2008.
Hangul input support was removed, it actually didn't work.
The FEAT_TAG_OLDSTATIC code was removed, it slowed down tag searches.
The FEAT_TAG_ANYWHITE code was removed, is was not enabled in any build.
The UNICODE16 code was removed, it was not useful.
Workshop support was removed, nobody was using it.
The Aap build files were removed, they were outdated.
Farsi support was removed, it was outdated and unused.
VIMDLL was re-implemented, this shares the common parts between vim and gvim
to reduce the total install size.
The following features are now included in all versions: |+mbyte|,
|+virtualedit|, |+vreplace|, |+localmap|, |+cmdline_hist|, |+cmdline_compl|,
|+insert_expand|, |+modify_fname|, |+comments|
--
hundred-and-one symptoms of being an internet addict:
172. You join listservers just for the extra e-mail.