MacVimFramework — Framework version of MacVim
C Vim script Objective-C Other Makefile C++ Other
Pull request Compare This branch is 500 commits ahead of b4winckler:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
farsi
libs
nsis
pixmaps
runtime
src
.gitignore
.hgignore
.hgtags
Contents
Contents.info
Filelist
Makefile
README.md
README.txt
README.txt.info
README_ami.txt
README_ami.txt.info
README_amibin.txt
README_amibin.txt.info
README_amisrc.txt
README_amisrc.txt.info
README_bindos.txt
README_dos.txt
README_extra.txt
README_mac.txt
README_ole.txt
README_os2.txt
README_os390.txt
README_src.txt
README_srcdos.txt
README_unix.txt
README_vms.txt
README_w32s.txt
Vim.info
Xxd.info
configure
csdpmi4b.zip
runtime.info
src.info
uninstal.txt
vimdir.info
vimtutor.bat
vimtutor.com

README.md

Obsolete

We started to rewrite VimR with a NeoVim-backend.

MacVimFramework

This is a fork of https://github.com/b4winckler/macvim. I made some modifications such that you can compile a Framework with which you can use MacVim-view in your own Apps. It does not have a well-thought-out Framework design due to the fact that I wanted to make the absolute minimal amount of modifications to the original code base. However, there is room for improvements and I'll add them gradually.

An (absolute minimal) example App (MinimalMacVim) is included. You can also have a look at Project VimR for a real usage of this framework.

How to Build

Go to project root and do the following:

cd src
./configure --with-features=huge --enable-rubyinterp --enable-pythoninterp --enable-perlinterp --enable-cscope
make

Open the Xcode project MacVim.xcodeproject in src/MacVim and build the MacVimFramework target.

How to Use

Build Settings

  • Add @loader_path/../Frameworks to Runtime Search Paths

Build Phases

  • Link and copy PSMTabBarControl.framework which is included with the project.
  • Link and copy MacVimFramework.framework

Example Code

Examine the target MinimalMacVim. It essentially has only one class—MMAppDelegate—that handles everything.