rvm+bundler で便利生活
rvmとbundlerを併用して,複数のバージョンのruby,複数のgemを管理する.
なぜrvmだけではダメなのかというと,rvmのgemsetでは複数のgemが必要なgemsetを用意する際に必要なだけ
gem install hoge
と指定してやらなければならないし,
アプリごとにgemを使い分けるということがしにくい
(gemsetの量がアプリ分だけ増えてしまいどのアプリにどのgemsetを割り当てていたかが分からなくなる)
bundlerがあればアプリごとに必要なgemをインスコできる.
その際Gemfileに適当な感じで記述してやって,railsアプリ用に作成したディレクトリで
bundle install --path vendor/bundle
とすることで,gemの依存関係とかをよしなに取り計らってくれる.
だからrvmで複数バージョンのrubyの管理を,bundlerでアプリごとに必要なgemの管理をそれぞれ分担したほうが楽.
ーーという理解でいいのだろうか.
つまり,rvmのgemsetは使わずにbundlerでgemを管理するってことだよね?
複数のバージョンのrailsの管理は,rvmのgemsetを使えば良いかな.
追記:2012・12・6
いや別にrailsの管理もbundlerですればおkか.
carry a cheese 0107
- 方針:
- 筋道:バブルソートを使ってみたかった.まあ数が3つしかないのでソートとかしなくていいとおもう.
3種類の対角線の長さを計算して円の半径よりも小さい値が一つでもあればおkである.バブルソートはほぼコピペ
- code:.c
//carry a cheese 0107 AOJ #include <stdio.h> #define MAX 10000 int BubSort(int cheese[], int n) { int i, j, temp; for (i = 0; i < n - 1; i++) { for (j = n - 1; j > i; j--) { if (cheese[j - 1] > cheese[j]) { /* 前の要素の方が大きかったら */ temp = cheese[j]; /* 交換する */ cheese[j] = cheese[j - 1]; cheese[j - 1]= temp; } } } } int main() { int cheese[3]; //チーズのx,y,h int n; //入り口の個数 int r[MAX]; //それぞれの入り口の半径 int i,j; while (1) { scanf ("%d %d %d", &cheese[0], &cheese[1], &cheese[2]); if (cheese[0]==0 && cheese[1]==0 && cheese[2]==0) break; scanf ("%d",&n); for (i = 0; i < n; i++){ scanf ("%d",&r[i]); } BubSort(cheese, 3); for (j = 0; j < n; j++){ if (cheese[0]*cheese[0] + cheese[1]*cheese[1] < (2*r[j]) * (2*r[j]) ) { printf ("OK\n"); }else printf ("NA\n"); } } return 0; }
yasnippetのポップアップ問題解決!!!!!!!!!!!!!!!!!!!!!!!
yasnippet - ヨッパ谷のドロンジョ様へ
上記問題の暫定的解決
やった!
やはりちゃんと一次情報であるソースを見るべきですね!
yasnippet.elを見てみると,コメント中にこのような記述を発見しました.
;; The `dropdown-list.el' extension is bundled with YASnippet, you ;; can optionally use it the preferred "prompting method", puting in ;; your .emacs file, for example: ;; ;; (require 'dropdown-list) ;; (setq yas/prompt-functions '(yas/dropdown-prompt ;; yas/ido-prompt ;; yas/completing-prompt))
yasnippetディレクトリ内に
dropdown-list.elというポップアップ表示に関連しそうなelispファイルを発見して,
yasnippet.elでどのように使われているのか覗いてみよう!と思い立ったのがこの結果につながりました.
コメントにあるようにdropdown-listをrequireすると,当初のポップアップウィンドウとはUIが異なるドロップダウンリストウィンドウと思われるUIが表示されました.ちゃんと,ポップアップ(ドロップダウンリスト)内の移動もC-n,C-pでできます!めでたしめでたし.
それにこっちのUIの方がかっこいい.