タグ

ブックマーク / route477.net (19)

  • gemを作るときに実行ファイルをbin/以下ではなくexe/以下に置くことについて - Route 477(2015-09-14)

    ■ [ruby] gemを作るときに実行ファイルをbin/以下ではなくexe/以下に置くことについて 例えばあなたがコマンドラインからピザを注文するようなRubyGemsを書いているとすると、今まではbin/order_pizzaに実行用のファイルを置いていたと思うけど、それがexe/order_pizzaに変わるかもしれない、という話。 仕様変更なの? 実行ファイルをどこに置くかというのは完全に慣習の話で、.gemspecの仕様上は好きなところに置けるようになっている。なので既存のgemが動かなくなるという話ではない。 ただbundle gemコマンドでgemを新規生成したときに、以前のBundlerでは.gemspecが以下のようになっていたのに対し、 spec.bindir = "bin" spec.executables = spec.files.grep(%r{^bin/}) {

    gemを作るときに実行ファイルをbin/以下ではなくexe/以下に置くことについて - Route 477(2015-09-14)
    mitukiii
    mitukiii 2015/09/15
  • [ruby] Rubyに「ユーザ定義演算子」を追加するライブラリ、superatorsAdd Star - Route 477(2014-01-30)

    ■ [ruby] Rubyに「ユーザ定義演算子」を追加するライブラリ、superators http://www.rubyinside.com/superators-add-new-operators-to-ruby-592.html Twitterで衝撃的なgemが流れてきたので調べてみた。superatorsを使うと<---や-~+~-のような独自演算子をユーザが自由に定義できるようになる。しかも驚くべきことに、Pure Rubyで実装されているのだ。 /Users/yhara/r/superators % irb -Ilib -r superators irb(main):0> class Array irb(main):1> superator "<---" do |operand| irb(main):2* if operand.kind_of? Array irb(main):

    [ruby] Rubyに「ユーザ定義演算子」を追加するライブラリ、superatorsAdd Star - Route 477(2014-01-30)
    mitukiii
    mitukiii 2014/01/31
  • Route 477(2007-06-20)

    ■ [ruby][event] Ruby勉強会@関西-16「30分でわかるcallccの使い方」 先週末のRuby勉強会@関西で、Rubyにおけるcallccの使い方について発表させていただきました。 スライド: pdf ppt 継続の説明については「なんでも継続」がよく参照されるんだけど、 ちょっと説明がボトムアップすぎると思うので(僕も最初に読んだときは全然分からなかった)、「callccで何ができるか」という応用面から攻める 構成にしてみました。 最初は「継続かわいいよ継続」「それをすてるなんてとんでもない」と思ってたんだけど、 いろいろ調べてるうちになんでcallccが嫌われるのかが理解できてしまった。callccはかわいいけど、非常に手のかかる奴らしい。 しかも、面白い利用例はいっぱいあるけど実用的な例があんまりないんだよね^^;。 callccが無くなるとRubyの「かっこよさ

    Route 477(2007-06-20)
    mitukiii
    mitukiii 2012/07/25
  • Route 477 - sprocketsのJavaScriptテンプレートサポート

    ■ [rails] Rails3.1を使ってみた、あとRails 3.2とRails 4について TL;DR: Rails3.1ではjs/cssが一級市民になったよ、あともうRails4の予定まであるらしいけどRails3ほどのbig changeではないらしいんで安心したよ BiwaScheme BlackboardをRails 3.1で実装したので、社内勉強会でその話をしました。 情報源 RailsGuides ( http://guides.rubyonrails.org/ ) Rails3のことはここ読めばだいたい分かる Riding Rails ( http://weblog.rubyonrails.org/ ) Rails公式ニュース Rails 3.0 (おさらい) Big rewrite Rails2とMerbが合体してRails3になった 設計が見直され、よりすっきりした

    Route 477 - sprocketsのJavaScriptテンプレートサポート
  • Route 477(2011-10-25)

    ■ [ruby] gistを使って小さなgemを公開する方法 http://jeffkreeftmeijer.com/2011/microgems-five-minute-rubygems/ 「bundlerがあれば、rubygems.orgにアップロードしなくても公開gitリポジトリさえあればgemとしてインストールできる」 「gistにはgitコマンドでファイルをチェックアウトする機能がある」 1.2.より、gistを使えばrubygems.orgにアップロードしなくてもgemを公開できる という話。 サンプルはこちら:https://gist.github.com/1232884 Gemfileに以下のように書けば、bundle installでこのgemがインストールされる。 gem 'bang', :git => 'git://gist.github.com/1232884.gi

    Route 477(2011-10-25)
  • Route 477(2009-06-09)

    ■ [ruby] Rubyのテスト環境大戦争 おまいらは当にテストが好きだな!というわけで、Rubyのテスト関係のライブラリを並べてみた。 テストフレームワーク Test::Unit Ruby標準添付のユニットテスト用フレームワーク。 RSpec DSLを使う、「BDD」という概念を流行らしたユニットテスト用フレームワーク。 Cucumber 自然言語を使って、ブラックボックステストを記述する。RSpecの「Stories」と呼ばれていた機能が独立した。 あとはShouldaとかbaconとかいろいろありますけども。 モック・スタブライブラリ モック=あるオブジェクトに期待したメッセージが飛ぶかどうかテストするためのオブジェクト、 スタブ=ネットワークが絡むとか、実際のオブジェクトが使えない場合に使う偽オブジェクト。 と思ってるんですけどどうなんですかね(more: モックとスタブの違い

    Route 477(2009-06-09)
  • RubyKaigi2011「Rubyマスターへの道」 - BiwaSlide

    mitukiii
    mitukiii 2011/07/19
    『何でも作れる=「勉強すればなんでも作れる」という自信のこと』
  • Route 477 - Ruby基礎文法最速マスター&Ruby書籍紹介

    Perl基礎文法最速マスターをだいたいそのまま、Rubyに置き換えてみました。 他の言語をある程度知っている人はこれを読めばRubyの基礎をマスターしてRubyを書くことができるようになる…かも知れません。無保証です。 参考: オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル (1.9.2) オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル (1.8.7) ■ 1. 基礎 インタラクティブRuby (irb) irbを使うと、Rubyのプログラムを簡単に練習することができます。 /Users/yhara $ irb irb(main):001:0> puts "hello" hello => nil irb(main):002:0> 1 + 1 => 2 以下の説明は、irbを起動して、自分で試しながら読むと習得が早いと思います。 表示 (print,

    Route 477 - Ruby基礎文法最速マスター&Ruby書籍紹介
  • Route 477

    GitHubindexHello source: index.md View on github | Report issue Generated by middleman 3.1.6. Powered by Ruby 2.2.2.

  • Greenbear Diary - 5分でわかるRack , シュレーディンガーの猫たち

    ■ [ruby][rack] 5分でわかるRack RackはRubyのためのWebサーバインターフェイスだ。 RubyでWebっていうとRailsが有名だけど、実はRails以外にもいろんなRuby用のWebアプリ用フレームワークが存在する。 Ramaze Merb Camping Waves などなど…。 一方Webを実際に動かすにはWebサーバが必要だ。RubyのためのWebサーバも、これまたいろんなものがある。 Apache(CGI, FastCGI..) WEBrick Mongrel Ebb Thin などなど…。 ここで問題が一つ。それは「フレームワークが増えるたびに、いろんなサーバをサポートするためのコードが必要になる」ってとこだ。 各フレームワークの作者がみんなそれぞれにCGIやMongrelに対応するためのコードを書いてるなんて、無駄だと思わないか? RackはWebア

    Greenbear Diary - 5分でわかるRack , シュレーディンガーの猫たち
    mitukiii
    mitukiii 2011/05/08
    「RackはWebアプリ用のフレームワークと、Webサーバの間を取り持ってくれるライブラリだ。」
  • Route 477(2010-12-01)

    ■ [ruby][rails] Hamlを越えるシンプルさを実現したテンプレートエンジン、Slim 今日から始まるRuby Advent Calendar jp: 2010参加記事です。 http://slim-lang.com/ Rails界隈ではHTML(ERB)よりシンプルなテンプレートエンジンとしてHamlが人気ですが、SlimはHamlからさらに記号を減らしたようなテンプレートエンジンです。 ! doctype html html head title Hello Slim body h1 Hello, Slim! div id="main" | これはSlimのサンプルです。 | シンプルでしょう? p.note | Hamlのように「#」や「.」を使うこともできます。 Rails 3で使う場合、 gem 'slim', :require => 'slim/rails' と書く

    Route 477(2010-12-01)
  • Route 477(2011-04-21)

    ■ [english] コミットログを英語で書くためのテンプレ githubに上げるコードは、可能なら英語でコミットログを書いたほうが良いです。なんか面白そうなプロジェクト見つけたとして、コミットログがロシア語とかアラビア語だったら困るよねという話です。 英語とか難しいと思うかも知れないですが、だいたい何か追加したか直したか変更したかのどれかなのでわりとパターン化できます。読めない言語で書かれている場合の可読性=0なので、英単語を適当に並べるだけで可読性が無限大パーセント改善されます。やった! 僕がよく使うのはこんな感じです(英語的に正しいかは知りません)。 new: xx new: added (some) xx fix: xx did not work fix: xx was wrong fix: xx should (not) yy changed xx to yy removed

    Route 477(2011-04-21)
    mitukiii
    mitukiii 2011/04/22
    理由とカテゴリも付けたいなと思いつつ僕も似たように書いてる
  • Route 477(2011-04-08)

    ■ [ruby] Ruby用のコマンドラインパーサSlop https://github.com/injekt/slop 標準添付のoptparseに似てるけど、オプション項目の置き場所も兼ねてるところが便利そう。 READMEより: # parse assumes ARGV, otherwise you can pass it your own Array opts = Slop.parse do on :v, :verbose, 'Enable verbose mode' # boolean value on :n, :name, 'Your name', true # compulsory argument on :s, :sex, 'Your sex', :optional => false # the same thing on :a, :age, 'Your age', :op

    Route 477(2011-04-08)
    mitukiii
    mitukiii 2011/04/11
    optparseより使いやすそう
  • Route 477(2011-01-28)

    ■ [rails] Railsのテストを高速化するやつ ちょっと調べた。導入はわりと簡単なので試してみると良いです。 spork Railsをロード済みのテストサーバを立てることによって、テストの起動時間を短縮する。 https://github.com/timcharper/spork Twiwt:Blog / jugyo : spork でサクサク RSpec on Rails3 Rails 3対応。Rails 2の場合はspork 0.8.xを試せと書いてある。 テストフレームワークはRSpec、Cucumberに対応。Test::Unitを使う場合は https://github.com/timcharper/spork-testunit を入れる(ただし1.9未対応…)。 parallel_tests テストを複数のプロセスで実行することによって、テストの実行時間を短縮する。 (

    Route 477(2011-01-28)
  • Route 477(2011-01-19)

    ■ [ruby] open-uriでUTF-8でないページを取得するときの注意 Ruby標準添付のopen-uriライブラリを使うと、HTMLを簡単に取得することができる。 irb> require 'open-uri' irb> url = "http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/43008" irb> html = open(url).read このとき、文字コードがUTF-8でないことが分かっているなら、第二引数でエンコーディング名を指定しておいた方が良いだろう。(あ、ここからはRuby 1.9の話です。) irb> html = open(url, "r:euc-jp").read 読んだあとは、String#encodeでUTF-8に変換することができる。 irb> html = open(url,

    Route 477(2011-01-19)
  • Route 477(2011-01-13)

    ■ [git][ruby] github gemからgit-hub gemに乗り換えた 自作のプロジェクトgithubで公開するとき、わざわざWeb画面からリポジトリを新規作成していませんか?hubコマンドをインストールすれば、「hub create」一発でできますよ。 githubのリポジトリをコマンドラインから操作するのにgithubコマンド(github gem)を使っていたのだが、ある時からcreate-from-localが動かなくなってたり、Ruby 1.9に未だに対応してなかったりするので おかしいなと思ったら、もっと新しいツールがあったらしい。 https://github.com/defunkt/hub $ gem install git-hub でインストールすると、hubというコマンドが使えるようになる。例えば現在のディレクトリからgithubリポジトリを新規作成す

    Route 477(2011-01-13)
    mitukiii
    mitukiii 2011/01/13
    これは良い。使おう。
  • Route 477(2010-10-04)

    ■ [ruby] ローカルのgemのドキュメントを見る簡単な方法(2010秋) The 3 Step Guide to Slick Local Documentation for all your Ruby Gems 1. $ gem install yard 2. $ yard server --gems 3. http://localhost:8808/ を開く これは便利。特に、普段--no-rdocしててrdocがない場合でも、動的にrdocを生成してくれるところが。 165 http://d.hatena.ne.jp/willnet/20111006/1317877272 49 http://reader.livedoor.com/reader/ 27 http://blog.willnet.in/entry/20111006/1317877272 14 https://www.

    Route 477(2010-10-04)
  • Route 477(2010-11-30)

    ■ [javascript] パッケージマネージャを備えたサーバサイドJavaScript環境、node.js node.jsは最近勢いのあるサーバサイドJavaScript環境である。インタプリタにはGoogle ChromeのV8を使用している。 売りとしては「イベント駆動なHTTPサーバが書けるのでCometとかWebSocketのサーバ側に最適」という話なのだが、個人的な用途ではそれは別にRuby+EventMachineとかでいいので、 むしろパッケージマネージャ(npm)を備えたサーバサイドJS環境ができて、JSをRubyとかPerlみたいに使えますよ、という点が面白いと思った。 インストール port install nodeとか、brew install nodeとか。 パッケージ管理 前述のnpmを入れると、RubyGemsみたいにnpm install fooでパッケー

    Route 477(2010-11-30)
  • Ruby Scraping - FrontPage

    RubyによるWeb Scrapingライブラリの情報をまとめるためのWikiです。 Nokogiri HTMLをjQuery風に操作するライブラリ。Hpricotの書き直し版 Hpricot HTMLを「Rubyらしく」扱うライブラリ Mechanize Webサイトへ自動でアクセスするためのライブラリ scRUBYt! DSLを使って簡単にスクレイピングを行うライブラリ feedalizer htmlからRSSフィードを作るのに役立つライブラリ scrAPI パーサを定義することでHTMLを解析するライブラリ ウェブサイトから必要なデータを抽出すること。(Scrape = 削り取る) ライブラリによっては、受信したデータの解析だけでなくデータの送信にも対応している。 例: RSSを配信していないウェブサイトのHTMLスクレイピングして野良RSSを作る Googleの検索結果をスクレイ

  • 1