Skip to content

Releases: macvim-dev/macvim

MacVim r180

11 Sep 08:53
release-180
a24ac02
Compare
Choose a tag to compare

Updated to Vim 9.1.0727

MacVim release-180 download MacVim release-180 download (10.9-10.12)

This update mostly syncs to new upstream Vim version, along with small fixes.

Features

New Vim features

  • Vim now supports the XDG Base Directory Specification. You can now put your vimrc and plugins in ~/.config/vim intsead of ~/.vim / ~/.vimrc. See :h xdg-base-dir. v9.1.0327
  • Auto completion
    • Matched text in a completion popup menu will now be highlighted v9.1.0476

      image
    • Insert mode fuzzy completion (:set completopt+=fuzzy). v9.1.0463 / v9.1.0598

  • New options:
    • tabclose: specifies tab closing behavior. v9.1.0572
    • winfixbuf: fixes a window to a buffer and prevent navigating away from it. v9.1.0147
  • New functions:
    • getregion() / getregionpos(): Helps retrieve the text selected in a visual selection. v9.1.0120 v9.1.0142 v9.1.0394
    • diff(): Diff provided strings. v9.1.0071
    • gettext() / bindtextdomain(): Vim plugins can now add localized messages. v9.1.0509.
    • filecopy(): Copy a file using Vim script. v9.1.0465
  • New bundled optional plugins (use packadd to enable them):
  • Highlighting for diff files are back to normal. v9.1.0016
  • Vim9 script improvements.
  • Miscellaneous smoothscroll, termdebug, security fixes.
  • Other platforms (these don't affect MacVim and included for reference only):
    • GTK Vim GUI can now also use <D-...> to map super keys, similar to MacVim for its Cmd key mappings. This should allow sharing cross-platform configs easier. v9.1.0058
    • Vim GUI now supports Wayland in Linux. v9.1.0064

Misc

  • When resizing MacVim, the title bar's message looks a little nicer now. #1488 by @sfsam
  • Copyright disclaimer in About MacVim no longer shows a year. #1497

General

  • Sparkle (updater for MacVim) is now updated to 2.6.4. For legacy builds it's now updated to 1.27.3. #1494

Fixes

  • Fixed dragging tabs to reorder them resulting in a crash. #1499
Compatibility

Compatibility

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.3

MacVim r179.1 (prerelease)

31 Aug 09:22
prerelease-179.1
edd4d38
Compare
Choose a tag to compare
Pre-release

Updated to Vim 9.1.0695

This is a pre-release version of MacVim. To use the latest stable release, see https://github.com/macvim-dev/macvim/releases/latest

What's Changed

What's Changed

  • Update CI to remove macOS-11 which has been removed from GitHub Actions by @ychin in #1493
  • Proposal: change x to × in title bar resize message by @sfsam in #1488
  • Sparkle 2.6.4 by @ychin in #1494

Full Changelog: release-179...prerelease-179.1

MacVim r179

05 Jan 05:54
release-179
73ed6d9
Compare
Choose a tag to compare

Updated to Vim 9.1.0

MacVim release-179 download MacVim release-179 download (10.9-10.12)

Happy New Year! See #1472 for a retrospective of 2023 and future roadmap.

Also, Vim 9.1 is now released! See announcement.

Features

System monospace font (SF Mono)

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.

Menlo (default) vs SF Mono

New Vim features

  • Command-line tab completion improvements and bug fixes (see :h cmdline-completion and :h complete-set-option)
    • Most string option values can now be completed. v9.0.1958
    • MacVim options (guifont, fuoptions) also support tab completion. #1436
    • ++opt (e.g. :e ++) and :terminal ++ completion work as well. v9.0.2025
    • listchars
  • New options:
    • set jumpoptions=stack. Ported from Neovim. v9.0.1921
  • API changes
    • getmousepos() returns a new "coladd" for tab characters. v9.0.2032
  • :Man now works properly when gdefault is set. vim/vim#13097
  • A new small Vim script library that may expand in the future. See :h vim-script-library.
  • Vim9 script improvements.
  • Miscellaneous security fixes.

Misc

New settings:

  • "Scroll in one direction only" (Input). Prevents accidental horizontal scrolling when scrolling vertically using a trackpad. #1442

Clean mode (#1453):

  • Vim can be opened in clean mode (does not use .vimrc or plugins) via the new menu item "New Clean Window". The new menu isn't localized in most languages. Please comment on the issue if you would like to help in localization.
  • MacVim can be launched without loading user defaults for a clean experience via a command-line flag. See :h macvim-settings.

General

  • Sparkle (updater for MacVim) is now updated to 2.5.2. The updater can now show multiple release notes when updating MacVim across multiple versions. #1446 #1469
  • Binary release is now built with more optimized compiler settings. Vim will now run slightly faster than before. #1444
  • macOS 14 Sonoma:
    • Binary release is now built using the macOS 14 SDK (#1434, #1440, #1448). One small change is that very tall characters (e.g. "นี้") on the first line will now draw into the title bar instead of being clipped.
    • Fixed printing with :hardcopy under macOS 14. NOTE: Starting from macOS 14, you have to install ps2pdf (available from Ghostscript) yourself before you can print. See #1464
  • Python 2 support: The default location for locating the Python 2 lib in the binary release is now under /Library/Frameworks rather than /usr/local. Note: Python 2 has long been obsolete. If you rely on Python 2 plugins, consider this a warning as it's only supported as long as it's feasible and could be removed in the future. #1434

Fixes

  • Fixed non-native full screen mode when using a MacBook with a notch and having the "Show menu bar in non-native mode" option set. Changing the screen resolution while using non-native full screen also works properly now. #1450
  • Fixed Help menu's documentation search not working with tags with special characters like <Down>. #1455
Compatibility

Compatibility

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

MacVim r178.1 (prerelease)

21 Oct 06:01
prerelease-178.1
bb85aff
Compare
Choose a tag to compare
Pre-release

Updated to Vim 9.0.2043

This is a pre-release version of MacVim. To use the latest stable release, see https://github.com/macvim-dev/macvim/releases/latest

What's Changed

What's Changed

  • CI: Update to Xcode 15 / macOS 13 in GitHub runner by @ychin in #1434
  • Add cmdline completion for MacVim options: 'fuoptions', 'guifont(wide)' by @ychin in #1436
  • Fix tabs drawing over rest of MacVim in macOS 14 Sonoma by @ychin in #1440
  • Add option to only scroll in one direction when using trackpad by @ychin in #1442
  • Use -O3 and link-time-optimization for published builds by @ychin in #1444
  • Sparkle 2.5.1 by @ychin in #1446
  • Fix macOS 14 Sonoma non-native full screen background color by @ychin in #1448
  • Allow showing pre-release in What's New page by @ychin in #1447
  • Fix non-native full screen show menu with notch, and changing resolution by @ychin in #1450

Full Changelog: release-178...prerelease-178.1

MacVim r178

12 Sep 10:49
release-178
ca76060
Compare
Choose a tag to compare

Updated to Vim 9.0.1897

MacVim release-178 download MacVim release-178 download (10.9-10.12)

Special Notes

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.

Features

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<End> now goes to the first non-blank char. v9.0.1753
  • API changes
  • Miscellaneous security fixes.

Security Fixes

Fixes

  • 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

Known issues

  • :Man command doesn't work properly if gdefault option is set. vim/vim#13097.

Scripting

  • Scripting languages versions:
    • Python now supports 3.9 or above.
Compatibility

Compatibility

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

MacVim r177

10 Jul 01:52
release-177
d6a1a39
Compare
Choose a tag to compare

Updated to Vim 9.0.1677

MacVim release-177 download MacVim release-177 download (10.9-10.12)

Announcements

Website

The official website for MacVim is now https://macvim.org. Previously it just forwarded to https://macvim-dev.github.io/macvim/ (#1385).

You can also now read the MacVim documentation at https://macvim.org/docs/gui_mac.txt.html. See #1382 for announcement.

Features

Updater / What's New page

There is now a "What's New" page that will automatically be shown whenever MacVim detected that it has been updated to a new version (can be disabled in Settings). The page will also include all the release notes if you have updated across multiple versions. This feature is useful for users who turned on "Automatically install updates" or installs MacVim through other methods like Homebrew but would still like to see the release notes when a new version comes out. You can also access it through the Help menu. #1414

MacVim should now report its version in a much more consistent manner in the "About MacVim" page and when the updater reports there is a new version. It should look something like "r176 (Vim 9.0.1276)" where "r176" is the MacVim release number and the 9.0.1276 is the bundled Vim version. #1293 #1393

Sparkle (updater for MacVim) is now updated to 2.4.2. #1416

New Vim features

  • New bundled colorschemes: wildcharm/retrobox/sorbet/zaibatsu (vim/vim#12163)
  • File encryption now has a new cryptmethod: xchacha20v2, which is designed to be more forward compatible with future Vim versions than xchacha20. (v9.0.1481)
  • switchbuf works for more commands. (v9.0.1546)
  • Statusline now supports multiple alignment "%=" items. (v9.0.1300)
  • New UTF-16 utility functions (strutf16len and utf16idx) (v9.0.1485)
  • Misc 'smoothscroll' bugs fixes

General

  • Removed non-Unicode localization files, which helps cut down on app size. #1397
  • Miscellaneous documentation fixes. #1415 #1375 #1386 #1363 (by @dkav)
  • The disk image for MacVim (MacVim.dmg) is now in APFS and uses better compression for better efficiency. #1409

Fixes

  • Printing a file in macOS 13 Ventura (using :hardcopy or File→Print) should work again. #1390
  • Fixed a broken symlink to XPCServices in the Sparkle framework. #1367
  • Fixed MacVim to not throw (safe) Objective C exceptions when quitting. #1371
  • Fixed welcome message not being aligned properly in Simplified Chinese and show the Vim 9 prompt. #1381
  • Removed some unnecessary test files in the runtime folders which were included erroneously. #1418

Scripting

  • Scripting languages versions:
    • Python is now built against 3.11, up from 3.10.
Compatibility

Compatibility

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.11
  • Ruby 3.2

MacVim r176.1 (prerelease)

19 Mar 21:07
prerelease-176.1
2ab2d08
Compare
Choose a tag to compare
Pre-release

Updated to Vim 9.0.1403

  • Printing files in macOS 13 Ventura is now fixed.

This is a pre-release version of MacVim. To use the latest stable release, see https://github.com/macvim-dev/macvim/releases/latest

What's Changed

What's Changed

  • Remove Sparkle 2's XPCServices symlink by @ychin in #1367
  • Update gui_mac.txt headings by @dkav in #1363
  • Don't throw Objective C exception when quitting MacVim by @ychin in #1371
  • Fix Xcode 8 build breaks by @ychin in #1372
  • Remove Sparkle.framework when configured with --disable-sparkle by @ychin in #1373
  • Remove Homebrew no-auto-update env var from CI by @ychin in #1374
  • Fix upstream merge CI failure with 'winaltkeys' by @ychin in #1376
  • Clean up syntax / formatting / typos in MacVim docs by @ychin in #1375
  • Add security policy file / documentation by @ychin in #1377
  • Fix set fullscreen not working after upstream Vim merge by @ychin in #1379
  • Fix MacVim localized intro text, and don't hide the :h version9 prompt by @ychin in #1381
  • Fix 'gdefault' etc help tags being broken by @ychin in #1383
  • Improve login shell docs by @ychin in #1386
  • Fix CI not handling Xcode version correctly with packages by @ychin in #1387
  • Fix qlstephen project warnings by @ychin in #1388
  • Fix MacVim CI breakage in Test_mouse_shape_after_cancelling_gr by @ychin in #1392
  • Fix misc MacVim project warnings in Xcode by @ychin in #1391
  • Fix :hardcopy not working in macOS 13 Ventura by @ychin in #1390
  • About MacVim show "pre-release" when running a pre-release build by @ychin in #1393

New Contributors

Full Changelog: release-176...prerelease-176.1

MacVim Release 176

07 Feb 10:44
release-176
8d7e6a2
Compare
Choose a tag to compare

Updated to Vim 9.0.1276

This is the first release in 2023! It took a little longer than I hoped to push this out, but it contains a decent amount of new features and bug / crash fixes, MacVim is now split into a normal binary for macOS 10.13+ and a "legacy" binary for macOS 10.9-10.12. You can also opt-in to a pre-release update channel for getting beta software faster in the future.

Note: r175 had a bug where tabs could crash MacVim, and was skipped in favor of this release (r176), which contains the fix (#1361).

MacVim release-176 download MacVim release-176 download (10.9-10.12)

Features

Dictionary lookup

You can now use Force Touch or Cmd-Ctrl-D to look up definitions of word under the cursor (or selected text in visual mode). This will also preview URLs, and support data types such as phone numbers and addresses. #1312 #1313

This feature can also be invoked programmatically from VimScript (see :h macvim-lookup). #1315

definition-url-sponsor-macvim definition-siri-knowledge-ice-cream

Tool bar / Touch Bar / menu icons

You can now use SF Symbols for Tool bar and Touch Bar icons, including using different symbol styles such as "palette" or "multicolor". Menu items can now also use the icon= syntax to specify icons as well. See :help macvim-toolbar-icon for details. #1329

macvim toolbar icon

The default tool bar also has updated icons to look similar to SF Symbols used by newer macOS versions. #1214 by @sfsam

Window management actions

There are new macaction's for managing the MacVim window. The new zoomLeft/zoomRight actions allow you to pin the window to the left/right of the screen, and there are also new actions for interacting with Stage Manager (requires macOS 13+). See :h macvim-actions for details. #1330

zoomLeftRight.mp4

Pre-release updates / Sparkle 2

MacVim now supports pre-release software builds. It's sometimes hard for us to release frequent updates due to the desire to pick a stable upstream Vim version, needing to test the release on multiple OS versions, making sure there aren't half-complete or buggy features, and other reasons.

This new feature now allows us to push pre-release beta builds out in a more frequent fashion, which could be useful if there are particular features or fixes that you would like to try out before the next official release. Pre-release builds will be released depending on bug fixes and features instead of a fixed cadence. Do note that these pre-release builds may not be as well-validated and may have half-baked features.

If you are using the built-in auto-updater to update MacVim, you can turn this on by going to Advanced settings pane, and enable "Enable pre-release software updates".

pre-release setting

This feature is only available for macOS 10.13 or above.

The auto-updater has also been updated from Sparkle 1.27.1 to 2.3.0 for 10.13+ builds. Legacy (10.9-10.12) builds are still using Sparkle 1.

See #1332.

New Vim features

New smoothscroll option allows you to scroll through a long wrapped line (using Ctrl-E or mouse wheel) without immediately jumping to the next line. (v9.0.0640)

splitscroll option has been renamed splitkeep, with more flexibility than before. (v9.0.0647)

Sound playback on macOS is now supported. You can use has('sound') to check. See :help sound for details. (v9.0.0694)

Terminals now support :confirm for :q, etc, which also means MacVim's Cmd-W will work properly for terminal windows. (v9.0.0710)

Virtual text had numerous bugs fixed.

General

Legacy build for 10.9 - 10.12

Per a previous announcement (#1288), the default MacVim binary will now require macOS 10.13 or above. Users of macOS 10.9 - 10.12 can use a separate "legacy" build which will still be supported. The legacy binary will still have the latest versions of Vim and be supported, but may not have all the latest features (e.g. pre-release builds).

If you are using the auto-updater (Sparkle) to update MacVim, it should "just work" and find the best version for you. If you are downloading MacVim from the website, there is also a link to download the legacy version marked for 10.9+ as well. If you download the normal binary marked for 10.13+ from the website, it won't work on these older macOS versions.

See #1331.

Fixes

CoreText Renderer clipping and rendering bugs

Unicode characters with multiple composing characters (e.g. "x⃗") will now render correctly. #1172

Texts (e.g. Tibetan, Zalgo texts) that are taller than the line height will no longer be clipped inappropriately. You can use a new setting MMRendererClipToRow to re-enable clipping if the tall texts are distracting. #995 / #1356

Tab crash

Fixed a crash when opening new tabs that seems to only occur in macOS 13 Ventura. #1333

Other bugs

  • Fixed non-native full screen not working well with the notch on newer MacBook's when set to not show menu bar. You can also use MMNonNativeFullScreenSafeAreaBehavior to force MacVim to use the notch area as well if you don't mind some content being obscured. Note that the previous release also claimed it fixed this, but because the binary was built against an old macOS SDK (Big Sur), the fix did not work in the binary release. #1261
  • Allow "Open untitled window: never" and "After last window closes: Quit MacVim" to be set together again. Added safeguards to make sure doing so won't immediately close the app. #1338
  • Edit.Cut / Copy menu items will now be properly disabled when there isn't selected text. #1308
  • Fixed potential :emenu crash when the menu is associated with an action in a non-valid mode. #1305
  • Fixed bug where just bringing up the right-click (or the MacVim→Services) menu would somehow copy the selected texts to the system clipboard. #1300
  • Fixed a Japanese input method bug where using left/right arrow to move to a different section of the input text would previously result in the candidate list not showing up at the correct position. #1312
  • Fix non-CoreText renderer not handling text styles like strikethrough correctly (note: this renderer has been deprecated for a while and you should not use it). #1296
  • This release uses an older sh/bash syntax file because the latest one in Vim has a bug. #1358

Misc

New settings:

  • "No drop shadows" (Appearance). #1301
  • "Treat Ctrl-click as right-click" (Input) (#1326). This was previously configurable via command-line, but now also possible in the settings pane under the new "Input" category.

"About MacVim" now reports the version number in a clearer way with clearly specified release number vs Vim version.

Known Issues

Printing

Printing using File→Print or :hardcopy is currently not working under macOS 13 Ventura due to its removal of PostScript support in the Preview app. This will be fixed in a later release. See the issue for workarounds. #1347

Scripting

  • Scripting languages versions:
    • Perl is now built against 5.30, up from 5.18.
    • Ruby is now built against 3.2, up from 3.1.
Compatibility

Compatibility

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.10
  • Ruby 3.2

MacVim Release 175

07 Feb 09:03
release-175
22d572d
Compare
Choose a tag to compare
MacVim Release 175 Pre-release
Pre-release

⚠️ NOTE ⚠️: This release has a bug where tabs could still crash MacVim. It has been replaced by r176 instead, which does contain the fix.

Original release notes

Updated to Vim 9.0.1276

Features

Dictionary lookup

You can now use Force Touch or Cmd-Ctrl-D to look up definitions of word under the cursor (or selected text in visual mode). This will also preview URLs, and support data types such as phone numbers and addresses. #1312 #1313

This feature can also be invoked programmatically from VimScript (see :h macvim-lookup). #1315

definition-url-sponsor-macvim definition-siri-knowledge-ice-cream

Tool bar / Touch Bar / menu icons

You can now use SF Symbols for Tool bar and Touch Bar icons, including using different symbol styles such as "palette" or "multicolor". Menu items can now also use the icon= syntax to specify icons as well. See :help macvim-toolbar-icon for details. #1329

macvim toolbar icon

The default tool bar also has updated icons to look similar to SF Symbols used by newer macOS versions. #1214 by @sfsam

Window management actions

There are new macaction's for managing the MacVim window. The new zoomLeft/zoomRight actions allow you to pin the window to the left/right of the screen, and there are also new actions for interacting with Stage Manager (requires macOS 13+). See :h macvim-actions for details. #1330

zoomLeftRight.mp4

Pre-release updates / Sparkle 2

MacVim now supports pre-release software builds. It's sometimes hard for us to release frequent updates due to the desire to pick a stable upstream Vim version, needing to test the release on multiple OS versions, making sure there aren't half-complete or buggy features, and other reasons.

This new feature now allows us to push pre-release beta builds out in a more frequent fashion, which could be useful if there are particular features or fixes that you would like to try out before the next official release. Pre-release builds will be released depending on bug fixes and features instead of a fixed cadence. Do note that these pre-release builds may not be as well-validated and may have half-baked features.

If you are using the built-in auto-updater to update MacVim, you can turn this on by going to Advanced settings pane, and enable "Enable pre-release software updates".

pre-release setting

This feature is only available for macOS 10.13 or above.

The auto-updater has also been updated from Sparkle 1.27.1 to 2.3.0 for 10.13+ builds. Legacy (10.9-10.12) builds are still using Sparkle 1.

See #1332.

New Vim features

New smoothscroll option allows you to scroll through a long wrapped line (using Ctrl-E or mouse wheel) without immediately jumping to the next line. (v9.0.0640)

splitscroll option has been renamed splitkeep, with more flexibility than before. (v9.0.0647)

Sound playback on macOS is now supported. You can use has('sound') to check. See help sound for details. (v9.0.0694)

Terminals now support :confirm for :q, etc, which also means MacVim's Cmd-W will work properly for terminal windows. (v9.0.0710)

Virtual text had numerous bugs fixed.

General

Legacy build for 10.9 - 10.12

Per a previous announcement (#1271), the default MacVim binary will now require macOS 10.13 or above. Users of macOS 10.9 - 10.12 can use a separate "legacy" build which will still be supported. The legacy binary will still have the latest versions of Vim and be supported, but may not have all the latest features (e.g. pre-release builds).

If you are using the auto-updater (Sparkle) to update MacVim, it should "just work" and find the best version for you. If you are downloading MacVim from the website, there is also a link to download the legacy version marked for 10.9+ as well. If you download the normal binary marked for 10.13+ from the website, it won't work on these older macOS versions.

See #1331.

Fixes

CoreText Renderer clipping and rendering bugs

Unicode characters with multiple composing characters (e.g. "x⃗") will now render correctly. #1172

Texts (e.g. Tibetan, Zalgo texts) that are taller than the line height will no longer be clipped inappropriately. You can use a new setting MMRendererClipToRow to re-enable clipping if the tall texts are distracting. #995 / #1356

Tab crash

Fixed a crash when opening new tabs that seems to only occur in macOS 13 Ventura. #1333

Other bugs

  • Fixed non-native full screen not working well with the notch on newer MacBook's when set to not show menu bar. You can also use MMNonNativeFullScreenSafeAreaBehavior to force MacVim to use the notch area as well if you don't mind some content being obscured. Note that the previous release also claimed it fixed this, but because the binary was built against an old macOS SDK (Big Sur), the fix did not work in the binary release. #1261
  • Allow "Open untitled window: never" and "After last window closes: Quit MacVim" to be set together again. Added safeguards to make sure doing so won't immediately close the app. #1338
  • Edit.Cut / Copy menu items will now be properly disabled when there isn't selected text. #1308
  • Fixed potential :emenu crash when the menu is associated with an action in a non-valid mode. #1305
  • Fixed bug where just bringing up the right-click (or the MacVim→Services) menu would somehow copy the selected texts to the system clipboard. #1300
  • Fixed a Japanese input method bug where using left/right arrow to move to a different section of the input text would previously result in the candidate list not showing up at the correct position. #1312
  • Fix non-CoreText renderer not handling text styles like strikethrough correctly (note: this renderer has been deprecated for a while and you should not use it). #1296
  • This release uses an older sh/bash syntax file because the latest one in Vim has a bug. #1358

Misc

New settings:

  • "No drop shadows" (Appearance). #1301
  • "Treat Ctrl-click as right-click" (Input) (#1326). This was previously configurable via command-line, but now also possible in the settings pane under the new "Input" category.

"About MacVim" now reports the version number in a clearer way with clearly specified release number vs Vim version.

Known Issues

Printing

Printing using File→Print or :hardcopy is currently not working under macOS 13 Ventura due to its removal of PostScript support in the Preview app. This will be fixed in a later release. See the issue for workarounds. #1347

Scripting

  • Scripting languages versions:
    • Perl is now built against 5.30, up from 5.18.
    • Ruby is now built against 3.2, up from 3.1.
Compatibility

Compatibility

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.10
  • Ruby 3.2

MacVim Release 174

15 Sep 20:33
release-174
a9ac6c8
Compare
Choose a tag to compare

Updated to Vim 9.0.472.

Announcements

Sponsors

MacVim now allows you to sponsor the team! Any amount would be appreciated and it is of course optional. See the announcement (#1271) for more details.

Supporting old versions of macOS (10.12 or below)

Currently, macOS supports macOS 10.9 or above. However, this is getting harder to do so as time goes on (e.g. the latest Xcode doesn't support building for it). In the near future, MacVim will mostly target 10.13 (High Sierra) or above, with 10.9 - 10.12 as legacy support. Visit this discussion (#1288) if you would be affected and would like to know more.

Features

Resizing MacVim new options

You can now smoothly drag and resize MacVim without having it constrained to fixed multiples of the text size, by setting the "Smoothly resizes window" under General preference pane. This also allows MacVim to behave better when used with third-party tools (e.g. BetterSnapTool) to snap it to one side of the screen. #1276

The command line can now be pinned to the bottom of the window with a setting (under Appearance preference pane). This makes it look better aligned when using smooth resizing, or in other situations where the window size is not a direct multiples of Vim's text size (e.g. full screen or guioption+=k). #1280

Both features in action:

macvim-smooth-resize-pin-cmdline-bottom.mp4

New supported text styles

Vim highlight groups strikethrough, underdouble, underdotted, underdashed are now supported. #1287

MacVim new text styles

New Vim features

Virtual text allows you to place custom texts to be displayed inline for diagnostic information and more (e.g. build errors, CSS color preview). See :help virtual-text for more information.

The default color schemes (e.g. desert) are now fixed to look correct again.

Misc options and commands:

  • set nosplitscroll lets you preserve the windows' scroll positions when splitting. (v9.0.0445)
  • :defer allows you to clean up in a function. (v9.0.0370)
  • :echowindow allows you to echo a message to a floating popup message window instead of to the command line. (v9.0.0321)

Fixes

  • Fixed non-native full screen not working well with the notch on newer MacBook's when set to not show menu bar. You can also use MMNonNativeFullScreenSafeAreaBehavior to force MacVim to use the notch area as well if you don't mind some content being obscured. #1261
  • Fixed bad interaction when two settings ("Open untitled window: never" and "After last window closes: Quit MacVim") are set together. #1257
  • Fixed the bundled Vim tutor not working when launching from the Help menu #1265.
  • Fix crashing on launch under macOS 10.9. #1212
  • Fixed potential crash when switching appearance mode in MacVim preferences. #1270
  • Korean localized menus no longer throw a syntax error on launch. #1278
  • did_install_default_menus should work in MacVim now. #1267

General

Sparkle (updater for MacVim) is now updated to 1.27.1 (#1284), and we no longer use DSA keys for signing updates (#1285) as we are using EdDSA already.

Scripting

  • Scripting languages versions:
    • Python is now built against 3.10, up from 3.9.
Compatibility

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.10
  • Ruby 3.1