Ruby
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Basics
- Ruby is a dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write.
Syntax
# The Greeter class class Greeter def initialize(name) @name = name.capitalize end def salute puts "Hello #{@name}!" end end # Create a new object g = Greeter.new("world") # Output "Hello World!" g.salute
Installing
rbenv
ruby-install
installing
wget -O ruby-install-0.3.0.tar.gz https://github.com/postmodern/ruby-install/archive/v0.3.0.tar.gz tar -xzvf ruby-install-0.3.0.tar.gz cd ruby-install-0.3.0/ sudo make install
usage
Install the current stable version of Ruby:
ruby-install ruby
Install a latest version of Ruby:
ruby-install ruby 1.9
Install a specific version of Ruby:
ruby-install ruby 1.9.3-p429
Install a Ruby into a specific directory:
ruby-install -i /usr/local/ ruby 1.9.3-p429
Install a Ruby from a mirror:
ruby-install -M http://www.mirrorservice.org/sites/ftp.ruby-lang.org/pub/ruby ruby 2.0.0-p247
Install a Ruby with a specific patch:
ruby-install -p https://raw.github.com/gist/4136373/falcon-gc.diff ruby 1.9.3-p429
Install a Ruby with specific configuration:
ruby-install ruby 2.0.0 -- --enable-shared --enable-dtrace CFLAGS="-O3"
Guides
- http://en.wikipedia.org/wiki/Why%27s_(poignant)_Guide_to_Ruby
- The Bastards Book of Ruby
- https://practicingruby.com/
RubyGems
Guides
- isitruby1.9 Community-powered gem compatibility for ruby 1.9]
Installing
ruby setup.rb
Usage
gem update --system
gem install [rubygem] install a gem gem upgrade upgrade installed gems gem env
As user, goes into .gem. As root, goes into /usr/lib/ruby/gems/1.9.1/gems/compass-0.11.7/frameworks/compass/stylesheets/compass or suchlike.
ruby -r rubygems -e "p Gem.path" display ruby gem path[s]
to sort
Tools
- RVM is a command-line tool which allows you to easily install, manage, and work with multiple ruby environments from interpreters to sets of gems.
- Pry is a powerful alternative to the standard IRB shell for Ruby. It features syntax highlighting, a flexible plugin architecture, runtime invocation and source and documentation browsing.
- Sprockets is a Ruby library for compiling and serving web assets. It features declarative dependency management for JavaScript and CSS assets, as well as a powerful preprocessor pipeline that allows you to write assets in languages like CoffeeScript, Sass, SCSS and LESS.
Rails
Shoes
Development
- http://rubygems.org/gems/css_parser - stats on css output from sass, etc.
- jim - jim is your friendly javascript library manager. He downloads, stores, bundles, vendors and compresses.
Sinatra
require 'sinatra' get '/hi' do "Hello World!" end
gem install sinatra ruby hi.rb
CMS/F
Mobile apps
Other
- http://docs.topazruby.com/en/latest/ - ruby on python
JavaScript
- Opal is a ruby to javascript compiler. It is source-to-source, making it fast as a runtime. Opal includes a compiler (which can be run in any browser), a corelib and runtime implementation. The corelib/runtime is also very small (10.8kb gzipped).
- RubyJS is a JavaScript implementation of all methods from Ruby classes like Array, String, Numbers, Time and more.