Compare commits

...

4 Commits

Author SHA1 Message Date
Yee Cheng Chin f539a147c1 MacVim Snapshot 168
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
2020-12-11 21:34:07 -08:00
Yee Cheng Chin 1f8d90334b Merge pull request #1137 from ychin/fix-travis-ci-x86-only-configure-with-macarchs
Fix Travis CI to only build x86_64, and fix --with-macarchs flag
2020-12-11 21:31:52 -08:00
Yee Cheng Chin 3123f01324 Update EdDSA key for Sparkle updater, as the old one was wrong
The EdDSA public key added in last release (snapshot-166) was wrong.
Simply re-generate a new pair. This is not fatal as Sparkle allows for
DSA-only updates for now, but fix it to have the right key so future
MacVim updates can be done via EdDSA. It won't work if someone is
updating directly from 166, but given enough time, that should not be very likely
as people woudl have updated to the newer versions.
2020-12-11 21:01:48 -08:00
Yee Cheng Chin db650bbf43 Fix Travis CI to only build x86_64, and fix --with-macarchs flag
Apple Silicon build doesn't work in CI yet, and as such we don't want CI
to build it, as accidentaly Apple Silicon builds will mean an Apple
Silicon Mac prioritize that over Rosetta build which will crash (since
we are only building `MacVim` as universal, but the raw `Vim` process is
not). Also, add a CI smoketest step to make sure we only build x86_64.

Also, fix up the `--with-macarchs` flag for `configure`. For some
reason, Apple seems to have broken sed's word boundary parsing, so need
to work around it and use a more convoluted regex to do the word
splitting.
2020-12-11 21:01:12 -08:00
4 changed files with 26 additions and 5 deletions
+6 -1
View File
@@ -18,7 +18,8 @@ env:
vi_cv_dll_name_python3=/usr/local/Frameworks/Python.framework/Versions/3.9/Python
vi_cv_dll_name_ruby=/usr/local/opt/ruby/lib/libruby.dylib
VIMCMD=src/MacVim/build/Release/MacVim.app/Contents/MacOS/Vim
CONFOPT="--with-features=huge --enable-netbeans --with-tlib=ncurses --enable-cscope --enable-gui=macvim"
MACVIM_BIN=src/MacVim/build/Release/MacVim.app/Contents/MacOS/MacVim
CONFOPT="--with-features=huge --enable-netbeans --with-tlib=ncurses --enable-cscope --enable-gui=macvim --with-macarchs=x86_64"
BASH_SILENCE_DEPRECATION_WARNING=1
_anchors:
@@ -85,6 +86,10 @@ script:
# Make sure there isn't any dynamic linkage to third-party dependencies in the built binary, as we should only use
# static linkage to avoid dependency hell. Test that all those dylib's are in /usr/lib which is bundled with macOS and not third-party.
- (! otool -L ${VIMCMD} | grep '\.dylib\s' | grep -v '^\s*/usr/lib/')
# Make sure we are building x86_64 only. arm64 builds don't work properly now, so we don't want to accidentally build
# it as it will get prioritized by Apple Silicon Macs.
- (lipo -archs ${VIMCMD} | grep '^x86_64$')
- (lipo -archs ${MACVIM_BIN} | grep '^x86_64$')
- echo -en "travis_fold:end:smoketest\\r\\033[0K"
# Run standard test suites.
+2 -2
View File
@@ -1255,7 +1255,7 @@
</dict>
</array>
<key>CFBundleVersion</key>
<string>167</string>
<string>168</string>
<key>LSApplicationCategoryType</key>
<string>public.app-category.productivity</string>
<key>NSAppTransportSecurity</key>
@@ -1312,7 +1312,7 @@
<key>SUPublicDSAKeyFile</key>
<string>dsa_pub.pem</string>
<key>SUPublicEDKey</key>
<string>EnnNZOR1zR6TmKXohjTNWbToLYNE4/1qd/dtkuTE2zc=</string>
<string>Pt4zsg/8S3/mxKW7Cmt0cZFw/+2LOuXOYS93evP+Mfc=</string>
<key>NSAppleEventsUsageDescription</key>
<string>MacVim uses Apple Events to allow you to communicate with other apps using Apple Script, and to support working as an ODB external editor.</string>
<key>NSAppleScriptEnabled</key>
+9 -1
View File
@@ -4758,7 +4758,15 @@ fi
$as_echo_n "checking if architectures are supported... " >&6; }
save_cflags="$CFLAGS"
save_ldflags="$LDFLAGS"
archflags=`echo "$ARCHS" | sed -e 's/[[:<:]]/-arch /g'`
# Apple's sed is supposed to treat [[:<:]] as word beginning, but seems
# like that broke some time ago and means *any* word character (but
# [[:>:]] still seems to work as word end).
# Use a more convoluted regex in order to properly to split the archs by
# word and prefix each with "-arch" to pass to the compiler.
#archflags=`echo "$ARCHS" | sed -e 's/[[[:<:]]]/-arch /g'`
archflags=`echo "$ARCHS" | sed 's/[[:>:]][ ][ ]*[[:<:]]/ -arch /g' | sed 's/^/-arch /g'`
CFLAGS="$CFLAGS $archflags"
LDFLAGS="$LDFLAGS $archflags"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+9 -1
View File
@@ -273,7 +273,15 @@ if test "`(uname) 2>/dev/null`" = Darwin; then
AC_MSG_CHECKING(if architectures are supported)
save_cflags="$CFLAGS"
save_ldflags="$LDFLAGS"
archflags=`echo "$ARCHS" | sed -e 's/[[[:<:]]]/-arch /g'`
# Apple's sed is supposed to treat [[:<:]] as word beginning, but seems
# like that broke some time ago and means *any* word character (but
# [[:>:]] still seems to work as word end).
# Use a more convoluted regex in order to properly to split the archs by
# word and prefix each with "-arch" to pass to the compiler.
#archflags=`echo "$ARCHS" | sed -e 's/[[[:<:]]]/-arch /g'`
archflags=`echo "$ARCHS" | sed 's/[[[:>:]]][[ ]][[ ]]*[[[:<:]]]/ -arch /g' | sed 's/^/-arch /g'`
CFLAGS="$CFLAGS $archflags"
LDFLAGS="$LDFLAGS $archflags"
AC_TRY_LINK([ ], [ ],