Mac一から備忘録

Macで一から整えていった環境について公開

【rails】delayed_job

・概要

簡単に重い処理を非同期に設定してくれる

collectiveのリポジトリのほうが開発がお盛んとのこと

 

・目的

ActiveMailerのmail()で返ってくるMessageインスタンスのdeliverメソッドがうんこみたいに遅いのでそれを非同期にしたい

 

・使い方

Gemfileにdelayed_job_active_recordを追加

rails g migration delayed_job:active_record

rake db:migrate

Hoge.method 

ならHoge.delay.methodにするだけでおk

 

Hoge.fuga.deliverは

Hoge.delay.fuga

ここだけ特殊.

delayが勝手にdeliverもやってくれるらしい

 

・数々のエラー

とりあえずdelayを指定したメソッド内で自作moduleのメソッドを読んだらエラーがでる.

application.rbに自作moduleのパスは通しているのに?

 

 

エラー内容について普通に考える(最初に考えろ)

ようはdelayメソッド内ではutil_moduleが通っていないのが原因っていう単純なや〜つだろってことで、う〜ん,まあ違う方法でパスとおしゃいいんしょ。

 

掲示板とか公式ドキュメントを読むと,

config/initializers/custom.rbにincludeなりrequireなり書けばWorkerは認識しますとのこと

 

それに従うことでエラーは消えた

custom.rbにはutil_module.rbが通っているので単純に

include MyModule

だけでおk

 

・deliverが恐ろしく遅いのでこれ自体をもうデフォルトで非同期にしたいのだけど,やり方がわからん〜

公式に書かれているhandle_asynchronouslyがうまく動かんし疲れたしってか疲れた

ってことでとりあえずはHoge.delay.hugaMethodの形で使うことにする

 

日本語でかいちくり〜

Vimを導入その2

1. Unite.vim

emacsで言うanything

参考 : http://blog.sanojimaru.com/post/18534401804/unite-vim

 

2. Vimproc

説明はここ

http://vim-users.jp/2010/02/hack124/

まだ必要ないのでとりあえずあとまわし

 

3.インデント周り

とりあえず

Ruby PHP Python JavaScript HTML c

のインデント設定

 

4. ...の前に再ビルド

・+clipboard, +rubyとかにしたい

・make, configureについてはここ↓

http://www.itmedia.co.jp/help/tips/linux/l0302.html

・とおもったらできていた....

 

$ vim --version | grep ruby (clipboard)

 

 

おまけ

Vimのコマンド集. 特に10とかは今後覚えていく

http://iishikawa.s371.xrea.com/note/vim.xhtml#id2386712

Vimを導入

とりあえずVimをいれないと話は始まらない。

 Emacsで腱鞘炎になったのでVim.

 

1.とりあえず検索

google検索で「mac vim 初心者 設定」

  => macvimkaoriyaが一番目にヒット

・同「macvimkaoriya mac 初心者」

  => 初心者にもおすすめであることを知る

guiやけど設定でコンソールからも使える

・日本語化されている

・拡張もやりやすそう?

・拡張はNeoBundle がよい?[1]

Emacs に対応する便利機能 もあるという雰囲気を感じる[2]

2.macvim-kaoriyaの導入

最新版をdownload

 http://code.google.com/p/macvim-kaoriya/downloads/list

 

3.kaoriyaを指すように .bashrcを設定 ついでに日本語化

~/.bashrcにaliasの設定を追加。

言語を日本語に,vimをデフォルトからmacVim-kaoriyaに変更

alias vi='env_LANG=ja_JP.UTF-8 /Applications/MacVim.app/Contents/MacOS/Vim

alias vim='env_LANG=ja_JP.UTF-8 /Applications/MacVim.app/Contents/MacOS/Vim

 

4..vimrcの設定 ( カラースキーマの設定 )

とりあえずまとまってるページ[3]

syntax on " これでカラーリングされる

colorscheme elflord " カラースキームの設定

デフォルトで入ってるカラースキームリスト => http://nanasi.jp/colorscheme/default_install.html

[4]の2つ(黒)は確かに見やすい

参考にしたディレクトリ構成は[5]

 

 

ここまででとりあえずは使えるレベルにはなる。

 

 

5.NeoBundleInstall

最近公開された

vim拡張機能の管理を行う

すごさは[7]

インストールは[8]参考

 

6.for rails

rails.vim(http://qiita.com/items/57e726312ffe47592867)

=> 結局vim-railsにした

http://qiita.com/items/57e726312ffe47592867

 

これかなりまとまってるhttp://qiita.com/items/ab2ad83ddbaf2f6ce7fb

http://d.hatena.ne.jp/u16s/20111117/1321561015 

vimproc (http://qiita.com/items/e98da5e2708425d833c5)

  57 NeoBundle 'Shougo/neobundle.vim'

 58 NeoBundle 'Shougo/neocomplcache'

 59 NeoBundle 'Shougo/unite.vim'

 60 NeoBundle 'Shougo/vimproc'

 61 if has('mac')

 62   let g:vimproc_dll_path = $VIMRUNTIME . '/autoload/vimproc_mac.so'

 63 elseif has('win32')

 64   let g:vimproc_dll_path = $HOME . '.vim/bundle/vimproc/autoload/vimproc_win32.dll'

 65 elseif has('win64')

 66   let g:vimproc_dll_path = $HOME . '.vim/bundle/vimproc/autoload/vimproc_win64.dll'

 67 endif

 68 

 69 " for rails

 70 "NeoBundle 'rails.vim'

 71 NeoBundle 'tpope/vim-rails'

 72 NeoBundle 'The-NERD-tree'

 73 NeoBundle 'The-NERD-Commenter'

 74 NeoBundle 'dbext.vim'

 75 NeoBundle 'minibufexpl.vim'

今日はここまで

あとは入力保管,バッファ管理機能を強化

  

Refference

1. Code Link:“Vim初心者によるVim導入記録(インストール編)”, (08/2012).

2. Slow Dance:“EmacsからVimへ移行しました”, (09-06/2009).

3. “Vim の使い方

4. Input*Output:“自分が今まで使ってきたVimのカラースキーマの紹介”, (12-15/2012).

5. 名無しのvim使い:“vimエディタ・スターターマニュアル #7 (ホームディレクトリのファイル構成)

6. Curiosity Drives Me:“今年こそ始める!何度も挫折した人のためのモダンVim再入門”,(01/09/2012).

7. Shougo: “NeoBundle.vimについて+おまけ”, SlideShare, (11-04/2012).

8. takahiro_jinnoの日記: “vundleからneobundleに乗り換える”, (01-19/2012).

 

おまけ

rmのalias設定

http://d.hatena.ne.jp/yagiey/20100918/1284841276

 

疑問点

・zeshとbashの違い

・BSD(Bercley Software Distribusion)ってなんぞ => wikiで見る。疑問単語が増幅

・sudo chown -R $USER /usr/local

 

感想 

参考文献かくの面倒なのでもっと簡単にしよう