UVLDoc: Rendering optimizations and CSS style
This commit is contained in:
parent
e5cb252043
commit
ecf5ed021f
8 changed files with 191 additions and 21 deletions
|
@ -1,9 +1,11 @@
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="copy">
|
<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
|
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>
|
||||||
|
<div class="clear"> </div>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
|
@ -4,7 +4,7 @@
|
||||||
<head>
|
<head>
|
||||||
<link rel="stylesheet" type="text/css" href="uvldoc.css" />
|
<link rel="stylesheet" type="text/css" href="uvldoc.css" />
|
||||||
<meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8" />
|
<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>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
<%+header.xml%>
|
<%+header.xml%>
|
||||||
<h1 class="index-title">UCI Documentation</h1>
|
<h1 class="index-title">UCI Documentation</h1>
|
||||||
<h3 class="index-subtitle">Configurations</h3>
|
<h3 class="index-subtitle">Schemes</h3>
|
||||||
<table class="index">
|
<table class="index">
|
||||||
<% for k, v in luci.util.kspairs(self.schemes) do %>
|
<% for k, v in luci.util.kspairs(self.schemes) do %>
|
||||||
<tr>
|
<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>
|
<td><%=self.schemes[k].title%></td>
|
||||||
</tr>
|
</tr>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -1,15 +1,19 @@
|
||||||
<h2 class="menu-title">LuCI UVLDoc</h2>
|
<div class="menu-title">LuCI UVLDoc</div>
|
||||||
<ul class="menu-index">
|
<ul class="menu-index">
|
||||||
<li<%-if not scheme then%> class="menu-active"<%-end-%>>
|
<li<%-if not scheme then%> class="menu-active"<%-end-%>>
|
||||||
<a href="<%=self:_index_filename()%>">Index</a>
|
<a href="<%=self:_index_filename()%>">Index</a>
|
||||||
</li>
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<div class="menu-title">Schemes</div>
|
||||||
|
<ul class="menu-index">
|
||||||
<% for k, v in luci.util.kspairs(self.schemes) do %>
|
<% for k, v in luci.util.kspairs(self.schemes) do %>
|
||||||
<li<%-if scheme == k then%> class="menu-active"<%-end-%>>
|
<li<%-if scheme == k then%> class="menu-active"<%-end-%>>
|
||||||
<a href="<%=self:_scheme_filename(k)%>"><%=k%></a>
|
<a href="<%=self:_scheme_filename(k)%>"><%=k%></a>
|
||||||
<%-if scheme == k then-%>
|
<%-if scheme == k then-%>
|
||||||
<ul>
|
<ul>
|
||||||
<%-for k2, v2 in luci.util.kspairs(v.sections) do%>
|
<%-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-%>
|
<%end-%>
|
||||||
</ul>
|
</ul>
|
||||||
<%-end%>
|
<%-end%>
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
|
<%- title = scheme -%>
|
||||||
<%+header.xml%>
|
<%+header.xml%>
|
||||||
<h1 class="section-title"><%=scheme-%>
|
<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>
|
<div class="scheme-description"><%=package.description%></div>
|
||||||
|
|
||||||
<h3 class="scheme-title">Sections:</h3>
|
<h3 class="scheme-title">Sections:</h3>
|
||||||
<table class="scheme-index">
|
<table class="scheme-index">
|
||||||
<% for k, v in luci.util.kspairs(package.sections) do %>
|
<% for k, v in luci.util.kspairs(package.sections) do %>
|
||||||
<tr>
|
<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>
|
<td><%=v.title%></td>
|
||||||
</tr>
|
</tr>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -1,7 +1,36 @@
|
||||||
|
<%- title = scheme .. "." .. type -%>
|
||||||
<%+header.xml%>
|
<%+header.xml%>
|
||||||
<%
|
<%
|
||||||
local table = require "table"
|
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 )
|
function _parse_ref( r )
|
||||||
local k, v, h = r:match("([^.]+)%.([^.]+)%.([^.]+)")
|
local k, v, h = r:match("([^.]+)%.([^.]+)%.([^.]+)")
|
||||||
if not k then
|
if not k then
|
||||||
|
@ -39,10 +68,11 @@ function _parse_dep( r, c, s, o )
|
||||||
end
|
end
|
||||||
|
|
||||||
%>
|
%>
|
||||||
|
<a name="top" />
|
||||||
<h1 class="section-title"><%=scheme-%>
|
<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-%>
|
<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>
|
<div class="section-description"><%=section.description%></div>
|
||||||
|
|
||||||
<h3 class="section-attributes">Attributes:</h3>
|
<h3 class="section-attributes">Attributes:</h3>
|
||||||
|
@ -74,7 +104,7 @@ if section.named then %>
|
||||||
local t = _parse_dep(k2, scheme, type)
|
local t = _parse_dep(k2, scheme, type)
|
||||||
%>
|
%>
|
||||||
<% if nf then %>and<% end %>
|
<% 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
|
<% nf = true
|
||||||
end %>
|
end %>
|
||||||
</li>
|
</li>
|
||||||
|
@ -82,19 +112,19 @@ if section.named then %>
|
||||||
</ul>
|
</ul>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<h3 class="section-variables">Options:</h3>
|
<h3 class="section-variables">Overview:</h3>
|
||||||
<table class="section-variables-index">
|
<table class="section-variables-index">
|
||||||
<% for k, v in luci.util.kspairs(package.variables[type]) do
|
<% for k, v in luci.util.kspairs(package.variables[type]) do
|
||||||
if v.required then%>
|
if v.required then%>
|
||||||
<tr class="section-variable-required">
|
<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>
|
<td><%=v.title%></td>
|
||||||
</tr>
|
</tr>
|
||||||
<% end end
|
<% end end
|
||||||
for k, v in luci.util.kspairs(package.variables[type]) do
|
for k, v in luci.util.kspairs(package.variables[type]) do
|
||||||
if not v.required then%>
|
if not v.required then%>
|
||||||
<tr class="section-variable-mixed">
|
<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>
|
<td><%=v.title%></td>
|
||||||
</tr>
|
</tr>
|
||||||
<% end end %>
|
<% end end %>
|
||||||
|
@ -110,15 +140,19 @@ if (i==0) == v.required then
|
||||||
<div class="variable-documentation">
|
<div class="variable-documentation">
|
||||||
<a name="variable.<%=k%>" />
|
<a name="variable.<%=k%>" />
|
||||||
<h4 class="variable-title"><%=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-description"><%=v.description%></div>
|
||||||
|
<div class="variable-declaration">
|
||||||
<h5 class="variable-attributes">Attributes:</h5>
|
<h5 class="variable-attributes">Attributes:</h5>
|
||||||
<ul class="varaible-attributes-index">
|
<ul class="varaible-attributes-index">
|
||||||
<% if v.required then %>
|
<% if v.required then %>
|
||||||
<li class="variable-attribute-required"><strong>required</strong></li>
|
<li class="variable-attribute-required"><strong>required</strong></li>
|
||||||
<% end %>
|
<% end %>
|
||||||
<li class="variable-attribute-type"><strong>Type:</strong> <%=v.type%></li>
|
<li class="variable-attribute-type"><strong>Type:</strong> <%=types[v.type] or v.type%></li>
|
||||||
<li class="variable-attribute-datatype"><strong>Datatype:</strong> <%=v.datatype%></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>
|
</ul>
|
||||||
<% if v.depends then %>
|
<% if v.depends then %>
|
||||||
<h5 class="variable-depends">Dependencies (one of):</h5>
|
<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)
|
local t = _parse_dep(k2, scheme, type, k)
|
||||||
%>
|
%>
|
||||||
<% if nf then %>and<% end %>
|
<% 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
|
<% nf = true
|
||||||
end %>
|
end %>
|
||||||
</li>
|
</li>
|
||||||
|
@ -158,5 +192,7 @@ if (i==0) == v.required then
|
||||||
</ul>
|
</ul>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
|
<a href="#top">⇑</a>
|
||||||
|
</div>
|
||||||
<% end end end -%>
|
<% end end end -%>
|
||||||
<%+footer.xml%>
|
<%+footer.xml%>
|
127
libs/uvldoc/luasrc/uvldoc/proto/xhtml/uvldoc.css
Normal file
127
libs/uvldoc/luasrc/uvldoc/proto/xhtml/uvldoc.css
Normal file
|
@ -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;
|
||||||
|
}
|
|
@ -48,7 +48,7 @@ function Generator.make(self)
|
||||||
fs.mkdir(self.output)
|
fs.mkdir(self.output)
|
||||||
|
|
||||||
for i, file in ipairs(self.additionals) do
|
for i, file in ipairs(self.additionals) do
|
||||||
fs.copy(self.sourcedir .. file, self.output)
|
fs.copy(self.sourcedir .. file, self.output .. "/" .. file)
|
||||||
end
|
end
|
||||||
|
|
||||||
template.compiler_mode = "memory"
|
template.compiler_mode = "memory"
|
||||||
|
|
Loading…
Reference in a new issue