document_generator 0.0.2

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: c61702f5e4718a16f1dc6d2430d08262cebe523b
4
+ data.tar.gz: b4c59a174e1ea260ded0bf3e827ba5e43a5d3d6f
5
+ SHA512:
6
+ metadata.gz: 452c451c27a72479d1d9ec9b5b4e4ab0ebbe8b61a3f271690d43c40f91b47639bf59e219e46db82705461c3a41885d771779a9abdc9a6db70dd71d825d7f0af3
7
+ data.tar.gz: 08a7a8dedfe5db30b8088017c8e8cc5e2e9b08e31c627fbad21e5d4979eaaf8313036ce1a79bb61842c7c56e63c79a893bd1254120ff8b219cb17b62cbb9d334
data/.gitignore ADDED
@@ -0,0 +1,24 @@
1
+ /docs
2
+ /_site
3
+ /_includes
4
+ /_layouts
5
+ *.md
6
+ !README.md
7
+
8
+ *.gem
9
+ *.rbc
10
+ .bundle
11
+ .config
12
+ .yardoc
13
+ Gemfile.lock
14
+ InstalledFiles
15
+ _yardoc
16
+ coverage
17
+ doc/
18
+ lib/bundler/man
19
+ pkg
20
+ rdoc
21
+ spec/reports
22
+ test/tmp
23
+ test/version_tmp
24
+ tmp
data/.ruby-gemset ADDED
@@ -0,0 +1 @@
1
+ document_generator
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ ruby-2.0.0-p247
data/.travis.yml ADDED
@@ -0,0 +1,5 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.0.0
4
+ - 1.9.3
5
+ - 1.9.2
data/Gemfile ADDED
@@ -0,0 +1,7 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in document_generator.gemspec
4
+ gemspec
5
+
6
+ # TODO: Remove this
7
+ gem 'jekyll'
data/Gemfile.lock ADDED
@@ -0,0 +1,83 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ document_generator (0.0.1)
5
+ addressable (~> 2.3)
6
+ git (~> 1.2)
7
+
8
+ GEM
9
+ remote: https://rubygems.org/
10
+ specs:
11
+ addressable (2.3.5)
12
+ classifier (1.3.3)
13
+ fast-stemmer (>= 1.0.0)
14
+ colorator (0.1)
15
+ commander (4.1.5)
16
+ highline (~> 1.6.11)
17
+ diff-lcs (1.2.5)
18
+ docile (1.1.0)
19
+ fast-stemmer (1.0.2)
20
+ ffi (1.9.3)
21
+ git (1.2.6)
22
+ highline (1.6.20)
23
+ jekyll (1.3.0)
24
+ classifier (~> 1.3)
25
+ colorator (~> 0.1)
26
+ commander (~> 4.1.3)
27
+ liquid (~> 2.5.2)
28
+ listen (~> 1.3)
29
+ maruku (~> 0.6.0)
30
+ pygments.rb (~> 0.5.0)
31
+ redcarpet (~> 2.3.0)
32
+ safe_yaml (~> 0.9.7)
33
+ liquid (2.5.3)
34
+ listen (1.3.1)
35
+ rb-fsevent (>= 0.9.3)
36
+ rb-inotify (>= 0.9)
37
+ rb-kqueue (>= 0.2)
38
+ lockfile (2.1.0)
39
+ maruku (0.6.1)
40
+ syntax (>= 1.0.0)
41
+ multi_json (1.8.2)
42
+ posix-spawn (0.3.6)
43
+ pygments.rb (0.5.4)
44
+ posix-spawn (~> 0.3.6)
45
+ yajl-ruby (~> 1.1.0)
46
+ rake (10.1.0)
47
+ rb-fsevent (0.9.3)
48
+ rb-inotify (0.9.2)
49
+ ffi (>= 0.5.0)
50
+ rb-kqueue (0.2.0)
51
+ ffi (>= 0.5.0)
52
+ redcarpet (2.3.0)
53
+ rspec (2.14.1)
54
+ rspec-core (~> 2.14.0)
55
+ rspec-expectations (~> 2.14.0)
56
+ rspec-mocks (~> 2.14.0)
57
+ rspec-core (2.14.7)
58
+ rspec-expectations (2.14.4)
59
+ diff-lcs (>= 1.1.3, < 2.0)
60
+ rspec-fire (1.3.0)
61
+ rspec (>= 2.11, < 4)
62
+ rspec-mocks (2.14.4)
63
+ safe_yaml (0.9.7)
64
+ simplecov (0.8.1)
65
+ docile (~> 1.1.0)
66
+ lockfile (>= 2.1.0)
67
+ multi_json
68
+ simplecov-html (~> 0.8.0)
69
+ simplecov-html (0.8.0)
70
+ syntax (1.0.0)
71
+ yajl-ruby (1.1.0)
72
+
73
+ PLATFORMS
74
+ ruby
75
+
76
+ DEPENDENCIES
77
+ bundler (~> 1.3)
78
+ document_generator!
79
+ jekyll
80
+ rake
81
+ rspec (~> 2.14)
82
+ rspec-fire (~> 1.3)
83
+ simplecov (~> 0.7)
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2013 Mark McEahern
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,46 @@
1
+ # DocumentGenerator [![Build Status](https://travis-ci.org/stevenhallen/document_generator.png)](https://travis-ci.org/stevenhallen/document_generator) [![Code Climate](https://codeclimate.com/github/stevenhallen/document_generator.png)](https://codeclimate.com/github/stevenhallen/document_generator)
2
+
3
+ Generate GitHub pages from your repository's commits.
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ gem 'document_generator'
10
+
11
+ And then execute:
12
+
13
+ $ bundle
14
+
15
+ Or install it yourself as:
16
+
17
+ $ gem install document_generator
18
+
19
+ ## Usage
20
+
21
+ 1. Create an orphaned gh-pages branch (see how to [create GitHub creating project pages manually](https://help.github.com/articles/creating-project-pages-manually))
22
+
23
+ 2. Create rvm/rbenv project files
24
+
25
+ 3. Create a Gemfile and add `document_generator` to it
26
+
27
+ 4. Run the generator:
28
+
29
+ $ bundle exec doc_generate --url URL
30
+
31
+ where URL is your repository's URL.
32
+
33
+ ## Roadmap / Issues
34
+
35
+ 1. Provide option for using a subset of the commits in a repository (it
36
+ currently uses all commits on master)
37
+
38
+ 2. Provide option for specifying a branch (it currently uses master)
39
+
40
+ ## Contributing
41
+
42
+ 1. Fork it
43
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
44
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
45
+ 4. Push to the branch (`git push origin my-new-feature`)
46
+ 5. Create new Pull Request
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require 'bundler/gem_tasks'
2
+ require 'rspec/core/rake_task'
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task default: :spec
@@ -0,0 +1,100 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <title>{% if page.title }%} - {{page.title}}{% endif %}</title>
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+ <meta name="description" content="">
8
+ <meta name="author" content="">
9
+ <!-- styles -->
10
+ <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css">
11
+ <link rel="stylesheet" href="http://getbootstrap.com/docs-assets/css/docs.css" />
12
+ <style type="text/css">
13
+ /* override the bootstrap docs css */
14
+ body {
15
+ padding-top: 0;
16
+ }
17
+
18
+ h1 {
19
+ font-size: 22px;
20
+ }
21
+ h2 {
22
+ font-size: 18px;
23
+ }
24
+ h3 {
25
+ font-size: 16px;
26
+ }
27
+ h1, h2, h3 {
28
+ text-transform: uppercase;
29
+ }
30
+ </style>
31
+ </head>
32
+ <body>
33
+ <div class="navbar navbar-default">
34
+ <div class="container">
35
+ <div class="navbar-header">
36
+ <a href="/" class="navbar-brand">Modify this in _layouts/default.html
37
+ </a>
38
+ </div>
39
+ </div>
40
+ </div>
41
+ <div class="container">
42
+ <div class="row">
43
+ <div class="col-md-3">
44
+ <div class="bs-sidebar hidden-print" id="sidebar">
45
+ <ol id="menu" class="nav nav-list bs-sidenav">
46
+ {% include menu.md %}
47
+ </ol>
48
+ </div>
49
+ </div>
50
+ <div class="col-md-9">
51
+ {{content}}
52
+ <hr />
53
+ <div class="previous-page pull-left"></div>
54
+ <div class="next-page pull-right"></div>
55
+ </div>
56
+ </div>
57
+ </div>
58
+
59
+ <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js">
60
+ </script>
61
+ <script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
62
+
63
+ <script type="text/javascript">
64
+ $( document ).ready(function() {
65
+ $('#menu [data-section="{{page.section}}"]').addClass('active');
66
+ // Rewrite using data-attributes
67
+
68
+ var page_title = $('h1#main').text();
69
+ var current_item = $('ol#menu li a').filter(function(index) {
70
+ return $(this).text() === page_title;
71
+ });
72
+ current_item.parent().addClass( "active" );
73
+
74
+ var next_item = current_item.parent().next();
75
+ var previous_item = current_item.parent().prev();
76
+
77
+ if(previous_item.length) {
78
+ $('<a href="'+ previous_item.find('a').attr('href')
79
+ +'">'+ '← ' + previous_item.find('a').text()
80
+ +'</a>').appendTo($('.previous-page'));
81
+ }
82
+ else {
83
+ // If no previous item and no next item, it is the index page
84
+ // So, show link to the first item in the list
85
+ if(!next_item.length) {
86
+ $('<a href="'+ $('ol#menu li a').first().attr('href')
87
+ +'">'+ $('ol#menu li a').first().text() + ' →'
88
+ +'</a>').appendTo($('.next-page'));
89
+ }
90
+ }
91
+
92
+ if(next_item.length){
93
+ $('<a href="'+ next_item.find('a').attr('href')
94
+ +'">'+ next_item.find('a').text() + ' →'
95
+ +'</a>').appendTo($('.next-page'));
96
+ }
97
+ });
98
+ </script>
99
+ </body>
100
+ </html>
@@ -0,0 +1,100 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <title>{% if page.title }%} - {{page.title}}{% endif %}</title>
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+ <meta name="description" content="">
8
+ <meta name="author" content="">
9
+ <!-- styles -->
10
+ <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css">
11
+ <link rel="stylesheet" href="http://getbootstrap.com/docs-assets/css/docs.css" />
12
+ <style type="text/css">
13
+ /* override the bootstrap docs css */
14
+ body {
15
+ padding-top: 0;
16
+ }
17
+
18
+ h1 {
19
+ font-size: 22px;
20
+ }
21
+ h2 {
22
+ font-size: 18px;
23
+ }
24
+ h3 {
25
+ font-size: 16px;
26
+ }
27
+ h1, h2, h3 {
28
+ text-transform: uppercase;
29
+ }
30
+ </style>
31
+ </head>
32
+ <body>
33
+ <div class="navbar navbar-default">
34
+ <div class="container">
35
+ <div class="navbar-header">
36
+ <a href="/" class="navbar-brand">Modify this in _layouts/default.html
37
+ </a>
38
+ </div>
39
+ </div>
40
+ </div>
41
+ <div class="container">
42
+ <div class="row">
43
+ <div class="col-md-3">
44
+ <div class="bs-sidebar hidden-print" id="sidebar">
45
+ <ol id="menu" class="nav nav-list bs-sidenav">
46
+ {% include menu.md %}
47
+ </ol>
48
+ </div>
49
+ </div>
50
+ <div class="col-md-9">
51
+ {{content}}
52
+ <hr />
53
+ <div class="previous-page pull-left"></div>
54
+ <div class="next-page pull-right"></div>
55
+ </div>
56
+ </div>
57
+ </div>
58
+
59
+ <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js">
60
+ </script>
61
+ <script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
62
+
63
+ <script type="text/javascript">
64
+ $( document ).ready(function() {
65
+ $('#menu [data-section="{{page.section}}"]').addClass('active');
66
+ // Rewrite using data-attributes
67
+
68
+ var page_title = $('h1#main').text();
69
+ var current_item = $('ol#menu li a').filter(function(index) {
70
+ return $(this).text() === page_title;
71
+ });
72
+ current_item.parent().addClass( "active" );
73
+
74
+ var next_item = current_item.parent().next();
75
+ var previous_item = current_item.parent().prev();
76
+
77
+ if(previous_item.length) {
78
+ $('<a href="'+ previous_item.find('a').attr('href')
79
+ +'">'+ '← ' + previous_item.find('a').text()
80
+ +'</a>').appendTo($('.previous-page'));
81
+ }
82
+ else {
83
+ // If no previous item and no next item, it is the index page
84
+ // So, show link to the first item in the list
85
+ if(!next_item.length) {
86
+ $('<a href="'+ $('ol#menu li a').first().attr('href')
87
+ +'">'+ $('ol#menu li a').first().text() + ' →'
88
+ +'</a>').appendTo($('.next-page'));
89
+ }
90
+ }
91
+
92
+ if(next_item.length){
93
+ $('<a href="'+ next_item.find('a').attr('href')
94
+ +'">'+ next_item.find('a').text() + ' →'
95
+ +'</a>').appendTo($('.next-page'));
96
+ }
97
+ });
98
+ </script>
99
+ </body>
100
+ </html>
data/bin/doc_generate ADDED
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'document_generator'
4
+
5
+ DocumentGenerator::CLI.start(ARGV)
data/coderay.css ADDED
@@ -0,0 +1,129 @@
1
+ .CodeRay {
2
+ background-color: hsl(0,0%,95%);
3
+ border: 1px solid silver;
4
+ color: black;
5
+ }
6
+ .CodeRay pre {
7
+ margin: 0px;
8
+ }
9
+
10
+ span.CodeRay { white-space: pre; border: 0px; padding: 2px; }
11
+
12
+ table.CodeRay { border-collapse: collapse; width: 100%; padding: 2px; }
13
+ table.CodeRay td { padding: 2px 4px; vertical-align: top; }
14
+
15
+ .CodeRay .line-numbers {
16
+ color: gray;
17
+ text-align: right;
18
+ -webkit-user-select: none;
19
+ -moz-user-select: none;
20
+ user-select: none;
21
+ }
22
+ .CodeRay .line-numbers a {
23
+ color: gray !important;
24
+ text-decoration: none !important;
25
+ }
26
+ .CodeRay .line-numbers pre {
27
+ word-break: normal;
28
+ border-right: 1px solid #ddd;
29
+ }
30
+ .CodeRay .line-numbers a:target { color: blue !important; }
31
+ .CodeRay .line-numbers .highlighted { color: red !important; }
32
+ .CodeRay .line-numbers .highlighted a { color: red !important; }
33
+ .CodeRay span.line-numbers { padding: 0px 4px; }
34
+ .CodeRay .line { display: block; float: left; width: 100%; }
35
+ .CodeRay .code { width: 100%; }
36
+
37
+ .CodeRay .debug { color: white !important; background: blue !important; }
38
+
39
+ .CodeRay .annotation { color:#007 }
40
+ .CodeRay .attribute-name { color:#b48 }
41
+ .CodeRay .attribute-value { color:#700 }
42
+ .CodeRay .binary { color:#549 }
43
+ .CodeRay .binary .char { color:#325 }
44
+ .CodeRay .binary .delimiter { color:#325 }
45
+ .CodeRay .char { color:#D20 }
46
+ .CodeRay .char .content { color:#D20 }
47
+ .CodeRay .char .delimiter { color:#710 }
48
+ .CodeRay .class { color:#B06; font-weight:bold }
49
+ .CodeRay .class-variable { color:#369 }
50
+ .CodeRay .color { color:#0A0 }
51
+ .CodeRay .comment { color:#777 }
52
+ .CodeRay .comment .char { color:#444 }
53
+ .CodeRay .comment .delimiter { color:#444 }
54
+ .CodeRay .constant { color:#036; font-weight:bold }
55
+ .CodeRay .decorator { color:#B0B }
56
+ .CodeRay .definition { color:#099; font-weight:bold }
57
+ .CodeRay .delimiter { color:black }
58
+ .CodeRay .directive { color:#088; font-weight:bold }
59
+ .CodeRay .docstring { color:#D42; }
60
+ .CodeRay .doctype { color:#34b }
61
+ .CodeRay .done { text-decoration: line-through; color: gray }
62
+ .CodeRay .entity { color:#800; font-weight:bold }
63
+ .CodeRay .error { color:#F00; background-color:#FAA }
64
+ .CodeRay .escape { color:#666 }
65
+ .CodeRay .exception { color:#C00; font-weight:bold }
66
+ .CodeRay .float { color:#60E }
67
+ .CodeRay .function { color:#06B; font-weight:bold }
68
+ .CodeRay .function .delimiter { color:#024; font-weight:bold }
69
+ .CodeRay .global-variable { color:#d70 }
70
+ .CodeRay .hex { color:#02b }
71
+ .CodeRay .id { color:#33D; font-weight:bold }
72
+ .CodeRay .include { color:#B44; font-weight:bold }
73
+ .CodeRay .inline { background-color: hsla(0,0%,0%,0.07); color: black }
74
+ .CodeRay .inline-delimiter { font-weight: bold; color: #666 }
75
+ .CodeRay .instance-variable { color:#33B }
76
+ .CodeRay .integer { color:#00D }
77
+ .CodeRay .imaginary { color:#f00 }
78
+ .CodeRay .important { color:#D00 }
79
+ .CodeRay .key { color: #606 }
80
+ .CodeRay .key .char { color: #60f }
81
+ .CodeRay .key .delimiter { color: #404 }
82
+ .CodeRay .keyword { color:#080; font-weight:bold }
83
+ .CodeRay .label { color:#970; font-weight:bold }
84
+ .CodeRay .local-variable { color:#950 }
85
+ .CodeRay .map .content { color:#808 }
86
+ .CodeRay .map .delimiter { color:#40A}
87
+ .CodeRay .map { background-color:hsla(200,100%,50%,0.06); }
88
+ .CodeRay .namespace { color:#707; font-weight:bold }
89
+ .CodeRay .octal { color:#40E }
90
+ .CodeRay .operator { }
91
+ .CodeRay .predefined { color:#369; font-weight:bold }
92
+ .CodeRay .predefined-constant { color:#069 }
93
+ .CodeRay .predefined-type { color:#0a8; font-weight:bold }
94
+ .CodeRay .preprocessor { color:#579 }
95
+ .CodeRay .pseudo-class { color:#00C; font-weight:bold }
96
+ .CodeRay .regexp { background-color:hsla(300,100%,50%,0.06); }
97
+ .CodeRay .regexp .content { color:#808 }
98
+ .CodeRay .regexp .delimiter { color:#404 }
99
+ .CodeRay .regexp .modifier { color:#C2C }
100
+ .CodeRay .reserved { color:#080; font-weight:bold }
101
+ .CodeRay .shell { background-color:hsla(120,100%,50%,0.06); }
102
+ .CodeRay .shell .content { color:#2B2 }
103
+ .CodeRay .shell .delimiter { color:#161 }
104
+ .CodeRay .string { background-color:hsla(0,100%,50%,0.05); }
105
+ .CodeRay .string .char { color: #b0b }
106
+ .CodeRay .string .content { color: #D20 }
107
+ .CodeRay .string .delimiter { color: #710 }
108
+ .CodeRay .string .modifier { color: #E40 }
109
+ .CodeRay .symbol { color:#A60 }
110
+ .CodeRay .symbol .content { color:#A60 }
111
+ .CodeRay .symbol .delimiter { color:#740 }
112
+ .CodeRay .tag { color:#070; font-weight:bold }
113
+ .CodeRay .type { color:#339; font-weight:bold }
114
+ .CodeRay .value { color: #088 }
115
+ .CodeRay .variable { color:#037 }
116
+
117
+ .CodeRay .insert { background: hsla(120,100%,50%,0.12) }
118
+ .CodeRay .delete { background: hsla(0,100%,50%,0.12) }
119
+ .CodeRay .change { color: #bbf; background: #007 }
120
+ .CodeRay .head { color: #f8f; background: #505 }
121
+ .CodeRay .head .filename { color: white; }
122
+
123
+ .CodeRay .delete .eyecatcher { background-color: hsla(0,100%,50%,0.2); border: 1px solid hsla(0,100%,45%,0.5); margin: -1px; border-bottom: none; border-top-left-radius: 5px; border-top-right-radius: 5px; }
124
+ .CodeRay .insert .eyecatcher { background-color: hsla(120,100%,50%,0.2); border: 1px solid hsla(120,100%,25%,0.5); margin: -1px; border-top: none; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; }
125
+
126
+ .CodeRay .insert .insert { color: #0c0; background:transparent; font-weight:bold }
127
+ .CodeRay .delete .delete { color: #c00; background:transparent; font-weight:bold }
128
+ .CodeRay .change .change { color: #88f }
129
+ .CodeRay .head .head { color: #f4f }