diff options
author | Steven Barth <steven@midlink.org> | 2008-09-11 15:21:56 +0000 |
---|---|---|
committer | Steven Barth <steven@midlink.org> | 2008-09-11 15:21:56 +0000 |
commit | ecf5ed021f5009e89830ccb14450075eebe089e2 (patch) | |
tree | 9cca7639380a81febf650239340e9aa93f9f7cd3 /libs/uvldoc | |
parent | e5cb252043e0f5350ba26702e89a73713088d2a3 (diff) |
UVLDoc: Rendering optimizations and CSS style
Diffstat (limited to 'libs/uvldoc')
-rw-r--r-- | libs/uvldoc/luasrc/uvldoc/proto/xhtml/footer.xml | 6 | ||||
-rw-r--r-- | libs/uvldoc/luasrc/uvldoc/proto/xhtml/header.xml | 4 | ||||
-rw-r--r-- | libs/uvldoc/luasrc/uvldoc/proto/xhtml/index.xml | 4 | ||||
-rw-r--r-- | libs/uvldoc/luasrc/uvldoc/proto/xhtml/menu.xml | 8 | ||||
-rw-r--r-- | libs/uvldoc/luasrc/uvldoc/proto/xhtml/scheme.xml | 5 | ||||
-rw-r--r-- | libs/uvldoc/luasrc/uvldoc/proto/xhtml/section.xml | 56 | ||||
-rw-r--r-- | libs/uvldoc/luasrc/uvldoc/proto/xhtml/uvldoc.css | 127 | ||||
-rw-r--r-- | libs/uvldoc/luasrc/uvldoc/renderer.lua | 2 |
8 files changed, 191 insertions, 21 deletions
diff --git a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/footer.xml b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/footer.xml index d353ced18..4b974693b 100644 --- a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/footer.xml +++ b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/footer.xml @@ -1,9 +1,11 @@ -</div> - <div id="copy"> +<hr /> generated on <%=require "os".date("%c")%> with <a href="http://luci.freifunk-halle.net"><abbr title="Lua Configuration Interface">LuCI</abbr> UVLDoc</a> - written by Steven Barth and Jo-Philipp Wich </div> +</div> +<div class="clear"> </div> + </body> </html>
\ No newline at end of file diff --git a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/header.xml b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/header.xml index 9f18ad379..f4a89b56d 100644 --- a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/header.xml +++ b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/header.xml @@ -4,10 +4,10 @@ <head> <link rel="stylesheet" type="text/css" href="uvldoc.css" /> <meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8" /> - <title>LuCI UVLDoc</title> + <title><% if title then %><%=title%> - <% end %>LuCI UVLDoc</title> </head> <body> - + <div id="menu"> <%+menu.xml%> </div> diff --git a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/index.xml b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/index.xml index 269c7989a..a90500481 100644 --- a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/index.xml +++ b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/index.xml @@ -1,10 +1,10 @@ <%+header.xml%> <h1 class="index-title">UCI Documentation</h1> -<h3 class="index-subtitle">Configurations</h3> +<h3 class="index-subtitle">Schemes</h3> <table class="index"> <% for k, v in luci.util.kspairs(self.schemes) do %> <tr> - <td><a href="<%=self:_scheme_filename(k)%>"><%=k%></a></td> + <th><a href="<%=self:_scheme_filename(k)%>"><%=k%></a></th> <td><%=self.schemes[k].title%></td> </tr> <% end %> diff --git a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/menu.xml b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/menu.xml index bfe8c45ca..c0ad3da1b 100644 --- a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/menu.xml +++ b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/menu.xml @@ -1,15 +1,19 @@ -<h2 class="menu-title">LuCI UVLDoc</h2> +<div class="menu-title">LuCI UVLDoc</div> <ul class="menu-index"> <li<%-if not scheme then%> class="menu-active"<%-end-%>> <a href="<%=self:_index_filename()%>">Index</a> </li> +</ul> + +<div class="menu-title">Schemes</div> +<ul class="menu-index"> <% for k, v in luci.util.kspairs(self.schemes) do %> <li<%-if scheme == k then%> class="menu-active"<%-end-%>> <a href="<%=self:_scheme_filename(k)%>"><%=k%></a> <%-if scheme == k then-%> <ul> <%-for k2, v2 in luci.util.kspairs(v.sections) do%> - <li><a href="<%=self:_section_filename(k, k2)%>"><%=k2%></a></li> + <li<%-if k2 == section then%> class="menu-active"<%-end-%>><a href="<%=self:_section_filename(k, k2)%>"><%=k2%></a></li> <%end-%> </ul> <%-end%> diff --git a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/scheme.xml b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/scheme.xml index 91043bfc8..f4fe22e75 100644 --- a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/scheme.xml +++ b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/scheme.xml @@ -1,13 +1,14 @@ +<%- title = scheme -%> <%+header.xml%> <h1 class="section-title"><%=scheme-%> -<%-if package.title then%>: <%=package.title%><%end%></h1> +<%-if package.title then%><dfn> - <%=package.title%></dfn><%end%></h1> <div class="scheme-description"><%=package.description%></div> <h3 class="scheme-title">Sections:</h3> <table class="scheme-index"> <% for k, v in luci.util.kspairs(package.sections) do %> <tr> - <td><a href="<%=self:_section_filename(scheme, k)%>"><%=k%></a></td> + <th><a href="<%=self:_section_filename(scheme, k)%>"><%=k%></a></th> <td><%=v.title%></td> </tr> <% end %> diff --git a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/section.xml b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/section.xml index ed85c25cc..92625bc8a 100644 --- a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/section.xml +++ b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/section.xml @@ -1,7 +1,36 @@ +<%- title = scheme .. "." .. type -%> <%+header.xml%> <% local table = require "table" +types = { + list = "List", + variable = "Variable", + lazylist = "Mixed", + enum = "Enumerator", + reference = "Reference" +} + +datatypes = { + boolean = "Boolean", + string = "String", + uint = "Unsigned Integer", + integer = "Integer", + float = "Real Number", + ipaddr = "IP-Address", + ip4addr = "IPv4-Address", + ip6addr = "IPv6-Address", + ip4prefix = "IPv4-Prefix", + ip6prefix = "IPv6-Prefix", + hostname = "Hostname", + host = "Host (Hostname or IP-Address)", + directory = "Filesystem path (to directory)", + file = "Filesystem path (to file)", + macaddr = "MAC-Address", + port = "Port", + portrange = "Single Port or Portrange (First-Last)" +} + function _parse_ref( r ) local k, v, h = r:match("([^.]+)%.([^.]+)%.([^.]+)") if not k then @@ -39,10 +68,11 @@ function _parse_dep( r, c, s, o ) end %> +<a name="top" /> <h1 class="section-title"><%=scheme-%> -<%-if package.title then%>: <%=package.title%><%end%></h1> +<%-if package.title then%><dfn> - <%=package.title%></dfn><%end%></h1> <h2 class="section-subtitle"><%=type-%> -<%-if section.title then%>: <%=section.title%><%end%></h2> +<%-if section.title then%><dfn> - <%=section.title%></dfn><%end%></h2> <div class="section-description"><%=section.description%></div> <h3 class="section-attributes">Attributes:</h3> @@ -74,7 +104,7 @@ if section.named then %> local t = _parse_dep(k2, scheme, type) %> <% if nf then %>and<% end %> - <%if t then%><a href="<%=t%>"><%end%><%=k2%><%if t then%></a><%end%><%if v~="" then%>=<%=v%><%end%> + <%if t then%><a href="<%=t%>"><%end%><%=k2%><%if t then%></a><%end%><%if v~=true then%>=<%=v%><%end%> <% nf = true end %> </li> @@ -82,19 +112,19 @@ if section.named then %> </ul> <% end %> -<h3 class="section-variables">Options:</h3> +<h3 class="section-variables">Overview:</h3> <table class="section-variables-index"> <% for k, v in luci.util.kspairs(package.variables[type]) do if v.required then%> <tr class="section-variable-required"> - <td><a href="#variable.<%=k%>"><%=k%></a></td> + <th><a href="#variable.<%=k%>"><%=k%></a></th> <td><%=v.title%></td> </tr> <% end end for k, v in luci.util.kspairs(package.variables[type]) do if not v.required then%> <tr class="section-variable-mixed"> - <td><a href="#variable.<%=k%>"><%=k%></a></td> + <th><a href="#variable.<%=k%>"><%=k%></a></th> <td><%=v.title%></td> </tr> <% end end %> @@ -110,15 +140,19 @@ if (i==0) == v.required then <div class="variable-documentation"> <a name="variable.<%=k%>" /> <h4 class="variable-title"><%=k-%> - <%-if v.title then%>: <%=v.title%><%end%></h4> + <%-if v.title then%><dfn> - <%=v.title%></dfn><%end%></h4> <div class="variable-description"><%=v.description%></div> + <div class="variable-declaration"> <h5 class="variable-attributes">Attributes:</h5> <ul class="varaible-attributes-index"> <% if v.required then %> <li class="variable-attribute-required"><strong>required</strong></li> <% end %> - <li class="variable-attribute-type"><strong>Type:</strong> <%=v.type%></li> - <li class="variable-attribute-datatype"><strong>Datatype:</strong> <%=v.datatype%></li> + <li class="variable-attribute-type"><strong>Type:</strong> <%=types[v.type] or v.type%></li> + <li class="variable-attribute-datatype"><strong>Datatype:</strong> <%=datatypes[v.datatype] or v.datatype%></li> + <% if v.multival then %> + <li class="variable-attribute-multiple"><strong>multiple values:</strong> space-separated</li> + <% end %> </ul> <% if v.depends then %> <h5 class="variable-depends">Dependencies (one of):</h5> @@ -130,7 +164,7 @@ if (i==0) == v.required then local t = _parse_dep(k2, scheme, type, k) %> <% if nf then %>and<% end %> - <%if t then%><a href="<%=t%>"><%end%><%=k2%><%if t then%></a><%end%><%if v~="" then%>=<%=v%><%end%> + <%if t then%><a href="<%=t%>"><%end%><%=k2%><%if t then%></a><%end%><%if v~=true then%>=<%=v%><%end%> <% nf = true end %> </li> @@ -157,6 +191,8 @@ if (i==0) == v.required then <% end %> </ul> <% end %> + </div> + <a href="#top">⇑</a> </div> <% end end end -%> <%+footer.xml%>
\ No newline at end of file diff --git a/libs/uvldoc/luasrc/uvldoc/proto/xhtml/uvldoc.css b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/uvldoc.css new file mode 100644 index 000000000..2d9d3954d --- /dev/null +++ b/libs/uvldoc/luasrc/uvldoc/proto/xhtml/uvldoc.css @@ -0,0 +1,127 @@ +body { + font-family: sans-serif; + font-size: 0.85em; + color: #101010; +} + +h1, h2, h3, h4, h5, h6 { + margin-top: 0; + font-weight: bold; +} + +h1 { + font-size: 1.5em; +} + +h2 { + font-size: 1.4em; +} + +h3 { + font-size: 1.2em; +} + +h4 { + font-size: 1.1em; +} + +h5 { + font-size: 1.0em; +} + +dfn { + font-weight: normal; + font-size: 0.9em; +} + +table { + border-collapse: collapse; +} + +tr, td, th { + border: 1px solid #e0e0ff; + padding: 3px; +} + +th { + background-color: #f0f0ff; + text-align: left; +} + + +hr { + border: none; + background-color: #cccccc; + height: 1px; +} + +ul, li { + margin-top: 0; +} + +div.clear { + clear: both; +} + +div.variable-declaration { + padding-left: 2em; +} + +h3.section-variables { + margin-top: 2em; +} + +div#menu { + float: left; + background-color: #f0f0ff; + margin: 0; + padding: 0; + border: 1px solid #e0e0ff; + width: 11.5em; +} + +#menu ul { + list-style-type: none; + margin-bottom: 0.5em; + padding-left: 1em; +} +#menu ul li { + margin-left: 0; + +} + +div.menu-title { + background-color: #e0e0ff; + color: #000000; + font-weight: bold; + padding: 2px; +} + +div#content { + margin-top: 0; + padding-top: 0; + margin-left: 12.5em; +} + +div#copy { + margin-top: 2.5em; + font-size: 0.7em; + text-align: center; + font-size: bold; +} + +a:link { + font-weight: bold; + color: #004080; + text-decoration: none; +} + +a:visited { + font-weight:bold; + color: #006699; + text-decoration: none; +} + +a:hover { + text-decoration:underline; +} diff --git a/libs/uvldoc/luasrc/uvldoc/renderer.lua b/libs/uvldoc/luasrc/uvldoc/renderer.lua index 27061d22d..d005ba315 100644 --- a/libs/uvldoc/luasrc/uvldoc/renderer.lua +++ b/libs/uvldoc/luasrc/uvldoc/renderer.lua @@ -48,7 +48,7 @@ function Generator.make(self) fs.mkdir(self.output) for i, file in ipairs(self.additionals) do - fs.copy(self.sourcedir .. file, self.output) + fs.copy(self.sourcedir .. file, self.output .. "/" .. file) end template.compiler_mode = "memory" |