2013年3月14日木曜日

jedi-vim in virtualenv(Mac OS X 10.8)

小さいPythonのコードを書くのに一々Eclipseを使うのもなんかなあと思うところがあったので(エクスプローラーバーでディレクトリ開いたり面倒くさい)vimにjedi-vimを入れてPythonの補完を使ってみることにしました。環境はOS X 10.8 vim:ver.7.3です。
こちらを参考に、普通に入れていきます。 ただ、プラグインの管理が面倒なので、折角の機会ということで今までずっとノーマルの状態で使ってきていたvimの環境をちょっと構築することにしました。

NeoBundleを使います。 書いてあるとおりにすれば特に問題なくNeoBundleの設定も済むと思います。一応、シェルでのコマンド類と、.vimrcの関係ある部分を貼っておきます。(NeoBundleの最後の二行が増えただけです )

terminalで

git clone https://github.com/Shougo/neobundle.vim ~/.vim/bundle/neobundle.vim
git clone https://github.com/Shougo/vimproc ~/.vim/bundle/vimproc


で、~/.vimrcの中身

" NeoBundle系
set nocompatible " be iMproved
filetype off
if has('vim_starting')
  set runtimepath+=~/.vim/bundle/neobundle.vim
  call neobundle#rc(expand('~/.vim/bundle'))
endif
" Original Repository on Github
NeoBundle 'Shougo/neobundle.vim'
NeoBundle 'Shougo/vimproc'
NeoBundle 'VimClojure'
NeoBundle 'Shougo/vimshell'
NeoBundle 'Shougo/unite.vim'
NeoBundle 'Shougo/neocomplcache'
NeoBundle 'Shougo/neosnippet'
NeoBundle 'jpalardy/vim-slime'
NeoBundle 'scrooloose/syntastic'
" jedi-vim系
NeoBundle 'jmcantrell/vim-virtualenv'
NeoBundle 'davidhalter/jedi-vim'
filetype plugin indent on


参考にしているページに書かれていますが、virtualenv-vimがちゃんとインタプリタ(というか、仮想環境全体)をsys.pathに追加してくれてるのでjedi-vimをいじらなくても勝手にうまいこと行くみたいですね。ちゃんとシェルの設定ファイルに
export $WORKON_HOME='/path_to/virtualenvs'
書いといてあげましょう。
あとは、jedi-vimを入れれば動きます(動くはずです)。
こんなかんじに。

因みにjedi-vimが入ってない状態(python -c 'from jedi import *'したらImportErrorで怒られる)だと、補完はもちろん効きませんしモジュールの名前のあとにドットを入れた瞬間大量のエラーを吐かれます。
↓こんな感じのエラー
Error detected while processing function jedi#complete:
line 1:
Traceback (most recent call last):
Error detected while processing function jedi#complete:
line 1:
  File "<string>", line 1, in<module>
Error detected while processing function jedi#complete:
line 1:
NameError: name 'jedi_vim' is not defined
Error detected while processing function jedi#complete:
line 1:
Traceback (most recent call last):
Error detected while processing function jedi#complete:
line 1:
  File "<string>", line 1, in <module>
Error detected while processing function jedi#complete:
line 1:
NameError: name 'jedi_vim' is not defined


僕はこれで少し躓きましたが…。大概のエラーに関してはGithubのjedi-vimのissuesを見れば解決すると思います。


2013年1月16日水曜日

Arch Linux ARM On Raspberry Pi

Raspberry Piを購入していたのですが色々忙しくて何もできていなかったので今更ながらのOSインストール記事になります。
出来るだけ動作を軽くしたかったのでDebianではなく敢えてArchLinuxを選びましたが…
Mac OSX10.8上でインストール作業を行いました。

  1. とりあえず公式ダウンロードサイトからArchLinuxのimgをダウンロードしてきます。
  2. df -h

    コマンドを利用してSDカードのマウントポイントを確認(ここでは /dev/disk2s1とします)
    アンマウントします。
    diskutil unmount /dev/disk2s1

  3. imgファイルのあるディレクトリまで移動して、書き込みを行います。
    sudo dd if=archlinux-hf-2012-09-18 of=/dev/rdisk2 bs=1m

    disk2s1とかすると失敗します、色々見ているとそこで引っかかった方が多いようです。
  4. コピーが終わったら完了です。LANケーブルとか画面、キーボードを繋いでからマイクロUSBケーブルを繋ぎましょう、起動します。ダウンロードサイトにあるように、
    ID:root Password:root
    で入ります。で、あとは普段通りに色々インストール…僕の時はなぜかパッケージのミラーサイトが落ちていたようで、archlinuxarm.orgのミラー一覧から適当なところにアクセスして、/armv6h ディレクトリからwgetで落としてくる事になりました…ココから落とした pkg.tar.xz ファイルは
    pacman -U <パッケージのファイル名>

  5. で入ります。
  6. 以上で準備は出来たと思います。お疲れ様でした。