<< back

MacVim 9.0.1897

Improved version of the UNIX editor Vi

Category: Developer Tools
Price: Free
Popularity: Medium
Version String: 9.0.1897 (178)
Release Date: 2023-09-12
Architecture: Intel & AppleSilicon(ARM)
Minimum OS: macOS 10.13
Vendor Name: Bram Moolenaar
Homepage: github.com

Version History 9.0.1897 (178)

Updated to Vim 9.0.1897
Special Notes
As some of you may have read, Bram Moolenaar, the creator of Vim, has passed away recently. He has worked tirelessly on Vim for more than 30 years and this release is dedicated to him. If you would like, you could pay your respects at this discussion thread.
The Vim project has transitioned to new maintainers, and MacVim will continue to be supported as long as Vim is around.
More flexible Python integration
MacVim now allows you to use Python runtime (via pythonthreedll, used for Python plugins) of any version at or above 3.9. Previously you had to use the exact same version that was used to build MacVim (Python 3.11). The Python detection logic is also updated to always just find the latest version of Homebrew Python instead of a fixed one, and it will also now locate the default macOS / Xcode Python provided by the Xcode Command Line Tools if that is the only Python available. This should hopefully make configuring Python for MacVim a lot more seamless. See :h python3-stable-abi. Vim v9.0.1776 / #1428.
New Vim features
• New built-in support for EditorConfig via an optional package. Use packadd editorconfig to activate it. See vim/vim#12902.
• g now goes to the first non-blank char. v9.0.1753
• API changes
◦ undotree() now takes a bufnr v9.0.1686
◦ printf() now takes positional arguments v9.0.1704
◦ virtcol() now takes winid v9.0.1728
◦ quickfix items can now have user data v9.0.1688
• Miscellaneous security fixes.
Security Fixes
• Fixed insecure usages of interprocess communication in MacVim (CVE-2023-41036)
• Fixed MacVim to correctly set up the runtime folder in the app bundle. As a corollary, xxd is now bundled with MacVim like most other Vim distributions, and MacVim.app now provides man page for the CLI vim commands if the user wants to associate man pages with the mvim comamnd (see :h macvim-PATH). #1430
• Fixed Vim occasionally crashing and/or hung when autocmd calls serverlist() on exit. #1427
• Scripting languages versions: Python now supports 3.9 or above.
Requires macOS 10.9 or above. (10.9 - 10.12 requires downloading a separate legacy build)
Script interfaces have compatibility with these versions:
• Lua 5.4
• Perl 5.30
• Python2 2.7
• Python3 3.9 or above
• Ruby 3.2

Latest release notes >


What is Vim?
Vim is a greatly improved version of the good old UNIX editor Vi. Many new features have been added: multi-level undo, syntax highlighting, command line history, on-line help, spell checking, filename completion, block operations, script language, etc. There is also a Graphical User Interface (GUI) available. Still, Vi compatibility is maintained, those who have Vi "in the fingers" will feel at home. See runtime/doc/vi_diff.txt for differences with Vi.

This editor is very useful for editing programs and other plain text files. All commands are given with normal keyboard characters, so those who can type with ten fingers can work very fast. Additionally, function keys can be mapped to commands by the user, and the mouse can be used.

Vim is a highly configurable text editor for efficiently creating and changing any kind of text. It is included as 'vi' with most UNIX systems and with Apple OS X.

Vim is rock stable and is continuously being developed to become even better. Among its features are:
- persistent, multi-level undo tree
- extensive plugin system
- support for hundreds of programming languages and file formats
- powerful search and replace
- integrates with many tools