-
-
Save uasi/721952 to your computer and use it in GitHub Desktop.
| require 'formula' | |
| class Vim < Formula | |
| homepage 'http://www.vim.org/' | |
| url 'ftp://ftp.vim.org/pub/vim/unix/vim-7.3.tar.bz2' | |
| head 'https://vim.googlecode.com/hg/' | |
| sha256 '5c5d5d6e07f1bbc49b6fe3906ff8a7e39b049928b68195b38e3e3d347100221d' | |
| version '7.3.682' | |
| def features; %w(tiny small normal big huge) end | |
| def interp; %w(lua mzscheme perl python python3 tcl ruby) end | |
| def options | |
| [ | |
| ["--with-features=TYPE", "tiny, small, normal, big or huge (default: normal)"], | |
| ["--enable-interp=NAME,...", "lua, mzscheme, perl, python, python3, tcl and/or ruby"] | |
| ] | |
| end | |
| def patches | |
| patch_level = version.to_s.split('.').last.to_i | |
| {'p0' => (1..patch_level).map { |i| 'ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.%03d' % i }} | |
| end | |
| def install | |
| def opt_val(opt) | |
| opt.sub(/.*?=(.*)$/, "\\1") rescue nil | |
| end | |
| opts = [] | |
| feature = opt_val(ARGV.find {|s| s =~ /^--with-features=/ }) || "normal" | |
| # For compatibility and convenience {{{ | |
| feature_shorthand = features.find {|f| ARGV.include? "--#{f}" } | |
| feature = feature_shorthand if feature_shorthand | |
| # }}} | |
| opts << "--with-features=#{feature}" | |
| interps = opt_val(ARGV.find {|s| s =~ /^--enable-interp=/ }) || "" | |
| interps = interps.split(/,/) | |
| # For compatibility and convenience {{{ | |
| interp.each do |i| | |
| if ARGV.include? "--#{i}" | |
| interps << i | |
| end | |
| end | |
| # }}} | |
| interps.uniq! | |
| interps.each do |i| | |
| opts << "--enable-#{i}interp=yes" | |
| opts << "--with-lua-prefix=/usr/local" if i == "lua" | |
| end | |
| system "./configure", | |
| "--disable-gui", | |
| "--without-x", | |
| "--disable-gpm", | |
| "--disable-nls", | |
| "--with-tlib=ncurses", | |
| "--enable-multibyte", | |
| "--prefix=#{prefix}", | |
| "--mandir=#{man}", | |
| *opts | |
| system "make install" | |
| end | |
| end |
I got the error:
/usr/bin/patch: **** Can't open patch file 065-homebrew.diff : No such file or directory
Error: Failure while executing: /usr/bin/patch -f -p0 -i 065-homebrew.diff
I made a slight modification to the fork by telemachus to make using the homebrew python easy https://gist.github.com/2402135
when you use --use-brew-python flag it will add the option "--with-python-config-dir=/usr/local/lib/python2.7/config"
This is just for my understanding. Why not just use MacVim? I run MacVim on OS X in my terminal with a simple alias, but also get the option to run it as a full windowed app.
in my .bashrc
alias vim="mvim -v"
alias vi="mvim -v"
Is there something I'm missing about MacVim vs Vim?
Thanks.
Vim is updated more often than MacVim from my understanding at least.
@uasi ここの version 、一旦 to_s しないとエラー出るようになってるっぽいですよ。
patch_level = version.split('.').last.to_ilatest version of brew does not allow split directly, use to_s like in this: https://gist.github.com/3423922
I have problem installing vim with anaconda Python. All plugin with Python code are not working. Is there a way to circumvent this problem ?
@telemachus Thanks, that will reduce build time and server load!
(As a side note, I've chosen not to use Mercurial to fetch a specific version of Vim because:
--HEADto fetch the most recent revision with Mercurial, likebrew install vim --HEAD, and