htmler 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3b4c5843e087c49cf3805a05e8937f00735d29b5
4
- data.tar.gz: 8d34c075e0f98d645bebf55e1a9d26d4ac20c2fe
3
+ metadata.gz: 8f82f6c3246edd000e8d4e23ac42fc99bc50b41c
4
+ data.tar.gz: e39593027ed9a9ee78bbdc8b3052cd9d4d31789a
5
5
  SHA512:
6
- metadata.gz: d819315ee8e3ba4dfa96dfcb3d26159e987b542b055edb7e466af5a221a3e329059ae2bc2b87826b1a49e4e33e94d8fd0fea00db13a167d6dd93ff02f0ada972
7
- data.tar.gz: 9470b92957c964ecd9d31c872f28a3a7c1b0e44ba1e7877b5ca786613c0f15214e4be73596268b09568c9f3af015fc681b8c90c3938d068edc8e5d70248c60ab
6
+ metadata.gz: 9c83a75bf82afcdd1342ce0a42500bf83a592ca19fdaa368de97bdb800433d098b73bd85f98b472a0d24913cbc236bf1bfee522aed22ce9c48a4f7cd5d4a2664
7
+ data.tar.gz: 924ec523fd4a4c6e7b35a03dff310ea3aedad8894c7d1084082b253b57fb712323e049db2662358253b9524a4c0f5b8cb131f652151562f74632af702460452e
data/bin/htmler CHANGED
@@ -1,11 +1,13 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- begin
3
+ =begin
4
4
  require 'htmler'
5
5
  rescue LoadError
6
6
  require 'rubygems'
7
7
  require 'htmler'
8
- end
8
+ =end
9
+
10
+ require './lib/htmler'
9
11
 
10
12
  htmler = Htmler.new
11
13
  htmler.compile_file(ARGV[0])
data/htmler.gemspec CHANGED
@@ -3,7 +3,7 @@ require "htmler/version"
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "htmler"
6
- s.version = Htmler.VERSION
6
+ s.version = Htmler::VERSION
7
7
  s.platform = Gem::Platform::RUBY
8
8
  s.authors = ["Hugo Abonizio"]
9
9
  s.email = ["hugo_abonizio@hotmail.com"]
data/lib/htmler/base.rb CHANGED
@@ -10,10 +10,16 @@ class Htmler
10
10
  end
11
11
 
12
12
  def method_missing(name, *args, &block)
13
- @_result += "<#{name}>"
13
+ if args[0].class == Hash
14
+ arguments = " " << args[0].map { |k, v| "#{k}=\"#{v}\"" }.join(' ')
15
+ else
16
+ arguments = ""
17
+ end
18
+
19
+ @_result += "<#{name}#{arguments}>"
14
20
  if block_given?
15
21
  _return = block.call
16
- @_result += _return unless _return.nil?
22
+ @_result += _return.to_s unless _return.nil?
17
23
  end
18
24
  @_result += "</#{name}>"
19
25
 
@@ -29,7 +35,8 @@ class Htmler
29
35
  end
30
36
 
31
37
  def compile_file(name)
32
- instance_eval(File.new(name).readlines.join)
38
+ #puts File.new(name).readlines.map { |i| i.to_s }.join
39
+ instance_eval(File.new(name).readlines.map { |i| i.to_s }.join)
33
40
  end
34
41
 
35
42
  end
@@ -1,5 +1,3 @@
1
1
  class Htmler
2
- def self.VERSION
3
- "0.0.1"
4
- end
2
+ VERSION = "0.0.2"
5
3
  end
@@ -0,0 +1,5 @@
1
+ html(lang: 'pt-BR') {
2
+ body {
3
+ input(type: 'text', value: 'value') { 'Green text' }
4
+ }
5
+ }
@@ -0,0 +1,5 @@
1
+ body {
2
+ 4.times do |i|
3
+ li { i }
4
+ end
5
+ }
data/spec/htmler_spec.rb CHANGED
@@ -23,4 +23,9 @@ describe Htmler do
23
23
  @htmler.compile_file('spec/files/moderate1.htmler')
24
24
  expect(@htmler.to_html).to eql('<html><head><title>Hello world!</title></head><body><header><h1>Site title</h1></header><div><div><p>From the FIRST div</p></div><div><p>From the SECOND div</p><p>...and another one</p></div></div></body></html>')
25
25
  end
26
+
27
+ it "should include arguments" do
28
+ @htmler.compile_file('spec/files/attributes.htmler')
29
+ expect(@htmler.to_html).to eql('<html lang="pt-BR"><body><input type="text" value="value">Green text</input></body></html>')
30
+ end
26
31
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: htmler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hugo Abonizio
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-23 00:00:00.000000000 Z
11
+ date: 2014-11-24 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A Ruby DSL to write HTML
14
14
  email:
@@ -26,6 +26,8 @@ files:
26
26
  - lib/htmler.rb
27
27
  - lib/htmler/base.rb
28
28
  - lib/htmler/version.rb
29
+ - spec/files/attributes.htmler
30
+ - spec/files/loop.htmler
29
31
  - spec/files/moderate1.htmler
30
32
  - spec/files/simple_html_head_title.htmler
31
33
  - spec/htmler_spec.rb