Markaby

Markaby

Markaby is small Ruby library for writing HTML code in pure Ruby. It is an alternative to templating languages such as ERb and HAML which combine Ruby code with some form of markup. It was developed by why the lucky stiff and it's name comes from "Markup as Ruby".

Usage

require 'markaby'

mab = Markaby::Builder.newmab.html do head { title "Boats.com" } body do h1 "Boats.com has great deals" ul do li "$49 for a canoe" li "$39 for a raft" li "$29 for a huge boot that floats and can fit 5 people" end endendputs mab.to_s

Executing the above code will render the following html:

Boats.com

Boats.com has great deals

  • $49 for a canoe
  • $39 for a raft
  • $29 for a huge boot that floats and can fit 5 people

Distribution

Gem

gem install markaby

Rails plugin

script/plugin install http://code.whytheluckystiff.net/svn/markaby/trunk

Camping

Markaby is the templating engine used for the Camping micro web framework.

module HomePage::Views

# If you have a `layout' method like this, it # will wrap the HTML in the other methods. The # `self << yield' is where the HTML is inserted. def layout html do title { 'My HomePage' } body { self << yield } end end

# The `index' view. Inside your views, you express # the HTML in Ruby. See http://code.whytheluckystiff.net/markaby/. def index p 'Hi my name is Charles.' p 'Here are some links:' ul do li { a 'Google', :href => 'http://google.com' } li { a 'A sample page', :href => '/sample' } end end

# The `sample' view. def sample p 'A sample page' end end

ee also

* eRuby
* Haml
* Camping (microframework)

External links

* [http://code.whytheluckystiff.net/markaby/ Project homepage]
* [http://railscasts.com/episodes/69 Screencast example]


Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Look at other dictionaries:

  • markaby — is a small Ruby library for writing HTML code in pure Ruby. It is an alternative to templating languages such as ERb and HAML which combine Ruby code with some form of markup. It was developed by anonymous computer programmer why the lucky stiff… …   Wikipedia

  • Why the lucky stiff — Infobox Person name = Unknown (alias why the lucky stiff ) other names = why, why caption = why at RubyConf occupation = Ruby programmer, author known for = Why s (poignant) Guide to Ruby , Camping why the lucky stiff (often known simply as why… …   Wikipedia

  • ERuby — is a templating system that embeds Ruby into a text document. It is often used to embed Ruby code in an HTML document, similar to ASP, JSP and PHP.UsageeRuby allows Ruby code to be embedded within a pair of delimiters. These embedded code blocks… …   Wikipedia

  • Haml — Infobox Software name = Haml developer = Hampton Catlin, Nathan Weizenbaum latest release version= 2.0.2 latest release date = release date|2008|07|29 operating system = Cross platform genre = Template Engine license = MIT License website =… …   Wikipedia

  • Haml — Тип Язык разметки Разработчик Hampton Catlin, Nathan Weizenbaum Написана на Ruby (официальная версия) Последняя версия 3.1.2 …   Википедия

  • ERuby — Vorlage:Infobox Dateiformat/Wartung/MIME fehltVorlage:Infobox Dateiformat/Wartung/MagischeZahl fehltVorlage:Infobox Dateiformat/Wartung/Entwickler fehltVorlage:Infobox Dateiformat/Wartung/Standard fehlt eRuby (erb) Dateiendung: .erb, .html.erb,… …   Deutsch Wikipedia

  • Haml — Vorlage:Infobox Dateiformat/Wartung/MIME fehltVorlage:Infobox Dateiformat/Wartung/MagischeZahl fehltVorlage:Infobox Dateiformat/Wartung/Standard fehlt Haml Dateiendung …   Deutsch Wikipedia

  • Vereinfachte Auszeichnungssprache — Eine Vereinfachte Auszeichnungssprache ist eine Auszeichnungssprache mit einer einfachen Syntax, um Dokumente einfach manuell erstellen und lesen zu können. Meist werden Dokumente für die endgültige Darstellung in eine gewöhnliche… …   Deutsch Wikipedia

  • eRuby — В этой статье не хватает ссылок на источники информации. Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена. Вы можете отр …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”