Updated to Vim 8.2.2127.
*Note*: This release doesn't natively support Apple Silicon / M1 yet, but
does work under Rosetta. See below.
Features
====================
Big Sur / macOS 11
--------------------
- MacVim now has an updated app icon (#1054), and preference pane / toolbars
have been updated to match Big Sur's interface guidelines. (#1128)
- Fixed Touch Bar warnings when launching MacVim from the terminal.
#1114
- SF Symbol characters will show up properly as double-width as most of
these icons would take up more than one column. Note that these
characters are specific to macOS and would not work in other
platforms. #1129
Renderer / scrolling performance improvements
--------------------
The Core Text renderer has been rewritten and is now much faster!
Scrolling should not stutter and lag like before and generally it should
feel a lot smoother now. Thanks to Sidney San Martín (@s4y) for the
contribution. #858
With this change, the non-Core-Text renderer is now considered
deprecated. The old renderer is accessible either through the Preference
Pane (under Advanced) or by setting the defaults "MMRenderer" to 0. It
works for now, but it will be removed in a future update as it has known
bugs.
Menu Localization
--------------------
Menus are now localized, see `:h langmenu` for how Vim menu localization
works. You can use `set langmenu=none` to turn it off if you would like. #1099
There still exists a few menu items that are not localized, and the
general MacVim GUI is not localized as well. If you would like to help,
please use #1102 to coordinate with MacVim dev team.
Getting help / Help menu
--------------------
- Help menu's search bar now searches Vim documentation as well! See
#1095.
- Vimtutor is now bundled with MacVim, and you can access vimtutor from
the Help menu (#1096). There is also a link to the latest release
notes as well (#1131).
General
====================
- This release does not contain a native universal app for Apple Silicon
/ M1 Macs yet. The release binary will still work under Rosetta, which
should provide enough performance, but if you use Python/etc plugins,
you need to make sure you have x86 versions of Python/etc installed
(which is still the default for Homebrew as of this release).
MacVim is buildable under Apple Silicon, so if you need a native
binary, you could build it yourself by downloading the source from the
Github repository. See #1136 for progress on releasing a universal app
for Apple Silicon.
- MacVim has enabled the Github Discussions feature, which serves as a
good spot for general discussions and questions. See
https://github.com/macvim-dev/macvim/discussions/1130 and check it
out!
Fixes
====================
- Launching MacVim from the Dock with locales that use "," for decimal
separators now works correctly. #11 (Vim 8.2.1738)
- `WinBar` menus (which are used by plugins like vimspector) now work
properly and don't create dummy menu items. #918
- Using `:browse tabnew` no longer crashes MacVim in terminal mode.
#1107 (Vim 8.2.1842)
Misc
====================
- Scripting languages versions:
- Python is now built against 3.9, up from 3.8.
- Lua is now built against 5.4, up from 5.3.
Compatibility
====================
Requires macOS 10.9 or above.
Script interfaces have compatibility with these versions:
- Lua 5.4
- Perl 5.18
- Python2 2.7
- Python3 3.9
- Ruby 2.7
MacVim's CI build script was already updated to use Python 3.9 from
Homebrew when building, so it would use that automatically, but update
the auto-detection used for MacPorts and binary install support to use
3.9 as well.
Use SF symbols (only for macOS 11+ / Big Sur) for preference pane's
toolbar to be consistent with rest of OS. Set toolbar style to be
"preference" as otherwise it defaults to "unified" which is not correct
for a preference pane.
Set toolbar style for main MacVim window to be "unified compact", as the
default "unified" is too larger and not useful for text editing. For
example, Xcode also uses this.
macOS 11 (Big Sur) has added SF Symbols support for the OS. While these
are primarily designed to be used in apps as images, each symbol does
indeed correspond to a Unicode entry and can be used alongside normal
texts in a text editor, similar to how emojis work. Since they tend to
be pretty square in shape, we should treat them as double-width like
emojis.
The Unicode range was extracted by using Apple's SF Symbols app, and
copying out all the symbols and inspecting them. It will likely need to
be updated if Apple adds more symbols in future updates. For now, they
all seem to occupy the low end of Supplementary Private Use Area-B.
Note that these symbols only work when viewed in macOS, and won't work
in other platforms like Linux or Windows. They should probably not be
used in files that need to be shared outside of macOS.
Problem: GTK: Menu background is the same color as the main window.
Solution: Fix white space around the test in another way. (closes#7437,
closes#7427)
Problem: "vim -" does not work well when modifyOtherKeys is enabled and a
shell command is executed on startup.
Solution: Only change modifyOtherKeys when executing a shell command in raw
mode.
Fix WinBar menus to not create menu items in the main menu bar.
Also, fix an off-by-one error when adding new menu items to the main
menu when adding the menus using priorities to insert them in the
middle. This also allowed adding a menu (when using index 0) that goes
before the main "MacVim" app menu which is quite wrong as the app menu
should always be the first one.
Fix#918
Now that CoreText scrolling performance is fixed with the stateful
renderer we should eventually stop supporting the legacy NSTextView
renderer which doesn't renderer properly and cannot do proper
fixed-width column rendering that Vim uses. Mark it as deprecated for
now but it will be removed in the future.