letter_generator 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: be0893576b7ad361c4faf4417f45028394e0ff11
4
+ data.tar.gz: ee4c9f749d894a296b487c46c8717b1ef31067a1
5
+ SHA512:
6
+ metadata.gz: b8e1ae11d6730c6f82b2ca734da898c6c68dc91a7e35b79798d0e82d7a8e8c17b5f50ae9cbe4184fd06c4804a38a549a28ed519f8348feba0774202f3ce1bcd2
7
+ data.tar.gz: df33f8f93b4eb32cf11c1c83c6d4cc2df327529c0cf0e4ab1f4f8cbe7bd8342271c855d5fffbb405acbc653471ed84b53d727de81c975aebd87a87cfe2acd201
data/.gitignore ADDED
@@ -0,0 +1,14 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/
10
+ *.bundle
11
+ *.so
12
+ *.o
13
+ *.a
14
+ mkmf.log
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --format Fuubar
2
+ --order rand
3
+ --color
data/.rubocop.yml ADDED
@@ -0,0 +1,10 @@
1
+ AllCops:
2
+ Exclude:
3
+ - 'tmp/**/*'
4
+
5
+ # Configuration parameters: MaxSlashes.
6
+ Style/RegexpLiteral:
7
+ MaxSlashes: 0
8
+
9
+ Metrics/AbcSize:
10
+ Enabled: false
data/.simplecov ADDED
@@ -0,0 +1,25 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ class ExcludeRegexFilter < SimpleCov::Filter
4
+ def matches?(source_file)
5
+ source_file.filename !~ filter_argument
6
+ end
7
+ end
8
+
9
+ class IncludeRegexFilter < SimpleCov::Filter
10
+ def matches?(source_file)
11
+ source_file.filename =~ filter_argument
12
+ end
13
+ end
14
+
15
+ SimpleCov.start do
16
+ add_filter "/features/"
17
+ add_filter "/fixtures/"
18
+ add_filter "/spec/"
19
+ add_filter "/tmp"
20
+ add_filter "/vendor"
21
+ add_filter "/cli"
22
+
23
+ add_group "lib", ExcludeRegexFilter.new(%r{/cli/|/commands/})
24
+ #add_group "cli", IncludeRegexFilter.new(%r{/cli/|/commands/})
25
+ end
data/.yardopts ADDED
@@ -0,0 +1,5 @@
1
+ -o doc/yard
2
+ --verbose
3
+ -
4
+ LICENSE.md
5
+ README.md
data/Gemfile ADDED
@@ -0,0 +1,50 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ group :development, :test do
6
+ gem 'stackprof'
7
+ gem 'rspec', require: false
8
+ gem 'fuubar', require: false
9
+ gem 'simplecov', require: false
10
+ gem 'rubocop', '>= 0.25.0', require: false
11
+ gem 'coveralls', require: false
12
+ gem 'cucumber', require: false
13
+ gem 'aruba', git: 'https://github.com/cucumber/aruba.git'
14
+ gem 'bundler', require: false
15
+ gem 'erubis'
16
+ gem 'versionomy', require: false
17
+ gem 'activesupport', require: false
18
+ gem 'awesome_print', require: 'ap'
19
+
20
+ gem 'mutant', require: false
21
+ gem 'mutant-rspec', require: false
22
+
23
+ gem 'foreman', require: false
24
+ gem 'github-markup'
25
+ gem 'redcarpet', require: false
26
+ gem 'tmrb', require: false
27
+ gem 'yard', require: false
28
+ gem 'inch', require: false
29
+ gem 'license_finder', require: false
30
+ gem 'filegen', require: false
31
+ gem 'travis-lint', require: false
32
+ gem 'command_exec', require: false
33
+ gem 'rake', require: false
34
+ gem 'launchy', require: false
35
+
36
+ gem 'excon', require: false
37
+
38
+ gem 'therubyracer'
39
+ gem 'therubyrhino'
40
+
41
+ gem 'rugged'
42
+ gem 'addressable'
43
+ end
44
+
45
+ group :debug do
46
+ gem 'byebug'
47
+ gem 'pry'
48
+ gem 'pry-byebug', require: false
49
+ gem 'pry-doc', require: false
50
+ end
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2015 Max Meyer
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,31 @@
1
+ # LetterGenerator
2
+
3
+ TODO: Write a gem description
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ ```ruby
10
+ gem 'letter_generator'
11
+ ```
12
+
13
+ And then execute:
14
+
15
+ $ bundle
16
+
17
+ Or install it yourself as:
18
+
19
+ $ gem install letter_generator
20
+
21
+ ## Usage
22
+
23
+ TODO: Write usage instructions here
24
+
25
+ ## Contributing
26
+
27
+ 1. Fork it ( https://github.com/[my-github-username]/letter_generator/fork )
28
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
29
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
30
+ 4. Push to the branch (`git push origin my-new-feature`)
31
+ 5. Create a new Pull Request
data/Rakefile ADDED
@@ -0,0 +1,3 @@
1
+ namespace :gem do
2
+ require 'bundler/gem_tasks'
3
+ end
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
4
+ require 'letter_generator'
5
+
6
+ LetterGenerator::Runner.start
data/cucumber.yml ADDED
@@ -0,0 +1,2 @@
1
+ default: --tags @wip:3 --tags ~@broken --tags ~@broken-external
2
+ all: --tags ~@wip --tags ~@broken --tags ~@broken-external
@@ -0,0 +1,10 @@
1
+ Feature: Generate Letter
2
+
3
+ Background:
4
+ Given the default letter template
5
+
6
+
7
+ Scenario: Non-existing letter
8
+ Given a letter named "letter" does not exist
9
+ When I successfully run `letter_generator generate`
10
+ Then a letter named "letter" should exist
@@ -0,0 +1,21 @@
1
+ Given(/^a letter named "(.*?)" does not exist$/) do |name|
2
+ in_current_dir do
3
+ FileUtils.rm_f name
4
+ end
5
+ end
6
+
7
+ Then(/^a letter named "(.*?)" should exist$/) do |name|
8
+ step %(a file named "#{name}.tex" should exist)
9
+ end
10
+
11
+ Given(/^the default letter template$/) do
12
+ step %(a letter template named "letter" with:), File.read(File.expand_path('../../templates/letter.tex.tt', __FILE__))
13
+ end
14
+
15
+ Given(/^a letter template named "(.*?)" with:$/) do |name, string|
16
+ step %(a file named "~/.config/letter_generator/templates/#{name}.tex.tt" with:), string
17
+ end
18
+
19
+ Given(/^a config file named "(.*?)" with:$/) do |name, string|
20
+ step %(a file named "~/.config/letter_generator/#{name}" with:), string
21
+ end
@@ -0,0 +1,14 @@
1
+ # encoding: utf-8
2
+ require 'aruba/cucumber'
3
+
4
+ # Feature Helpers
5
+ module FeatureHelper
6
+ # Helpers for aruba
7
+ module Aruba
8
+ def dirs
9
+ @dirs ||= %w(tmp cucumber)
10
+ end
11
+ end
12
+ end
13
+
14
+ World(FeatureHelper::Aruba)
@@ -0,0 +1,12 @@
1
+ # encoding: utf-8
2
+ require 'aruba/cucumber'
3
+
4
+ require 'simplecov'
5
+ SimpleCov.command_name 'cucumber'
6
+ SimpleCov.start
7
+
8
+ # Pull in all of the gems including those in the `test` group
9
+ require 'bundler'
10
+ Bundler.require :default, :test, :development
11
+
12
+ ENV['TEST'] = 'true'
@@ -0,0 +1,2 @@
1
+ # encoding: utf-8
2
+ require 'fedux_org_stdlib/core_ext/hash/options'
@@ -0,0 +1,2 @@
1
+ # encoding: utf-8
2
+ require 'fedux_org_stdlib/core_ext/kernel/reporting'
@@ -0,0 +1,26 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'letter_generator/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'letter_generator'
8
+ spec.version = LetterGenerator::VERSION
9
+ spec.authors = ['Max Meyer']
10
+ spec.email = ['dev@fedux.org']
11
+ spec.summary = 'Generate letters'
12
+ spec.homepage = 'https://github.com/maxmeyer/letter_generator'
13
+ spec.license = 'MIT'
14
+
15
+ spec.files = `git ls-files -z`.split("\x0")
16
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
+ spec.require_paths = ['lib']
19
+
20
+ spec.add_development_dependency 'bundler', '~> 1.7'
21
+
22
+ spec.add_runtime_dependency 'thor'
23
+ spec.add_runtime_dependency 'activesupport'
24
+ spec.add_runtime_dependency 'tilt'
25
+ spec.add_runtime_dependency 'fedux_org-stdlib'
26
+ end
@@ -0,0 +1,14 @@
1
+ module LetterGenerator
2
+ class ApplicationConfig < FeduxOrgStdlib::AppConfig
3
+ option :template, LetterTemplate.new.file
4
+ option :debugging_libraries, %w(pry byebug)
5
+
6
+ def _application_name
7
+ 'letter_generator'
8
+ end
9
+
10
+ def _config_name
11
+ 'application'
12
+ end
13
+ end
14
+ end
@@ -0,0 +1 @@
1
+
@@ -0,0 +1,17 @@
1
+ module LetterGenerator
2
+ class Generator
3
+ private
4
+
5
+ attr_reader :template
6
+
7
+ public
8
+
9
+ def initialize(template_file)
10
+ @template = Tilt::ErubisTemplate.new(template_file)
11
+ end
12
+
13
+ def run(data, file)
14
+ File.write(file, template.render(data))
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,63 @@
1
+ module LetterGenerator
2
+ class LetterContent
3
+ private
4
+
5
+ attr_reader :data
6
+
7
+ public
8
+
9
+ def initialize
10
+ file = Dir.glob(File.expand_path('*.yaml')).first
11
+
12
+ if file
13
+ @data = Psych.load_file(file).deep_symbolize_keys
14
+ else
15
+ @data = {}
16
+ end
17
+ rescue
18
+ @data = {}
19
+ end
20
+
21
+ def from
22
+ @from ||= OpenStruct.new(data[:from])
23
+ end
24
+
25
+ def to
26
+ @to ||= OpenStruct.new(data[:to])
27
+ end
28
+
29
+ def opening
30
+ data.fetch(:opening, 'Sehr geehrte Damen und Herren,')
31
+ end
32
+
33
+ def closing
34
+ data.fetch(:closing, 'Mit freundlichen Grüßen')
35
+ end
36
+
37
+ def attachments
38
+ Array(data[:attachments])
39
+ end
40
+
41
+ def postscriptum
42
+ data[:postscriptum]
43
+ end
44
+
45
+ def text
46
+ data[:text]
47
+ end
48
+
49
+ def signature
50
+ data[:signature]
51
+ end
52
+
53
+ def subject
54
+ data[:subject]
55
+ end
56
+
57
+ %i(subject signature postscriptum text attachments closing opening).each do |m|
58
+ define_method "#{m}?" do
59
+ !m.blank?
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,4 @@
1
+ module LetterGenerator
2
+ class LetterTemplate < FeduxOrgStdlib::FileTemplate
3
+ end
4
+ end
@@ -0,0 +1,5 @@
1
+ module LetterGenerator
2
+ # Logger
3
+ class Logger < FeduxOrgStdlib::Logging::Logger
4
+ end
5
+ end
@@ -0,0 +1,24 @@
1
+ module LetterGenerator
2
+ @logger = Logger.new
3
+ @config = ApplicationConfig.new(merge_files: true, safe: true)
4
+ @debug_mode = false
5
+
6
+ class << self
7
+ attr_reader :config, :logger
8
+
9
+ private
10
+
11
+ attr_accessor :debug_mode
12
+
13
+ public
14
+
15
+ def debug_mode_enabled?
16
+ debug_mode == true
17
+ end
18
+
19
+ def enable_debug_mode
20
+ self.debug_mode = true
21
+ LetterGenerator.config.debugging_libraries.each { |l| require l }
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,16 @@
1
+ module LetterGenerator
2
+ class Runner < Thor
3
+ include Thor::Actions
4
+
5
+ option :output_file, default: 'letter.tex', desc: 'Outputfile'
6
+
7
+ desc 'generate', 'Generate template'
8
+ def generate
9
+ content = LetterContent.new
10
+ template = LetterTemplate.new
11
+
12
+ generator = Generator.new(template.file)
13
+ generator.run(content, options[:output_file])
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,3 @@
1
+ module LetterGenerator
2
+ VERSION = '0.0.1'
3
+ end
@@ -0,0 +1,22 @@
1
+ require 'thor'
2
+ require 'thor/actions'
3
+ require 'tilt'
4
+ require 'psych'
5
+ require 'active_support'
6
+ require 'active_support/core_ext'
7
+ require 'fedux_org_stdlib/file_template'
8
+ require 'fedux_org_stdlib/app_config'
9
+ require 'fedux_org_stdlib/logging/logger'
10
+
11
+ require 'letter_generator/letter_template'
12
+ require 'letter_generator/logger'
13
+ require 'letter_generator/application_config'
14
+ require 'letter_generator/main'
15
+ require 'letter_generator/version'
16
+ require 'letter_generator/logger'
17
+ require 'letter_generator/generator'
18
+ require 'letter_generator/letter_content'
19
+ require 'letter_generator/runner'
20
+
21
+ module LetterGenerator
22
+ end
@@ -0,0 +1,23 @@
1
+ # encoding: utf-8
2
+ require 'aruba/api'
3
+ require 'aruba/reporting'
4
+
5
+ # Spec Helpers
6
+ module SpecHelper
7
+ # Helpers for aruba
8
+ module Aruba
9
+ include ::Aruba::Api
10
+
11
+ def dirs
12
+ @dirs ||= %w(tmp rspec)
13
+ end
14
+ end
15
+ end
16
+
17
+ RSpec.configure do |c|
18
+ c.include SpecHelper::Aruba
19
+ c.before :each do
20
+ clean_current_dir
21
+ restore_env
22
+ end
23
+ end
@@ -0,0 +1,2 @@
1
+ # encoding: utf-8
2
+ require 'fedux_org_stdlib/core_ext/kernel/reporting'
@@ -0,0 +1,9 @@
1
+ # encoding: utf-8
2
+ RSpec.configure do |config|
3
+ config.filter_run_including focus: true
4
+ config.run_all_when_everything_filtered = true
5
+
6
+ config.mock_with :rspec do |mocks|
7
+ mocks.verify_doubled_constant_names = true
8
+ end
9
+ end
@@ -0,0 +1,2 @@
1
+ # encoding: utf-8
2
+ require 'active_support/core_ext/string/strip'
@@ -0,0 +1,74 @@
1
+ \documentclass[%
2
+ %fromphone=true,
3
+ fromalign=left,
4
+ foldmarks=BmTP,
5
+ draft=true,
6
+ ]{scrlttr2}
7
+ %%%%%%%%%%% pakete %%%%%%%%%%%%%%
8
+ \usepackage[utf8]{inputenc}
9
+ \usepackage[T1]{fontenc}
10
+ \usepackage[english,german]{babel}
11
+ \usepackage[%
12
+ pdfborder=0 0 0,
13
+ plainpages=false,
14
+ pdftitle={titel},
15
+ pdfauthor={<%= from.name %>},
16
+ ]{hyperref}
17
+ \usepackage{graphicx}
18
+ \usepackage{xcolor}
19
+ \usepackage{blindtext}
20
+ \usepackage{paralist}
21
+
22
+ \begin{document}
23
+
24
+ <% if subject? -%>
25
+ \pagestyle{headings}
26
+ <% end -%>
27
+
28
+ %%%%%%%%%%% Brief %%%%%%%%%%%%%%%%
29
+ %%%%%%%%%%% Empfänger %%%%%%%%%%%%%%%%%
30
+ \begin{letter}{%
31
+ <%= to.name %>\\
32
+ <% if to.co -%>
33
+ <%= to.co %>\\
34
+ <% end -%>
35
+ <%= to.street %>\\
36
+ <%= to.city %>
37
+ }
38
+
39
+ %%%%%%%%%%%%% Absender %%%%%%%%%%%%%%%%%
40
+ \setkomavar{fromname}{<%= from.name %>}
41
+ <% unless from.phone.blank? -%>
42
+ \setkomavar{fromphone}{<%= from.phone %> }
43
+ <% end -%>
44
+ \setkomavar{fromaddress}{<%= from.street %>\\<%= from.city %>}
45
+
46
+ %%%%%%%%%%%%% Betreff %%%%%%%%%%%%%%%%
47
+ \setkomavar{subject}{<%= subject %>}
48
+
49
+ %%%%%%%%%%%%% Unterschrift %%%%%%%%%%%%%%%%
50
+ <% unless signature.blank? -%>
51
+ \setkomavar{signature}{<%= signature %>}
52
+ <% end %>
53
+
54
+
55
+ %\LoadLetterOption{DIN}
56
+ \opening{<%= opening %>}
57
+
58
+ <% unless text.blank? -%>
59
+ <%= text %>
60
+ <% end -%>
61
+
62
+ \closing{<%= closing %>}
63
+ %%%%%%%%%%%%% Postscriptum %%%%%%%%%%%%%%%
64
+ <% unless postscriptum.blank? -%>
65
+ \ps PS:
66
+ <% end -%>
67
+
68
+ %%%%%%%%%%%%% Anhänge %%%%%%%%%%%%%%%
69
+ <% attachments.each do |a| -%>
70
+ \encl{<%= a %>}
71
+ <% end -%>
72
+
73
+ \end{letter}
74
+ \end{document}
metadata ADDED
@@ -0,0 +1,159 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: letter_generator
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Max Meyer
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-01-13 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.7'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.7'
27
+ - !ruby/object:Gem::Dependency
28
+ name: thor
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: activesupport
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: tilt
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: fedux_org-stdlib
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ description:
84
+ email:
85
+ - dev@fedux.org
86
+ executables:
87
+ - letter_generator
88
+ extensions: []
89
+ extra_rdoc_files: []
90
+ files:
91
+ - ".gitignore"
92
+ - ".rspec"
93
+ - ".rubocop.yml"
94
+ - ".simplecov"
95
+ - ".yardopts"
96
+ - Gemfile
97
+ - LICENSE.txt
98
+ - README.md
99
+ - Rakefile
100
+ - bin/letter_generator
101
+ - cucumber.yml
102
+ - features/generate_letter.feature
103
+ - features/step_definitions.rb
104
+ - features/support/aruba.rb
105
+ - features/support/env.rb
106
+ - features/support/hash.rb
107
+ - features/support/reporting.rb
108
+ - letter_generator.gemspec
109
+ - lib/letter_generator.rb
110
+ - lib/letter_generator/application_config.rb
111
+ - lib/letter_generator/generate.rb
112
+ - lib/letter_generator/generator.rb
113
+ - lib/letter_generator/letter_content.rb
114
+ - lib/letter_generator/letter_template.rb
115
+ - lib/letter_generator/logger.rb
116
+ - lib/letter_generator/main.rb
117
+ - lib/letter_generator/runner.rb
118
+ - lib/letter_generator/version.rb
119
+ - spec/support/aruba.rb
120
+ - spec/support/reporting.rb
121
+ - spec/support/rspec.rb
122
+ - spec/support/string.rb
123
+ - templates/letter.tex.tt
124
+ homepage: https://github.com/maxmeyer/letter_generator
125
+ licenses:
126
+ - MIT
127
+ metadata: {}
128
+ post_install_message:
129
+ rdoc_options: []
130
+ require_paths:
131
+ - lib
132
+ required_ruby_version: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - ">="
135
+ - !ruby/object:Gem::Version
136
+ version: '0'
137
+ required_rubygems_version: !ruby/object:Gem::Requirement
138
+ requirements:
139
+ - - ">="
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ requirements: []
143
+ rubyforge_project:
144
+ rubygems_version: 2.4.5
145
+ signing_key:
146
+ specification_version: 4
147
+ summary: Generate letters
148
+ test_files:
149
+ - features/generate_letter.feature
150
+ - features/step_definitions.rb
151
+ - features/support/aruba.rb
152
+ - features/support/env.rb
153
+ - features/support/hash.rb
154
+ - features/support/reporting.rb
155
+ - spec/support/aruba.rb
156
+ - spec/support/reporting.rb
157
+ - spec/support/rspec.rb
158
+ - spec/support/string.rb
159
+ has_rdoc: