Help us understand the problem. What is going on with this article?

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

More than 5 years have passed since last update.

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

関連投稿

kjunichi
WebRubyがきっかけで、mrubyで実装されたhttp2サーバーのtrusterdに絡んだ事をやってみたり、ElectronのIssue眺めたり、手元で動かしたり、node.js関連。WASMも少々。投稿する記事の内容は個人の意見であり、所属する企業の見解を代表するものではありません。
https://abrakatabura.hatenablog.com/
japan-systems
「2019年に50周年を迎えたIT企業です。最先端の技術により全国の企業、官公庁、自治体に多くの実績があります。」
https://www.japan-systems.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした