Class: YaLoremJa::Lorem

Inherits:
Object
  • Object
show all
Defined in:
lib/ya_lorem_ja.rb

Overview

Japanese Lorem

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(resource_name = :kazehakase, char_count_range = 2..6, word_count_range = 6..15, sentence_count_range = 2..5) ⇒ Lorem

Returns a new instance of Lorem.

Parameters:

  • resource_name (Symbol) (defaults to: :kazehakase)

    name of word resource

  • char_count_range (Range) (defaults to: 2..6)

    range of character count in a word

  • word_count_range (Range) (defaults to: 6..15)

    range of word count in sentence

  • sentence_count_range (Range) (defaults to: 2..5)

    renage of sentence count in paragraph



22
23
24
25
26
# File 'lib/ya_lorem_ja.rb', line 22

def initialize(resource_name=:kazehakase, char_count_range=2..6, word_count_range=6..15, sentence_count_range=2..5)
  @resource_name = resource_name
  # 文章辞書の読み込み
  @resource = ::YaLoremJa::WordResources.load(resource_name, char_count_range, word_count_range, sentence_count_range)
end

Instance Attribute Details

#resource_nameObject (readonly)

Returns the value of attribute resource_name.



14
15
16
# File 'lib/ya_lorem_ja.rb', line 14

def resource_name
  @resource_name
end

Instance Method Details

#char_count_rangeRange

Returns range of character count in a word.

Returns:

  • (Range)

    range of character count in a word



30
31
32
# File 'lib/ya_lorem_ja.rb', line 30

def char_count_range
  return @resource.char_count_range_in_a_word
end

#date(fmt = '%Y年%m月%d日') ⇒ Object



114
115
116
117
118
119
# File 'lib/ya_lorem_ja.rb', line 114

def date(fmt='%Y年%m月%d日')
  y = rand(20) + 1990
  m = rand(12) + 1
  d = rand(31) + 1
  Time.local(y, m, d).strftime(fmt)
end

#image(size, options = {}) ⇒ String

Get a placeholder image, using placehold.it by default

Parameters:

  • size (String)
  • options (Hash) (defaults to: {})

Returns:

  • (String)


126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
# File 'lib/ya_lorem_ja.rb', line 126

def image(size, options={})
  domain           = options[:domain] || 'http://placehold.it'
  src              = "#{domain}/#{size}"
  hex              = %w(a b c d e f 0 1 2 3 4 5 6 7 8 9)
  background_color = options[:background_color]
  color            = options[:color]

  if options[:random_color]
    background_color = hex.shuffle[0...6].join
    color = hex.shuffle[0...6].join
  end

  src << "/#{background_color.sub(/^#/, '')}" if background_color
  src << '/ccc' if background_color.nil? && color
  src << "/#{color.sub(/^#/, '')}" if color
  src << "&text=#{Rack::Utils.escape(options[:text])}" if options[:text]

  src
end

#line_breakString

Returns line break character.

Returns:

  • (String)

    line break character



61
62
63
# File 'lib/ya_lorem_ja.rb', line 61

def line_break
  @resource.line_break
end

#line_break=(char) ⇒ Object

set line break character

Parameters:

  • char (String)

    line break character



55
56
57
# File 'lib/ya_lorem_ja.rb', line 55

def line_break=(char)
  @resource.line_break = char
end

#paragraphString

return a random paragraph from word resource

Returns:

  • (String)

    sentence



101
102
103
# File 'lib/ya_lorem_ja.rb', line 101

def paragraph
  @resource.paragraph
end

#paragraphs(total) ⇒ String

return random paragraphs from word resource

Parameters:

  • total (Fixnum)

    count of paragraph

Returns:

  • (String)

    paragraph



109
110
111
# File 'lib/ya_lorem_ja.rb', line 109

def paragraphs(total)
  @resource.paragraphs(total)
end

#sentenceString

return a random sentence from word resource

Returns:

  • (String)

    sentence



85
86
87
# File 'lib/ya_lorem_ja.rb', line 85

def sentence
  @resource.sentence
end

#sentence_count_rangeRange

Returns range of sentence count in a paragraph.

Returns:

  • (Range)

    range of sentence count in a paragraph



42
43
44
# File 'lib/ya_lorem_ja.rb', line 42

def sentence_count_range
  return @resource.sentence_count_range_in_a_paragraph
end

#sentence_end_charsArray

Return sentence end chars

Returns:

  • (Array)

    return sentence end chars



48
49
50
# File 'lib/ya_lorem_ja.rb', line 48

def sentence_end_chars
  return @resource.sentence_end_chars
end

#sentences(total) ⇒ String

return rondom sentences from word resource

Parameters:

  • total (Fixnum)

    count of sentence

Returns:

  • (String)

    words



94
95
96
# File 'lib/ya_lorem_ja.rb', line 94

def sentences(total)
  @resource.sentences(total)
end

#wordString

return a random word from word resource

Returns:

  • (String)

    word



68
69
70
71
# File 'lib/ya_lorem_ja.rb', line 68

def word
  # 1単語返却
  @resource.word
end

#word_count_rangeRange

Returns range of word count in a sentence.

Returns:

  • (Range)

    range of word count in a sentence



36
37
38
# File 'lib/ya_lorem_ja.rb', line 36

def word_count_range
  return @resource.word_count_range_in_a_sentence
end

#words(total) ⇒ String

return rondom words from word resource

Parameters:

  • total (Fixnum)

    count of word

Returns:

  • (String)

    words



78
79
80
# File 'lib/ya_lorem_ja.rb', line 78

def words(total)
  @resource.words(total)
end