Ruby

From Things and Stuff Wiki
Jump to: navigation, search

Things and Stuff Wiki - an organically evolving knowledge base wiki with a totally on-the-fly taxonomy containing topic outlines, descriptions and breadcrumbs, with links to sites, systems, software, manuals, organisations, people, articles, guides, slides, papers, books, comments, screencasts, webcasts, scratchpads and more. use the Table of Contents for navigation on longer pages. see About for further information. / et / em

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

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

  • 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

  • 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

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.