Markaby – Wikipedia

Markaby
Basisdaten

Aktuelle Version 0.9.4[1]
(14. Juni 2024)
Betriebssystem plattformunabhängig
Programmier­sprache Ruby
Kategorie HTML-Generierung
Lizenz MIT-Lizenz[2]
_why's Markaby

Markaby ist eine kleine Bibliothek der Programmiersprache Ruby zum Generieren von HTML-Code. Es ist eine Alternative zu Templatesprachen wie erb und Haml, die Ruby-Code mit einer Art Markupsprache kombinieren. Es wurde von dem anonymen Computerprogrammierer „why the lucky stiff“ entwickelt. Sein Name kommt von Markup as Ruby.

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 

Die Ausführung des obigen Codes ergibt das folgende HTML (eventuell ohne Zeilenwechsel und Einrückungen):

<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> 

Gem

 gem install markaby 

Rails plugin

 script/plugin install git://github.com/markaby/markaby.git 

Markaby ist die Template-Engine, die vom Camping-Framework verwendet wird.

 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  
  1. Release 0.9.4. 14. Juni 2024 (abgerufen am 22. Juni 2024).
  2. api.github.com. (abgerufen am 6. März 2019).