githubに追加して欲しいstarのコメント機能
githubでstarしたリポジトリをあとで検索しやすいように、starした時に合わせてコメントをつけれるようなuser scriptを書いてみた(動作はchromeのみでしか試してません)
先週末にqiitaのハッカソンがあって、そこにgithubの人が来ていたので
その日にdemo作って、この機能を入れて欲しいとプレゼン時に発表した。伝わったかは分かりません..
starの検索周り強化してほしいのだ!!
第4回『Rubyで何か作ろう会』開催します
少し先になりますが、3/2日(土)に第4回目のRubyで何かつくる会を開催します。
(前回は13名の方に参加頂きました!ありがとうございます!!)
以前まで、成果発表の後にすぐに解散(打ち上げに参加できる方は居酒屋へ・・)という形をとっていましたが
打ち上げに参加できない方もいるなぁーと思い、、成果発表後にミニ懇親会という時間を用意して
打ち上げにでれない方も参加者同士でわいわい交流ができたらなと思います。
「未経験者でも大丈夫ですか?」
「成果発表はどんな形式ですか?」
と参加希望の方から質問を頂くことがよくありますが、未経験者でももちろんモーマンタイですし、成果発表はプロジェクターを用意して・・などという形ではなく、その場で口頭にて発表する形ですので、肩の力を抜いてお気軽にご参加ください。
@honbin まっています!!
フォルダ間の移動を高速に「どこでもどあゔぃむー」
※音量をあげ、再生ボタンを押しましたら、さーご一緒に
こんなこといいな できたらいいな
あんなゆめ こんなゆめ いっぱい あるけど
みんなみんなみんな かなえてくれる
ふしぎなプラグインで かなえてくれる
ふぉるだかんのいどうを こうそくに
「ハイ!コントロールピーヴィムー」
アン アン アンッ とってもだいすき ヴィム エーディーター
この記事はVim Advent Calendar 2012 43日目の記事になります。
前回の記事は@takochuuさんのtagbar + ctagsでウキウキ新生活!という記事でした。オシャンティ!
経緯のお話し
rails.vimやcake.vimのようにプロジェクトの各フォルダ間移動を、独自MVCで作られたプロジェクトにても… :Rmodel、:Rcontrollerと各フォルダへ高速に移動できるプラグインが欲しいので作ろう..と意気込んでいたのですが、年始にごにょごにゅしているうちにctrlp.vimの拡張機能を使って近しいことができることを発見したので、そのトピックを2つほど紹介してみたいと思います。
「どこでもどあー ゔぃむー」のctrlp拡張プラグインを入れる
※尚、ctrlp.vimはgithubからcloneして最新版を入れて上げてください
プラグインというより、コマンドをただただ提供しているだけのプラグインです。
名前は「どこでもドア」にインスパイアされて命名してみました。
ctrlpのソースを呼んでたところ、ctrlp#initの第2引数にパスを渡してあげると、そこからファイル検索ができるよう仕組みが分かったので、プラグイン?とは言い難いのですがちょこっと実装して拡張してみました。
インストール方法は、上記URLのpluginフォルダにあるctrlp-dokodemo-doa.vimを ctrlp.vim/plugin/のポケットにいれてあげて、vimrcに下記設定を書いてあげれば、いつでもドラえもんがポケットから取り出してくれます。
let g:ctrlp_dokodemo_doa_settings = { \ 'YourProject' : { \ 'app_path' : '/path/to/your_project/', \ 'available' : 1, \ 'role_paths' : { \ 'controller' : 'app/controllers/', \ 'model' : 'app/models/', \ 'view' : 'app/views/' \ } \ }, \ 'YourProject2' : { \ 'app_path' : '/path/to/your_project2/', \ 'available' : 0, \ 'role_paths' : { \ 'controller' : 'app/controllers/', \ 'model' : 'app/models/', \ 'view' : 'app/views/' \ } \ }, \}
ctrlp_dokodemo_doa_settingsの第1階層がプロジェクトのキーとなっており、そのキーとその配下のrole_pathsのキーがそのままコマンドとして適用されます。
※キーの設定はユーザーコマンドの命名規則(半角英数)に従って名前付けをしてあげてください。
上記vimrcの設定ですと
:CtrlPDDYourProjectcontroller :CtrlPDDYourProjectmodel :CtrlPDDYourProjectview
の3つのコマンドが適用されます。尚、CtrlPDDはプレフィックスとなっています。
上記適用されたコマンドを入力し、目的の場所にてctlpのウィンドウが開きましたら、後は<c-h>、<c-v>、<c-t>とお好みの開き方でファイルを開いてあげたり、そのディレクトリ配下にてファイルを作成 or フォルダを作成したい場合は、ファイル名 or 作成したいフォルダ(フォルダを含む場合はhoge/hoge.rb)を入力して<c-y>で作成してくれます。ここはctrlp.vimの標準機能ですね、詳しくはドラエモンにhelpを参照してください。また上記設定のように、複数プロジェクトを抱えている..あ..設定をしますと、沢山のコマンドが羅列されて選択が大変でしたので、availableの有効設定値を設けてコマンドの非表示設定をできるようにしました。
複数人でこういうプロジェクトの開発をしていると、変なところにプログラムがおかてしまったり… とドキュメント関連とか整備されていればあれなのですが、ドキュメントなんて見ないことがほとんどですので、コマンド入力からフォルダ移動を強制するという意味で有効ではないかと思ったりしました。
名前についてはみんな大好きなドラえもんの道具を命名することで、Vimに取っ付きにくかった人も、名前から興味ができて一歩を踏み出すきっかけが 「できたらいいなー あんなゆめ こんなゆめ.. 」..失礼、よかったら是非使ってみてください。
:CtrlPBookmarkDirAddコマンドを使おう
ctrlp標準の拡張として提供されている機能です。
:CtrlPBookmarkDirAdd :CtrlPBookmarkDir
各ディレクトリパスをブックマーク登録することができて、登録されたブックマークからファイル検索できるような仕組みが提供されております(この機能を使えば全てよかったんじゃ..)
最後に
ctrlpは先日上がったエントリのように、拡張機能を簡単に作れる仕組みがあるので 今度はもう少し突っ込んだプラグインを作ろうと思います。まだctrlp自体使っていない方がいましたら、ライフチェンジングなプラグインなので是非使うことをお勧めしますです。使い方はmattnさんの記事が非常に参考になると思います。
明日は@yomi322さんです!
そんじゃーね!!!!!
action_not_foundというをgemを作ってみました
routesに定義されているけど、コントローラーにアクション定義されていないものをrakeタスクにて確認するrails用のgem
rake action_not_found
を実行すると
examples GET /examples(.:format) examples#index POST /examples(.:format) examples#create #=> not found action tests GET /tests(.:format) tests#index #=> not found controller file root / examples#index 4 routes, 1 not found actions, 1 not controller files
こんな感じで出力されます。
次のバージョンにて定義されていないアクションのroutes修正案を出力できたらいいなと
https://github.com/honbin/action_not_found
(正規表現でやるのよくない気がしてきたし・・・テスト・・)
# -*- coding: utf-8 -*- コピペ面倒くさい..
ということで、Vimの:autocmdの機能使って、rb拡張子でファイルを新規作成した場合に
「# -*- coding: utf-8 -*-」がファイルに自動挿入されるように作業を省略した話
(vimテクニックバイブル P45に書いてあります)
スケルトンファイル作成(任意の場所)
$ mkdir ~/.vim/templates $ vi ~/.vim/templates/skeleton.rb
~/.vim/templates/skeleton.rb
# -*- coding: utf-8 -*-
~/.vimrc
augroup templateload autocmd! autocmd BufNewFile *.rb 0r ~/.vim/templates/skeleton.rb augroup END
うぃいー
第10回『PHPで何か作ろうかい(会)』 レポート
今回の参加者のテーマは・・
- html5の勉強 @kongqiue
- cakePHPでECサイト作成 @fumiyasac
- ライブ・クラブブスケジュール情報サイト作成 @biftech
- パーフェクトPHPの書籍を参考に、自作フレームワークの作成 @ryo utsunomiya
- PHP+flash+mysql を使った、ゲーム作成 @day_of_the_vampires
- 日めくりカレンダーbot作成 @oh-sky
- fluentdの勉強 @ゴルフなう
- PHP、mysqlを使ったサンプル作成 @しるこ
- git勉強 @sasato
- wordpressを使って既存サイトのテンプレート化 @yakimanjusuki
- 求人サイト作成 @imady
- 学生向け、宿題を教えある画像共有サイト作成 @ishitah
個人で作りたい・作っているサービスの開発を進めたり、新技術の勉強を行う人
そして、基礎技術の勉強を行う方と、テーマはいつもながらバラバラでしてたが
今年最後の勉強会
12月8日(土)に実施する勉強会で今年、計11回の勉強会を開催しました。
いつも参加して頂ける方や、開催を後押ししてくれる社長と
沢山の力添えがあって続ける事が出来たのかなと思っています。
勉強会の参加者になんでこの勉強会をやっているの?とよく質問を頂きますが
- 作りたいと思ったものを始めるきっかけ作り
- 作りたいものを作り続ける
- 困った事を気軽に聞ける
そんな場を提供したいなと昔から思っていて、この会を通じて行っているという感じです。
(そういった場がなく、悩んでいる方を講師時代にみてきていることもあり)
あとは、プログラミングを書く機会が減ってきている自分への危機感から
書き続ける場として自分のためにやっている、というのも1つの理由です
来年も今年同様にこういったリアルな場を提供し続けるとともに
いつでも質問できる場をWEBか何かでも提供したいなと思います。
- 作っている物があるんだけど、行き詰まっている
- 作りたい物があるんだけど、何から始めればいいか分からない
- 作っている物があるんだけど、なかなか進まない
な方がいましたら、是非お気軽にご参加ください。
いつでも@honbin待っています!
P.S. 温泉合宿ですが、都合がつかず、今年できなくてすいません・・