Skip to content
RubyMotion Gem Porting Tool
Ruby Perl
Find file
Latest commit bf21e79 Jon Silverman Update LICENSE
Failed to load latest commit information.
ansiterm-color fixme on binding and eval
bin remove autotest
chronic add chronic as the new test gem
lib fixme on binding and eval
spec #1 FIXME on evals
.gitmodules added submodules correctly
.rvmrc Init Hokkaido
Gemfile support autoload folding #2
Gemfile.lock fixme on binding and eval
Hokkaido.gemspec bump vers no fixme
Rakefile clean the manifest.. load order magicks


Hokkaido attempts to do as much of the work of porting a Gem to RubyMotion for you as possible

Currently, it only supports one patching operation.

  • Refold Requires into RubyMotion Project Manifest automatically!
  • Refold Autoload (same as require)
  • Generate and add manifest with proper load order to front of file
  • Adds an eval hack to make evaling blocks work in the scope of the binding (no strings)
  • FIXME's around binding and calls to eval()

Supported meta-programming techniques left alone, intact and working (instance_eval, define_method, etc).

Includes disabled code to instantly change eval with string to eval with block. Enable if you need it.


eval("puts 'hi'")


eval do puts 'hi' end


Porting: [bundle exec] Hokkaido port <gem_name> <init_file> <lib_folder> Testing: [bundle exec] Hokkaido test <gem_name> <init_file> <lib_folder>

Note, init_file is looked for within lib_folder


Hokkaido port gherkin gherkin.rb gherkin-test/lib Hokkaido port term ansicolor.rb term/lib Hokkaido port cucumber cucumber.rb cucumber/lib Hokkaido port gherkin gherkin.rb gherkin/lib


  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request
Something went wrong with that request. Please try again.