docjs 0.2 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +14 -0
- data/bin/docjs +85 -46
- data/bin/docjs.rb +85 -46
- data/docjs.gemspec +2 -2
- data/docs/guides/CUSTOMIZE.md +90 -0
- data/lib/boot.rb +12 -2
- data/lib/code_object/base.rb +0 -4
- data/lib/code_object/converter.rb +10 -11
- data/lib/configs.rb +28 -0
- data/lib/document/document.rb +21 -0
- data/lib/dom/dom.rb +0 -9
- data/lib/generator/generator.rb +168 -53
- data/lib/helper/helper.rb +3 -0
- data/lib/parser/comment.rb +1 -1
- data/lib/parser/comment_parser.rb +8 -4
- data/lib/parser/meta_container.rb +5 -1
- data/lib/parser/parser.rb +36 -10
- data/lib/processor.rb +70 -38
- data/lib/renderer.rb +100 -1
- data/lib/thor.rb +2 -0
- data/lib/token/container.rb +9 -5
- data/lib/token/handler.rb +1 -3
- data/lib/token/token.rb +2 -0
- data/templates/generators/api_index_generator.rb +1 -0
- data/templates/generators/api_pages_generator.rb +2 -0
- data/templates/generators/docs_generator.rb +2 -0
- data/templates/generators/json_generator.rb +16 -0
- data/templates/helpers/template.rb +24 -7
- data/templates/resources/css/application.css +18 -3
- data/templates/resources/scss/_header.scss +2 -2
- data/templates/resources/scss/_helpers.scss +3 -2
- data/templates/resources/scss/application.scss +15 -0
- data/test/parser/intelligent_skip_until.rb +10 -0
- data/test/parser/parser.rb +44 -0
- metadata +50 -47
data/README.md
CHANGED
@@ -8,6 +8,10 @@ Doc.js is a JavaScript-Documentation tool which detects `tokens` in your comment
|
|
8
8
|
documentation out of it. Doc.js could be ported pretty easy to any other language, because the most
|
9
9
|
of it's parts are language agnostic.
|
10
10
|
|
11
|
+
Demo Projects
|
12
|
+
-------------
|
13
|
+
- [arrayJS](http://b-studios.github.com/arrayJS/)
|
14
|
+
|
11
15
|
Features
|
12
16
|
--------
|
13
17
|
- One command to install
|
@@ -25,6 +29,13 @@ If you read this, you may belong to one of the following groups:
|
|
25
29
|
2. You need some more {file:USE.md information, how to use Doc.js}
|
26
30
|
3. You want to {file:CUSTOMIZE.md customize Doc.js}, to exactly fit your needs
|
27
31
|
|
32
|
+
Useful Information
|
33
|
+
------------------
|
34
|
+
- List of supported {file:USE.md#Available_Tokens Tokens}
|
35
|
+
- Built in {Token::Handler Handlers}
|
36
|
+
- Overview about {Generator::Generator Generators}
|
37
|
+
|
38
|
+
|
28
39
|
Supported Ruby-Version
|
29
40
|
----------------------
|
30
41
|
Currently **only ruby > 1.9.x is supported**. Support for 1.8.x is not planned, because there are
|
@@ -39,6 +50,9 @@ find the time to fix thoses and the first problem in 1.8.x so only 1.9+ is suppo
|
|
39
50
|
the time to work on 1.8 compatibility you would make me (and possibly some other 1.8 users) very
|
40
51
|
happy.
|
41
52
|
|
53
|
+
Architectural Insides
|
54
|
+
---------------------
|
55
|
+
{DocJs} is a good starting point if you want to get started with information about the structure of DocJs.
|
42
56
|
|
43
57
|
Installation
|
44
58
|
------------
|
data/bin/docjs
CHANGED
@@ -3,53 +3,60 @@
|
|
3
3
|
require 'pathname'
|
4
4
|
require Pathname.new(__FILE__).realpath + '../../lib/boot'
|
5
5
|
|
6
|
-
# @todo The general flow of information should be documented here
|
7
|
-
#
|
8
|
-
# --String--> [Parser] --Commentstream--> [CodeObjectFactory] --Objectstream--> [Registry]
|
9
|
-
#
|
10
|
-
# Parser
|
11
|
-
# ------
|
12
|
-
# Turns the incoming stream of characters (string) into a stream of
|
13
|
-
# {Parser::Comment comments}. Those comments contain the parsed doclines, which
|
14
|
-
# are simply all lines found in the comment and all tokenlines.
|
15
|
-
|
16
6
|
# configure approot
|
17
7
|
Configs.set :root => Pathname.new(__FILE__).realpath + '../..'
|
18
8
|
|
19
|
-
#
|
20
|
-
#
|
21
|
-
#
|
22
|
-
#
|
23
|
-
#
|
24
|
-
#
|
9
|
+
# Program Flow
|
10
|
+
# ------------
|
11
|
+
# ![Program flow](img/md_total_flow.svg)
|
12
|
+
#
|
13
|
+
# 1. {#setup_application Prepare Doc.js} - Read configurations and setup application environment
|
14
|
+
# 2. {Processor.prepare_documents Process Markdown Documents} - Read the optional markdown-documents and add them to the internal
|
15
|
+
# datastructure.
|
16
|
+
# 3. {Parser::Parser Process JavaScript Files} - Parse JavaScript-Files and add the found comments to the Dom.
|
17
|
+
# Afterwards process the tokens within the comments.
|
18
|
+
# 4. {Generator::Generator Render Templates} - Apply the Outputgenerators and save the rendered templates to disk
|
19
|
+
# 5. Copy static resources - Finalize the output and copy the javascript, images and stylesheets to
|
20
|
+
# the output-directory
|
21
|
+
#
|
22
|
+
# The {Processor} is the central module, which controls the workflow described above. It separates
|
23
|
+
# the tasks into different stages, which are performed one after another. (You can see this in
|
24
|
+
# the source-code of {DocJs#docjs})
|
25
|
+
#
|
26
|
+
# The Command Line Interface
|
27
|
+
# --------------------------
|
28
|
+
# The `DocJs`-class serves as command line interface (cli) and therefore extends Thor. It allows us
|
29
|
+
# to create tasks, which then in turn can be called from the command line.
|
30
|
+
# This way every instance method of `DocJs` will be turned into a commandline task.
|
31
|
+
#
|
32
|
+
# docjs help configure
|
33
|
+
#
|
34
|
+
# Will create an instance of DocJs and call the {#help} method on it. (Which results in the help screen
|
35
|
+
# being displayed). As help expects one argument 'configure' is passed to the call of `help`. All
|
36
|
+
# additional commandline arguments would be parsed by Thor and added to the instance variable
|
37
|
+
# `configs`.
|
38
|
+
#
|
39
|
+
# The Internal Datastructure
|
40
|
+
# --------------------------
|
41
|
+
# All parsed CodeObjects (i.e. comments found in your JavaScript-soures) are internally represented
|
42
|
+
# as a Dom-Tree. They can be accessed via {Dom.root}
|
43
|
+
#
|
44
|
+
# Also all Markdown-Documents are stored in the same Dom-tree, but under a different root-node called
|
45
|
+
# {Dom.docs}.
|
46
|
+
#
|
47
|
+
# For more information about storing and retreiving Data in DocJs see {Dom}.
|
48
|
+
#
|
49
|
+
#
|
50
|
+
# @see https://github.com/wycats/thor/wiki
|
51
|
+
# @see Processor
|
25
52
|
#
|
26
53
|
# @note options declared in a docjs.yml will override command-line ones
|
54
|
+
# @note for more information about the **instance methods** please type `docjs help` or
|
55
|
+
# `docjs help TASK` into your commandline or reference the {file:README.md#Guides guides}.
|
27
56
|
class DocJs < Thor
|
28
57
|
|
29
58
|
include Thor::Actions
|
30
|
-
|
31
|
-
def help(task = nil)
|
32
|
-
|
33
|
-
# Introduction
|
34
|
-
unless task
|
35
|
-
say "Welcome to Doc.js", :bold
|
36
|
-
say "If you are using Doc.js for the first time in your project, you may want to create a config file (like docjs.yml)
|
37
|
-
A guided wizard can help you achieving this goal - Simply run the following command:
|
38
|
-
docjs configure
|
39
|
-
\n
|
40
|
-
After creating a config-file (like docjs.yml) the documentation can be generated by running:
|
41
|
-
docjs docjs.yml
|
42
|
-
|
43
|
-
For further information, please visit http://b-studios.github.com/doc.js\n\n"
|
44
|
-
|
45
|
-
self.class.help(shell, false)
|
46
59
|
|
47
|
-
# Help for a specific task
|
48
|
-
else
|
49
|
-
self.class.task_help(shell, task)
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
60
|
desc "CONFIG_FILE", "Starts documentation process"
|
54
61
|
set_options :files =>
|
55
62
|
{ :type => :array, :aliases => '-f', :default => [] },
|
@@ -78,10 +85,12 @@ For further information, please visit http://b-studios.github.com/doc.js\n\n"
|
|
78
85
|
configs = config_file ? merge_options(options, config_file) : options
|
79
86
|
|
80
87
|
begin
|
88
|
+
|
89
|
+
# PREPARE DOCJS
|
90
|
+
|
81
91
|
# Setup Logger and Configs
|
82
92
|
setup_application configs
|
83
93
|
|
84
|
-
# Load application specific files
|
85
94
|
Logger.info "Loading Application-Templates"
|
86
95
|
load_templates
|
87
96
|
|
@@ -89,24 +98,54 @@ For further information, please visit http://b-studios.github.com/doc.js\n\n"
|
|
89
98
|
DocJs.source_root(Configs.templates)
|
90
99
|
self.destination_root = Configs.output
|
91
100
|
|
92
|
-
# Process specified docs and add them to dom-tree
|
93
|
-
Processor.prepare_documents
|
94
101
|
|
95
|
-
#
|
96
|
-
Processor.
|
102
|
+
# PROCESS MARKDOWN DOCUMENTS
|
103
|
+
Processor.prepare_documents # Stage #1
|
104
|
+
|
105
|
+
# PROCESS JAVASCRIPT FILES
|
106
|
+
Processor.process_files_to_dom # Stage #2
|
107
|
+
|
108
|
+
# RENDER TEMPLATES
|
109
|
+
Processor.start_generators # Stage #3
|
110
|
+
|
97
111
|
|
98
|
-
#
|
112
|
+
# COPY STATIC RESOURCES
|
99
113
|
Logger.info "Copying template resources to output"
|
100
|
-
directory 'resources/img', './img'
|
114
|
+
directory 'resources/img', './img'
|
101
115
|
directory 'resources/css', './css'
|
102
116
|
directory 'resources/js', './js'
|
103
|
-
|
117
|
+
|
118
|
+
# Print error on console, if something bad happend
|
104
119
|
rescue Exception => error
|
105
120
|
Logger.error error.message + "\n" + error.backtrace.map{|l| " #{l}" }.join("\n")
|
106
121
|
end
|
107
122
|
end
|
108
123
|
|
109
124
|
|
125
|
+
|
126
|
+
def help(task = nil)
|
127
|
+
|
128
|
+
# Introduction
|
129
|
+
unless task
|
130
|
+
say "Welcome to Doc.js", :bold
|
131
|
+
say "If you are using Doc.js for the first time in your project, you may want to create a config file (like docjs.yml)
|
132
|
+
A guided wizard can help you achieving this goal - Simply run the following command:
|
133
|
+
docjs configure
|
134
|
+
\n
|
135
|
+
After creating a config-file (like docjs.yml) the documentation can be generated by running:
|
136
|
+
docjs docjs.yml
|
137
|
+
|
138
|
+
For further information, please visit http://b-studios.github.com/doc.js\n\n"
|
139
|
+
|
140
|
+
self.class.help(shell, false)
|
141
|
+
|
142
|
+
# Help for a specific task
|
143
|
+
else
|
144
|
+
self.class.task_help(shell, task)
|
145
|
+
end
|
146
|
+
end
|
147
|
+
|
148
|
+
|
110
149
|
|
111
150
|
desc "configure [NEW_CONFIGFILE]", "Helps you creating your docjs.yml to start off with doc.js"
|
112
151
|
def configure(output_file = "docjs.yml", preconfigured = {})
|
data/bin/docjs.rb
CHANGED
@@ -3,53 +3,60 @@
|
|
3
3
|
require 'pathname'
|
4
4
|
require Pathname.new(__FILE__).realpath + '../../lib/boot'
|
5
5
|
|
6
|
-
# @todo The general flow of information should be documented here
|
7
|
-
#
|
8
|
-
# --String--> [Parser] --Commentstream--> [CodeObjectFactory] --Objectstream--> [Registry]
|
9
|
-
#
|
10
|
-
# Parser
|
11
|
-
# ------
|
12
|
-
# Turns the incoming stream of characters (string) into a stream of
|
13
|
-
# {Parser::Comment comments}. Those comments contain the parsed doclines, which
|
14
|
-
# are simply all lines found in the comment and all tokenlines.
|
15
|
-
|
16
6
|
# configure approot
|
17
7
|
Configs.set :root => Pathname.new(__FILE__).realpath + '../..'
|
18
8
|
|
19
|
-
#
|
20
|
-
#
|
21
|
-
#
|
22
|
-
#
|
23
|
-
#
|
24
|
-
#
|
9
|
+
# Program Flow
|
10
|
+
# ------------
|
11
|
+
# ![Program flow](img/md_total_flow.svg)
|
12
|
+
#
|
13
|
+
# 1. {#setup_application Prepare Doc.js} - Read configurations and setup application environment
|
14
|
+
# 2. {Processor.prepare_documents Process Markdown Documents} - Read the optional markdown-documents and add them to the internal
|
15
|
+
# datastructure.
|
16
|
+
# 3. {Parser::Parser Process JavaScript Files} - Parse JavaScript-Files and add the found comments to the Dom.
|
17
|
+
# Afterwards process the tokens within the comments.
|
18
|
+
# 4. {Generator::Generator Render Templates} - Apply the Outputgenerators and save the rendered templates to disk
|
19
|
+
# 5. Copy static resources - Finalize the output and copy the javascript, images and stylesheets to
|
20
|
+
# the output-directory
|
21
|
+
#
|
22
|
+
# The {Processor} is the central module, which controls the workflow described above. It separates
|
23
|
+
# the tasks into different stages, which are performed one after another. (You can see this in
|
24
|
+
# the source-code of {DocJs#docjs})
|
25
|
+
#
|
26
|
+
# The Command Line Interface
|
27
|
+
# --------------------------
|
28
|
+
# The `DocJs`-class serves as command line interface (cli) and therefore extends Thor. It allows us
|
29
|
+
# to create tasks, which then in turn can be called from the command line.
|
30
|
+
# This way every instance method of `DocJs` will be turned into a commandline task.
|
31
|
+
#
|
32
|
+
# docjs help configure
|
33
|
+
#
|
34
|
+
# Will create an instance of DocJs and call the {#help} method on it. (Which results in the help screen
|
35
|
+
# being displayed). As help expects one argument 'configure' is passed to the call of `help`. All
|
36
|
+
# additional commandline arguments would be parsed by Thor and added to the instance variable
|
37
|
+
# `configs`.
|
38
|
+
#
|
39
|
+
# The Internal Datastructure
|
40
|
+
# --------------------------
|
41
|
+
# All parsed CodeObjects (i.e. comments found in your JavaScript-soures) are internally represented
|
42
|
+
# as a Dom-Tree. They can be accessed via {Dom.root}
|
43
|
+
#
|
44
|
+
# Also all Markdown-Documents are stored in the same Dom-tree, but under a different root-node called
|
45
|
+
# {Dom.docs}.
|
46
|
+
#
|
47
|
+
# For more information about storing and retreiving Data in DocJs see {Dom}.
|
48
|
+
#
|
49
|
+
#
|
50
|
+
# @see https://github.com/wycats/thor/wiki
|
51
|
+
# @see Processor
|
25
52
|
#
|
26
53
|
# @note options declared in a docjs.yml will override command-line ones
|
54
|
+
# @note for more information about the **instance methods** please type `docjs help` or
|
55
|
+
# `docjs help TASK` into your commandline or reference the {file:README.md#Guides guides}.
|
27
56
|
class DocJs < Thor
|
28
57
|
|
29
58
|
include Thor::Actions
|
30
|
-
|
31
|
-
def help(task = nil)
|
32
|
-
|
33
|
-
# Introduction
|
34
|
-
unless task
|
35
|
-
say "Welcome to Doc.js", :bold
|
36
|
-
say "If you are using Doc.js for the first time in your project, you may want to create a config file (like docjs.yml)
|
37
|
-
A guided wizard can help you achieving this goal - Simply run the following command:
|
38
|
-
docjs configure
|
39
|
-
\n
|
40
|
-
After creating a config-file (like docjs.yml) the documentation can be generated by running:
|
41
|
-
docjs docjs.yml
|
42
|
-
|
43
|
-
For further information, please visit http://b-studios.github.com/doc.js\n\n"
|
44
|
-
|
45
|
-
self.class.help(shell, false)
|
46
59
|
|
47
|
-
# Help for a specific task
|
48
|
-
else
|
49
|
-
self.class.task_help(shell, task)
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
60
|
desc "CONFIG_FILE", "Starts documentation process"
|
54
61
|
set_options :files =>
|
55
62
|
{ :type => :array, :aliases => '-f', :default => [] },
|
@@ -78,10 +85,12 @@ For further information, please visit http://b-studios.github.com/doc.js\n\n"
|
|
78
85
|
configs = config_file ? merge_options(options, config_file) : options
|
79
86
|
|
80
87
|
begin
|
88
|
+
|
89
|
+
# PREPARE DOCJS
|
90
|
+
|
81
91
|
# Setup Logger and Configs
|
82
92
|
setup_application configs
|
83
93
|
|
84
|
-
# Load application specific files
|
85
94
|
Logger.info "Loading Application-Templates"
|
86
95
|
load_templates
|
87
96
|
|
@@ -89,24 +98,54 @@ For further information, please visit http://b-studios.github.com/doc.js\n\n"
|
|
89
98
|
DocJs.source_root(Configs.templates)
|
90
99
|
self.destination_root = Configs.output
|
91
100
|
|
92
|
-
# Process specified docs and add them to dom-tree
|
93
|
-
Processor.prepare_documents
|
94
101
|
|
95
|
-
#
|
96
|
-
Processor.
|
102
|
+
# PROCESS MARKDOWN DOCUMENTS
|
103
|
+
Processor.prepare_documents # Stage #1
|
104
|
+
|
105
|
+
# PROCESS JAVASCRIPT FILES
|
106
|
+
Processor.process_files_to_dom # Stage #2
|
107
|
+
|
108
|
+
# RENDER TEMPLATES
|
109
|
+
Processor.start_generators # Stage #3
|
110
|
+
|
97
111
|
|
98
|
-
#
|
112
|
+
# COPY STATIC RESOURCES
|
99
113
|
Logger.info "Copying template resources to output"
|
100
|
-
directory 'resources/img', './img'
|
114
|
+
directory 'resources/img', './img'
|
101
115
|
directory 'resources/css', './css'
|
102
116
|
directory 'resources/js', './js'
|
103
|
-
|
117
|
+
|
118
|
+
# Print error on console, if something bad happend
|
104
119
|
rescue Exception => error
|
105
120
|
Logger.error error.message + "\n" + error.backtrace.map{|l| " #{l}" }.join("\n")
|
106
121
|
end
|
107
122
|
end
|
108
123
|
|
109
124
|
|
125
|
+
|
126
|
+
def help(task = nil)
|
127
|
+
|
128
|
+
# Introduction
|
129
|
+
unless task
|
130
|
+
say "Welcome to Doc.js", :bold
|
131
|
+
say "If you are using Doc.js for the first time in your project, you may want to create a config file (like docjs.yml)
|
132
|
+
A guided wizard can help you achieving this goal - Simply run the following command:
|
133
|
+
docjs configure
|
134
|
+
\n
|
135
|
+
After creating a config-file (like docjs.yml) the documentation can be generated by running:
|
136
|
+
docjs docjs.yml
|
137
|
+
|
138
|
+
For further information, please visit http://b-studios.github.com/doc.js\n\n"
|
139
|
+
|
140
|
+
self.class.help(shell, false)
|
141
|
+
|
142
|
+
# Help for a specific task
|
143
|
+
else
|
144
|
+
self.class.task_help(shell, task)
|
145
|
+
end
|
146
|
+
end
|
147
|
+
|
148
|
+
|
110
149
|
|
111
150
|
desc "configure [NEW_CONFIGFILE]", "Helps you creating your docjs.yml to start off with doc.js"
|
112
151
|
def configure(output_file = "docjs.yml", preconfigured = {})
|
data/docjs.gemspec
CHANGED
@@ -4,8 +4,8 @@ Gem::Specification.new do |s|
|
|
4
4
|
|
5
5
|
|
6
6
|
s.name = 'docjs'
|
7
|
-
s.version = '0.2'
|
8
|
-
s.date = '
|
7
|
+
s.version = '0.2.1'
|
8
|
+
s.date = '2012-10-06'
|
9
9
|
s.summary = "Javascript Documentation Generator"
|
10
10
|
s.description = "Create beautiful Javascript documentations with this ruby-gem. It's pretty easy to customize and add your own tokens/DSL."
|
11
11
|
s.homepage = "https://github.com/b-studios/doc.js"
|
data/docs/guides/CUSTOMIZE.md
CHANGED
@@ -1,3 +1,93 @@
|
|
1
|
+
Customization
|
2
|
+
=============
|
3
|
+
All of the following Guides require modifications of the default-templates. To start of with your own
|
4
|
+
templates simply type:
|
5
|
+
|
6
|
+
docjs scaffold TEMPLATE_PATH
|
7
|
+
|
8
|
+
in your console and replace `TEMPLATE_PATH` with the path you wish the templates to be generated in.
|
9
|
+
This command will copy the default templates to `TEMPLATE_PATH`, which results in a structure similiar
|
10
|
+
to:
|
11
|
+
|
12
|
+
my_templates/
|
13
|
+
generators/
|
14
|
+
helpers/
|
15
|
+
resources/
|
16
|
+
tokens/
|
17
|
+
types/
|
18
|
+
views/
|
19
|
+
application.rb
|
20
|
+
|
21
|
+
If you take a look at `application.rb` you will see, that all it does is to require the files, which
|
22
|
+
are placed within the other template-folders.
|
23
|
+
|
24
|
+
generators/
|
25
|
+
-----------
|
26
|
+
Contains all custom generators, which are needed to create html or json-files from the internal data-
|
27
|
+
structure. In section {file:CUSTOMIZE.md#Modifying_a_Generator Modifying a Generator} you can learn
|
28
|
+
a bit more about the use of a generator and how to customize it.
|
29
|
+
|
30
|
+
**Contents:**
|
31
|
+
|
32
|
+
- {Generator::ApiIndexGenerator}
|
33
|
+
- {Generator::ApiPagesGenerator}
|
34
|
+
- {Generator::DocsGenerator}
|
35
|
+
- {Generator::JsonGenerator}
|
36
|
+
|
37
|
+
helpers/
|
38
|
+
--------
|
39
|
+
Helpers are, like helpers in Rails, included into your generator and can be used there and in the views
|
40
|
+
aswell. (See Section Helpers in {Generator::Generator})
|
41
|
+
|
42
|
+
**Contents:**
|
43
|
+
|
44
|
+
- {Helper::Template}
|
45
|
+
|
46
|
+
resources/
|
47
|
+
----------
|
48
|
+
Contains all static template resources like **css**, **js** and **img** files
|
49
|
+
|
50
|
+
**Contents:**
|
51
|
+
|
52
|
+
- `css/application.css`
|
53
|
+
- `scss/application.scss` and all partials (starting with an underscore)
|
54
|
+
- `js/application.js` and all required libraries
|
55
|
+
- `img/object.png` and all other icons
|
56
|
+
|
57
|
+
tokens/
|
58
|
+
-------
|
59
|
+
Only consists of one file `tokens.rb`, which contains all the registered Tokens. You may find some more
|
60
|
+
information about the tokens in the {file:USE.md Usage-Guide}.
|
61
|
+
|
62
|
+
**Contents:**
|
63
|
+
|
64
|
+
- `tokens.rb`
|
65
|
+
|
66
|
+
types/
|
67
|
+
------
|
68
|
+
Types are special tokens. They categorize the Comments respectively CodeObject's by subclassing them.
|
69
|
+
Per default these are
|
70
|
+
|
71
|
+
**Contents:**
|
72
|
+
|
73
|
+
- {CodeObject::Object} (@object)
|
74
|
+
- {CodeObject::Function} (@function, @constructor, @method)
|
75
|
+
- {CodeObject::Prototype} (@prototype)
|
76
|
+
|
77
|
+
See {file:USE.md#Types Usage-Guide}
|
78
|
+
|
79
|
+
views/
|
80
|
+
------
|
81
|
+
Contains the `html.erb` template-files and partials, which will be rendered by the {Generator::Generator Generators}
|
82
|
+
|
83
|
+
**Contents:**
|
84
|
+
|
85
|
+
- `function/` All templates to render {CodeObject::Function @function-documentation}
|
86
|
+
- `object/` All templates to render {CodeObject::Object @object-documentation}
|
87
|
+
- `layouts/` Contains all layouts like `application.html.erb` and `json.html.erb`
|
88
|
+
- `tokens/` All templates, which a necessary to render a token (See {file:CUSTOMIZE.md#Creating_a_custom_template the Guide below})
|
89
|
+
|
90
|
+
|
1
91
|
1. Example - Adding a simple token
|
2
92
|
==================================
|
3
93
|
You can extend Doc.js on different levels. The easiest way of customization is to add a simple token.
|