jedi-vim 使ってみます.
Vimのスニペット補完の設定はいい感じに動いたので,いよいよjedi-vimを導入しようと思います.
vimでpython3を書く時のおすすめの補完設定 - kazy no blog
[vim]python補完プラグイン「jedi-vim」を快適にする方法(jedi-vim+neocomplete) - dackdive's blog
このお二方の記事が大変参考になりました.
ありがとうございます.
で,やったことは,
jedi-vimのインストール
.vimrc
に
NeoBundle 'davidhalter/jedi-vim'
を追記して,jedi-vimの導入.
ちなみに,NeoBundleでプラグイン管理しています.
Shougoさんのプラグインを活用させて頂いています.
いつもありがとうございますm( )m
そんでもって,Vimのコマンドモードで:source ~/.vimrc
を実行.
NeoBundleInstallのダイアログ(GVim使ってます)が出てくるのでyesを選択.
これでプラグインがダウンロード&インストールされます.
それだけではダメみたいでさらに,~/.vim/bundle/jedi-vim/jedi/
に移動して,
git submodule update --init
を実行しました.
jedi-vimの設定も追記
.vimrc
に
"------------------------------------------------------------ " jedi-vim Setting autocmd FileType python setlocal omnifunc=jedi#completions let g:jedi#completions_enabled = 0 let g:jedi#auto_vim_configuration = 0 if !exists('g:neocomplete#force_omni_input_patterns') let g:neocomplete#force_omni_input_patterns = {} endif g:neocomplete#force_omni_input_patterns.python = '\h\w*\|[^. \t]\.\w*' "------------------------------------------------------------
と追記して,再び:source ~/.vimrc
を実行.
すると......
お,補完できています!
参考にさせていただいた記事のお二方,ありがとうございます!
Pythonの勉強もがんばろーっと.
VimのNeoSnippetの設定
MBPでのメインエディタはMacVimを使おうと頑張っているCon_Humiです.
macvim-kaoriya - MacVim KaoriYa - Google Project Hosting
このエディタでPythonのコードを書こうと思っていて,
を使いたいなーと思っています.
Shougo/neocomplete.vim · GitHub
とShougo/neosnippet.vim · GitHub
と
連携できたらと思っているのですが,どうやらスニペットの展開がうまく出来ないので,
NeoSnippetの設定を見直しました.
" ------------------------------------------------------------ " NeoSnippetの設定 if neobundle#tap('neosnippet.vim') call neobundle#config({"autoload": {"insert": 1}}) function! neobundle#tapped.hooks.on_source(bundle) " Plugin key-mappings. imap <C-k> <Plug>(neosnippet_expand_or_jump) smap <C-k> <Plug>(neosnippet_expand_or_jump) xmap <C-k> <Plug>(neosnippet_expand_target) " SuperTab like snippets behavior. imap <expr><TAB> neosnippet#expandable_or_jumpable() ? "\<Plug>(neosnippet_expand_or_jump)": pumvisible() ? "\<C-n>" : "\<TAB>" smap <expr><TAB> neosnippet#expandable_or_jumpable() ? "\<Plug>(neosnippet_expand_or_jump)": "\<TAB>" " For snippet_complete marker. if has('conceal') set conceallevel=2 concealcursor=i endif endfunction call neobundle#untap() endif " ------------------------------------------------------------
NeoSnippetのGitHubで紹介されている設定をneobundle#tap
と'neobundle#untap'で囲って
プラグインが読み込まれたタイミングで設定が有効になるようにしていた(のだと思う)のですが,
これが良くなかった模様.
" ------------------------------------------------------------ " NeoSnippetの設定 " Plugin key-mappings. imap <C-k> <Plug>(neosnippet_expand_or_jump) smap <C-k> <Plug>(neosnippet_expand_or_jump) xmap <C-k> <Plug>(neosnippet_expand_target) " SuperTab like snippets behavior. imap <expr><TAB> neosnippet#expandable_or_jumpable() ? "\<Plug>(neosnippet_expand_or_jump)": pumvisible() ? "\<C-n>" : "\<TAB>" smap <expr><TAB> neosnippet#expandable_or_jumpable() ? "\<Plug>(neosnippet_expand_or_jump)": "\<TAB>" " For snippet_complete marker. if has('conceal') set conceallevel=2 concealcursor=i endif " End NeoSnippetの設定 " ------------------------------------------------------------
読み込みタイミングの指定をなくしたらすんなり動作しました.(なんでだ?)
記事を書いていてもあやふやな部分が多いのでもう少しNeoBundleとVimScriptの勉強をしないとですね.
本買いました
何冊か本買いました.
いろいろ積み本あるから,勉強しなくては.
買った本+現在の積み本はコチラ↓
パーフェクトPython (PERFECT SERIES 5)
- 作者: Pythonサポーターズ,露木誠,ルイス・イアン,石本敦夫,小田切篤,保坂翔馬,大谷弘喜
- 出版社/メーカー: 技術評論社
- 発売日: 2013/03/05
- メディア: 大型本
- 購入: 1人 クリック: 65回
- この商品を含むブログ (24件) を見る
リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)
- 作者: Dustin Boswell,Trevor Foucher,須藤功平,角征典
- 出版社/メーカー: オライリージャパン
- 発売日: 2012/06/23
- メディア: 単行本(ソフトカバー)
- 購入: 68人 クリック: 1,802回
- この商品を含むブログ (119件) を見る
コーディングを支える技術 ~成り立ちから学ぶプログラミング作法 (WEB+DB PRESS plus)
- 作者: 西尾泰和
- 出版社/メーカー: 技術評論社
- 発売日: 2013/04/24
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (32件) を見る
Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)
- 作者: 山本陽平
- 出版社/メーカー: 技術評論社
- 発売日: 2010/04/08
- メディア: 単行本(ソフトカバー)
- 購入: 143人 クリック: 4,320回
- この商品を含むブログ (180件) を見る
Vimテクニックバイブル ?作業効率をカイゼンする150の技
- 作者: Vimサポーターズ
- 出版社/メーカー: 技術評論社
- 発売日: 2011/09/23
- メディア: 単行本(ソフトカバー)
- 購入: 19人 クリック: 661回
- この商品を含むブログ (39件) を見る
- 作者: ハーバート・シルト,神林靖,トップスタジオ
- 出版社/メーカー: 翔泳社
- 発売日: 2010/10/20
- メディア: 大型本
- 購入: 8人 クリック: 14回
- この商品を含むブログ (3件) を見る
あぁ,勉強しなくては.
Vagrant おん CentOS6.5 おん Python 2.7 & 3.3 & virtualenv
VirtualBoxをVagrantで操作して開発環境に使おうと考えています.
ということで,Pythonの開発環境を構築した時のメモです.
仮想マシンの用意
なにはともあれ,仮想マシンを用意します.
VirtualBoxとVagrantはインストール&設定されているとして.
1. 仮想マシンのboxイメージをVagrantに登録
Vagrantでいう仮想マシンのOSに相当する(と思っている)boxイメージをVagrantに登録します.
A list of base boxes for Vagrant - Vagrantbox.es
このページから仮想マシンのboxイメージを探して,
気に入ったものを見つけておきます.
今回は
CentOS 6.5 x86_64
https://github.com/2creatives/vagrant-centos/releases/download/v6.5.3/centos65-x86_64-20140116.box
というboxイメージを利用させてもらいました.
作者の方,ありがとうございます.
で,Vagrantにこのboxイメージを登録するには,
$ vagrant box add boxの名前 boxイメージのURL
とします.
[boxイメージのURL] には,先ほど記述したURLを入れます.
[boxイメージの名前]には,わかりやすい名前を任意で設定します.
ここでは,centos6_5 とします.
2. 仮想マシンの作成
次に,仮想マシンを作成します.
任意の作業ディレクトリに,仮想マシン用のディレクトリを作成します.(その後移動します)
$ mkdir vagrantVM && cd vagrantVM
仮想マシンのディレクトリで,
$ vagrant init centos6_5
すると,Vagrantfile なるものができるので,それを確認します.
そのままそのディレクトリで
$ vagrant up
すると,仮想マシンが起動します.
3. 仮想マシンにsshして作業
仮想マシンにログインして作業するには,
$ vagrant status
コマンドでマシンが起動していることを確認しておいて,
$ vagrant ssh
でログインできます.
これでいくらでも仮想マシンをゴニョゴニョ出来ます.
仮想マシンの作成で作成した仮想マシンディレクトリ(今回の例ではvagrantVM
)と,
仮想マシン上の /vagrant
ディレクトリがシンボリックリンクされています.
「ホストのアプリケーションで仮想マシンのファイルを編集して,仮想マシンの実行環境で試す」
ということが可能です.
仮想マシンにPythonの開発環境をいんすとろーる
本題のほうです.
仮想マシンで使っているCentOS6.5のデフォルトのPythonのバージョンは2.6です.
Pythonの最新バージョンは,2系統が2.7,3系統が3.4です.
CenOS6.5にPythonのvirtualenv環境とPython2.7、Python3とmod_wsgiをインストールする | Python Knowledge
こちらのサイトを参考にセットアップしました.
3系統の最新バージョンは3.4ですが,3.3を使うことにします.
Python3.4もyum
でインストールできそうです.
手順通りに進めてインストール出来ましたが,
仮想環境を作るmkvirtualenv
コマンドが実行できずにつまづきました.
mkvirtualenvコマンドにパスを通す必要があります.
そこで下記,
Python Django入門 (2) Mac編 - Qiita
Qiitaのkaki_kさんの記事を参考にさせていただき解決です.
.bashrc
の設定内容で
source /usr/local/bin/virtualenvwrapper.sh
とある部分を,自分の環境に合わせて
source /usr/bin/virtualenvwrapper.sh
とします.
これでmkvirtualenv
コマンドを使うことが出来ました.
で,結果のスクショをドヤ顔で(笑)
Pythonを勉強してみよーっと.
あ,新年だ.
あけましておめでとうございます.
管理人のCon_Humiです.
さっきの投稿をした後に新年であることに気づきました.
昨年中を振り返ってみると,
早いうちに内定を頂いたので,就職活動が早々に終了し,
研究に専念できるかとおもいきや,自分の堕落した生活のせいでそうも行かず,
一方で,他の内定者の皆様との交流を通じで,沢山の刺激を得られた年でした.
趣味の音楽の活動でも,沢山の刺激を受けることが出来ました.
それもこれも,支えてくださっている沢山の方々との出会いのお陰です.
本当にありがとうございます.
今年の4月には就職で,気の引き締まる思いです.
仕事と両立しながら,開発メモを量産できるよう,
自己研鑚に励んでいきたいと思います.
当ブログを読んでくださっている皆様,ありがとうございます.
駄文が多くなるかもしれませんが,本年もよろしくお願いいたします.
NAS4FreeがTimeMachineのバックアップ先に指定できないよ
こんにちは.
昔の記事
で紹介しましたがMicroServerにNAS4Freeをインストールして,
ファイルサーバーにすることは出来ました.
なぜだか,TimeMachineのバックアップ先に指定できない
こちらの記事↓
NAS4Free で Time Machine サーバーを実現する - Ellinikonblue.com Weblog
を参考にさせてもらいながら,AFPを設定し用としたのですが,
なぜだか僕の環境ではTimeMachineのバックアップ先として
MBPが認識してくれません(T T)
AFPは記事の通り設定すればMacから見れるようになります.
TimeMachineのバックアップストレージの認識のあたりでコケてるのかな?
そもそも,バージョンが異なるからか,NAS4FreeのAFPの設定項目が足りないし...
原因調査してまた書きます.
MicroServer N54LをNASにする
HPのProLiant MicroServer N54L
を1台所有していて,CentOSをインストールして
ファイルサーバとして動かしています.
↑自室ではこんなかんじです.(汚くてすみません)
で,そのMicroServerをMBPのTimeMachineストレージとして使おうと思ってるわけです.
CentOSでも設定すれば出来ないことはないのだと思うのですが,
サーバーにログインして作業することはほぼないので,デスクトップLinuxである必要はないかなと思い,
試しにNAS専用のOSインストールして,バックアップ&ストレージサーバーを構築したいと思います.
ZFSというやつを使ってみたかったのもあります.
FreeNASかNAS4Freeか
NAS用のOSといえば,
* FreeNAS
* NAS4Free
のあたりが有名かと思います.(他にもいろいろあるみたいだけど)
FreeNASとそこから派生したNAS4Free,それぞれ特徴はあるのですが,
基本的な機能はあまり変わらなそうな感じだったので........
なんとなく,NAS4Freeにしてみます.
ダウンロード
公式サイトからダウンロード出来ます.
そいつをCDに書き込んで起動ディスクを作ればOK
インストール
とりあえず起動CDで起動してしばらく待つとメニューが表示されるので,
インストールしてくれそうなやつを選択.
あとはインストールウィザード的な物の問に答えていけばOK.
HDDだけではなく,USBメモリにもインストールできます.
BIOSでUSBブートを設定すればHDDの容量をフルに使えます.
エンターキーと矢印キーでインストールできちゃいます.簡単.
初期設定
CDを取り出して,起動ドライブから起動.
しばらく待つとさっき見たようなメニューが出てきます.
ここで,IPアドレスの指定はしておいた方が良いかと思います.
あとは設定したIPアドレスにブラウザでアクセスすると,
WEB設定画面が見れるので,そこで設定していきます.
設定覚書
ここからは,設定した内容を随時更新で備忘録的に書いていきます.