Markaby
Markaby | |
---|---|
Basic data
|
|
Current version |
0.8.1 ( September 21, 2017 ) |
operating system | platform independent |
programming language | Ruby |
category | HTML generation |
License | MIT license |
_why's Markaby |
Markaby is a small Ruby library for generating HTML code. It's an alternative to template languages like erb and Haml , which combine Ruby code with some kind of markup language . It was developed by the anonymous computer programmer " why the lucky stiff ". Its name comes from Markup as Ruby .
use
require 'markaby' mab = Markaby::Builder.new mab.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 end end puts mab.to_s
Executing the above code results in the following HTML (possibly without line breaks and indentations):
<html> <head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/> <title>Boats.com</title> </head> <body> <h1>Boats.com has great deals</h1> <ul> <li>$49 for a canoe</li> <li>$39 for a raft</li> <li>$29 for a huge boot that floats and can fit 5 people</li> </ul> </body> </html>
distribution
According to
gem install markaby
Rails plugin
script/plugin install git://github.com/markaby/markaby.git
camping
Markaby is the template engine used by the camping 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
See also
Web links
- ↑ Release 0.8.1 . September 21, 2017 (accessed July 22, 2018).
- ↑ api.github.com . (accessed on March 6, 2019).