2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

mrbgemsの雛形を作る超便利ツールmruby-mrbgem-templateを使う

Last updated at Posted at 2015-04-23

mruby-mrbgem-templateを使うとテストまでの雛形を作ってもらえる

用意するもの

  • 気合とか情熱
  • モチベーション

そこら辺がない場合

  • センス
  • Rubyの同様のモジュールのAPIや実装コード
  • mrubyのGithubのページ(検索したり、過去の経緯がわかる)

その他必要なもの

  • 作業時間(時間は作るものだから。。。)

実作業

mrubyを持ってくる

git clone https://github.com/mruby/mruby.git
cd mruby

mruby-mrbgem-templateのインストール

build_config.rbのenable_debugの直下に以下を記述

conf.gem :github => 'matsumoto-r/mruby-mrbgem-template'

作るモジュールに必要な物も予言できる人はこのタイミングで記述。

# include the default GEMs
conf.gembox 'default'

これも

# include the default GEMs
conf.gembox 'full-core'

とした方が、いろいろ便利な気がする。
(例えば、正規表現とかが使えるようになる)

mrubyをビルド

rake

create.rbの作成

mrubyディレクトリ配下にcreate.rbというファイルを作って作業する。

これ、GithubのREADME.mdの説明をコピーして
エディタで編集するのが良さそう。

params = {
  :mrbgem_name    => 'mruby-sugoiyatsu',
  :license        => 'MIT',
  :github_user    => 'yourname',
  :mrbgem_prefix  => '..',
  :class_name     => 'Sample',
  :author         => 'ANATA NO ONAMAE',
}

c = MrbgemTemplate.new params
c.create

github_userは正直に入れないとGithubをDropbox代わりに使った開発が
面倒になると思われる。

雛形生成

./bin/mruby create.rb

前述のGithubをDropbox代わりに使う開発や、有益なモジュールを
多くの方々に使ってもらう様な向きは、おもむろにWebブラウザを立ち上げるなりして、
Githubにcreate.rbで入力したパラメータに従ったリポジトリを作成し、
その後のMrbgemTemplateのお告げをありがたく実行する。

動かし方

mrubyのbuild_config.rbにモジュールのパスを追加

conf.gem '../mruby-sugoiyatsu'

をbuild_config.rbに追加するか、githubのリポジトリを指定する。

動かす

mrubyのディレクトリで

rake all test

初期状態で、テストも動く。

Travis CIの設定

travis ciのバッチもREADME.mdに貼ってくれている便利仕様なので、
travis ciの管理画面でシンクして該当のリポジトリをONにすると良い。

Link

関連投稿

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?