Updated to Vim 9.1.1128
This update contains a completely new GUI tabs implementation by @sfsam! It also contains lots of small fixes for window resizing and full screen mode that aims to make using MacVim feel rock solid and stable.
New settings defaults related to window sizing #1528:
guioptions
now has k
set by default (:h go-k
). This prevents MacVim’s window size from changing unnecessarily when showing/hiding tabs or changing font size.These should align MacVim better with how other apps work and integrate better with OS window management, including macOS 15 Sequoia’s window tiling feature.
MacVim has a new tabs implementation! The old version (PSMTabBarControl) is not maintained and lacks features such as overflowing tabs and customizable colors. The new tabs will overflow horizontally and are scrollable. They also animate when tabs are closed or moved, respect system settings such as right-to-left locales and high-contrast modes, and are designed to fit within the currently selected Vim colors.
There are a few ways to customize the colors of the new tabs, under the “Appearance” settings pane. MacVim defaults to an “Automatic colors” mode which tries to pick sensible colors automatically based on the current foreground/background colors. However, you can also configure it to simply use the tab colors specified by the Vim color scheme (some color schemes will work better than others depending on their choice of colors). Another new option is “Use tabs background color” which when combined with “Transparent title bar” allows the title bar and tabs to look like a single cohesive whole.
Relevant work:
packadd
to enable them):
:HelpToc
to show an interactive table of contents for Vim help, man pages, Markdown files, and terminal. vim/vim#10446:h :Tutor
) (v9.1.0836). There is also now a chapter 2 (vim/vim#5729).The MacVim dmg installer has a new design. Courtesy of @jasonlong. #1540 #1545
Legacy builds (macOS 10.9 - 10.12) are no longer built by GitHub hosted runners, due to GitHub’s deprecation of old runners. They are now built by a custom self-hosted VM instead. In the future we hope to set up reproducible builds (#1506) so it will not matter who’s building the app as it would be verifiable. #1559
“Nightly” build: We now build a dmg installer for every commit. This allows for trying out the latest developmental version of MacVim, but note that the app will not be signed / notarized, and it will not be as polished as official release/pre-release builds. See wiki for instructions. #1532
macOS 15 Sequoia’s Apple “Intelligence” Writing Tools should work correctly with MacVim now. To use it, select some text, right click to show menu, and then select the “Writing Tools” sub-menu. As part of this fix, the integration with the “Services” menu now works more reliably as well. You can select texts in blockwise visual mode and select a service and MacVim will try to place the new texts back to the blockwise selection if possible. #1552
blurradius
option. #1546fuoptions
and also the transparency
setting, and rare crash. #1521v:os_appearance
. #1511getregion()
to determine the selected texts. #1508Requires macOS 10.9 or above. (10.9 - 10.12 requires downloading a separate legacy build)
Script interfaces have compatibility with these versions:
Updated to Vim 9.1.0727
This update mostly syncs to new upstream Vim version, along with small fixes.
~/.config/vim
intsead of ~/.vim
/ ~/.vimrc
. See :h xdg-base-dir
. v9.1.0327packadd
to enable them):
nohlsearch
. vim/vim#15042Requires macOS 10.9 or above. (10.9 - 10.12 requires downloading a separate legacy build)
Script interfaces have compatibility with these versions:
Updated to Vim 9.1.0
Happy New Year! See #1472 for a retrospective of 2023 and future roadmap.
Also, Vim 9.1 is now released! See announcement.
MacVim’s guifont
option now supports a new -monospace-
value, which instructs it to use the system monospace font, which is SF Mono in recent macOS versions. As mentioned below (New Vim features), you can now use tab-completion to see the available values in cmdline. See :h macvim-guifont
for more details on how to use it (including using different font weights). #1463
Note: I’m contemplating changing the MacVim default value for guifont
to be -monospace-
in the future so MacVim will always use the native monospace font instead of being hard-coded to Menlo. This makes it more consistent with Apple Terminal and Xcode. Feel free to leave a comment on #1277 if you have opinions on this.
:h cmdline-completion
and :h complete-set-option
)
set jumpoptions=stack
. Ported from Neovim. v9.0.1921getmousepos()
returns a new “coladd” for tab characters. v9.0.2032:Man
now works properly when gdefault
is set. vim/vim#13097:h vim-script-library
.New settings:
Clean mode (#1453):
:h macvim-settings
.:hardcopy
under macOS 14. NOTE: Starting from macOS 14, you have to install ps2pdf
(available from Ghostscript) yourself before you can print. See #1464<Down>
. #1455Requires macOS 10.9 or above. (10.9 - 10.12 requires downloading a separate legacy build)
Script interfaces have compatibility with these versions:
Updated to Vim 9.0.1897
As some of you may have read, Bram Moolenaar, the creator and maintainer 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.
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.
packadd editorconfig
to activate it. See vim/vim#12902.g<End>
now goes to the first non-blank char. v9.0.1753xxd
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
). #1430serverlist()
on exit. #1427:Man
command doesn’t work properly if gdefault
option is set. vim/vim#13097.Requires macOS 10.9 or above. (10.9 - 10.12 requires downloading a separate legacy build)
Script interfaces have compatibility with these versions: