brew search vim그런데 정작 vim은 없고 macvim만 보인다. MacVim은 이미 설치되어 있지만 잘 안쓰는데 -_-;;;
뭔가의 이유로 공식적으로 아직 포뮬라가 안올라와 있나보다.
이유야 어쨌든 HomeBrew로 설치를 못 하는 건 아니다. 포뮬라를 직접 지정하면 된다. 구글링을 통해 다음 페이지를 찾았다.
https://gist.github.com/721952/0b2428d75052548b90e9b1d28553f4c9f56f8a0a
포뮬러 소스가 올라와있다. 소스 우측 상단의 raw 버튼을 눌러서 나오는 페이지의 URL을
brew install 다음에 써 주면 된다. 현재 시점에서 정확한 명령은 다음과 같다.brew install https://raw.github.com/gist/721952/35c801d0f446af8e20c4661228a2bc0634ca8c1d/vim.rb이 코드가 업데이트되면 url이 바뀔 수도 있다. 접속이 안된다고 여기에 따지면 곤란하다. -_-;;
이전 MacPort로 설치했던 때와 비슷하게 이번에는 패치를 무지막지하게 다운받더라. 하여간 빌드도 성공되고
vim --version으로 버전 확인도 OK.위 포뮬라로 설치한 vim에는 python 지원 등의 기능이 빠져있다. 그래서 해당 포뮬라를 다운 받아서 일부 옵션을 추가했다.
우선 기존 vim을 지워야 새로 설치할 수 있다. 그냥 brew uninstall vim 하면 지워질 줄 알았더니 no such keg 오류가 발생한다. 그래서 다음 커맨드로 강제로 삭제했다.
brew remove -force vim
그리고 다음 내용을 vim.rb라는 파일에 쓰자.
require 'formula'
class Vim <Formula
url 'ftp://ftp.vim.org/pub/vim/unix/vim-7.3.tar.bz2'
homepage 'http://www.vim.org/'
md5 '5b9510a17074e2b37d8bb38ae09edbf2'
def patchlevel; 69 end
def features; %w(tiny small normal big huge) end
def options
features.map {|f| ["--#{f}", "Configure with --with-feature-#{f}"] }
end
def patches
patches = (1..patchlevel).map {|i| sprintf('ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.%03d', i) }
{:p0 => patches}
end
def install
feature = features.find {|f| ARGV.include? "--#{f}" } || "normal"
system "./configure",
"--with-features=huge",
"--enable-rubyinterp",
"--enable-pythoninterp",
"--enable-cscope",
"--with-python-config-dir=/usr/local/Cellar/python/2.7/Frameworks/Python.framework/Versions/2.7/lib/python2.7/config",
"--disable-gui",
"--without-x",
"--disable-gpm",
"--disable-nls",
"--with-tlib=ncurses",
"--enable-multibyte",
"--with-feature-#{feature}",
"--prefix=#{prefix}",
"--mandir=#{man}"
system "make install"
end
end
잘 보면 configure 시 brew로 python2.7을 설치하면 생성되는 디렉토리 정보들이 기록되어 있다. 만약 다른 것, 예를 들어 Mac OS X에 기본적으로 설치되어 있는 python을 이용할 것이라면 그 경로로 바꿔줘야 할 것이다.이 포뮬라를 이용해 설치한다. (아래 명령은 현재 디렉토리에 vim.rb 파일이 있다고 가정한 것이다)
brew install ./vim.rb
ruby나 lua 등의 지원에는 경로 정보가 없는데 동작 여부는 확인되지 않았다. 동작 안한다면 알아서 옵션을 추가해 줘야 할 것이다. 더 많은 지원이 필요하다면 그냥 정식 vim이 올라오길 기다려야 할지도 모르겠다. -_-;;
추신) 여기서 python 지원 기능이란, vim 스크립트에서 python을 사용할 수 있게 하는 것을 의미하는 것이다. python 코딩 자체와는 관계가 없다.
0 comments:
댓글 쓰기