Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • amagad/t-engine4
  • HirumaKai/t-engine4
  • Hogulus/t-engine4
  • Inkie/t-engine4
  • Liberty/t-engine4
  • Lokean/t-engine4
  • Mawootad/t-engine4
  • Michelle/t-engine4
  • MrFrog/t-engine4
  • Nagyhal/t-engine4
  • Recaiden/t-engine4
  • RootOfAllThings/t-engine4
  • Sebsebeleb/t-engine4
  • Sheila/t-engine4
  • Shibari/t-engine4
  • Stof/t-engine4
  • Umbral/t-engine4
  • tome/t-engine4
  • 0player/t-engine4
  • BreezyIdiot/t-engine4
  • Bunny/t-engine4
  • Effigy/t-engine4
  • Hachem_Muche/t-engine4
  • razakai/t-engine4
  • Zireael/t-engine4
  • cinornu/t-engine4
  • edge2054/t-engine4
  • gordaxx727/t-engine4
  • grayswandir/t-engine4
  • helminthauge/t-engine4
  • housepet/t-engine4
  • minqmay/t-engine4
  • nsrr/t-engine4
  • orange/t-engine4
  • otowakotori/t-engine4
  • purequestion/t-engine4
  • rexorcorum/t-engine4
  • rgeens/t-engine4
  • sageacrin/t-engine4
  • stuntofthelitter/t-engine4
  • tiger_eye/t-engine4
  • xelivous/t-engine4
  • yutio888/t-engine4
43 results
Show changes
Commits on Source (9439)
Showing
with 1311 additions and 60 deletions
cef3spawn
build/*.make
libte4-web.so
Makefile
bin
divx2pass.log
game/addons/**
game/dlcs/**
obj/**
/lib64
/t-engine64
/tmp
/diff.diff
out.avi
out.ogv
te4_log_web.txt
t-engine
tengine_doc
game/modules/pits/
game/modules/uaws/
game/modules/bare_minimum/
game/modules/bone/
game/modules/demo/
game/modules/unused/
game/modules/particles_editor/
steam_appid.txt
oprofile_data/
game/modules/tome/data/gfx/ts-gfx*
game/engines/default/modules/boot/data/gfx/ts-gfx*
debug-recompile.sh
profiling-recompile.sh
recompile.sh
*.exe
*.dll
/*.so
te4_log.txt
debug.log
/.idea/
/*.log
.vscode
__autosave__.pc
......@@ -5,7 +5,7 @@ To contribute I'll ask people that contribute to release copyright to me,
or to give me right to relicense the code as I see fit .
(You can add a "as long as its opensource" if you wish, it'll never change :)
The reason for that is to avoid the headhache that angband had with it's
The reason for that is to avoid the headhache that angband had with its
free-but-not-modern licence. This way if a better licence pops up I can
use it easily without having to hunt everybody that contributed and that
might have since then disappeared.
......
All the medias located in all the "/data/gfx" folders are granted to use with the Tales of Maj'Eyal game only.
Please contact darkgod@te4.org for more informations.
All the tiles of the "shockbolt" tileset, located in all the "gfx/shockbolt" and "gfx/lore"
folders are granted to use with the Tales of Maj'Eyal game only.
Please contact darkgod@te4.org for more informations.
......@@ -14,33 +14,44 @@ General:
- Eric Wykoff for classes, items, ...
- Yufra for all his AI work and various other things
- Benli for classes, zones, ...
- Hetdegon for Arena and other such nice things
- Tiger Eye for auto-explore and FOV code
- PureQuestion for npcs and artifact work
- PureQuestion for npcs and artifacts
- Hachem Muche for many patches and scaling issues
- Dekar for artifacts, debug help (slave? ;> ), icons, ...
- Shibari for artifacts and talents balancing
- Sage Acrin
Lore:
- Darren Grey
- Burb Lulls
- Gwai
- Ron Billingsley
Graphics:
- Shockbolt (Raymond Gaustadnes) http://shockbolt.deviantart.com
- Mushroomhermit's tiles
- David Gervais's tiles
- Andreas Kosh for more tiles
- Rexorcorum (Assen Kanev)
- Suslik (Alex Sannikov) for his awesome shaders
Musics:
- "A lomos del dragón blanco" by Carlos Saura (http://www.jamendo.com/en/artist/carlosaura)
- "Anne_van_Schothorst_-_Passed_Tense.ogg" by Anne van Schothorst (http://freemusicarchive.org/music/Anne_van_Schothorst)
- Nearly every other songs by Celestial Aeon Project (http://www.jamendo.com/en/artist/celestial.aeon.project)
Sounds:
- Mike Koenig for 'breaking' sound effects
- Mark DiAngelo for 'whooshing' sound effects
- Marianne Gragnon for 'mystic chanting' sound effects
Fonts:
- Vera*: http://www.gnome.org/fonts/
- INSULA, USENET: http://www.dafont.com/fr/apostrophic-labs.d128
- SVBasicManual: http://www.dafont.com/fr/johan-winge.d757 // http://home.student.uu.se/j/jowi4905/fonts/
- FSEX300: http://www.fixedsysexcelsior.com/
- square: Wouter van Oortmerssen: http://strlen.com/square
Others:
- The good people at lua.org who made the world a better place
- J.R.R. Tolkien who made the (real) world an interresting place
- J.R.R. Tolkien who made the (real) world an interesting place
Also a big general thanks to the whole ToME community which is always very nice, polite, supporting, full of marvelous ideas and great people!
......@@ -2,6 +2,11 @@
-- It will be called before anything else is setup, including paths
-- Usualy it will be put inside a zip that is concatenated to the executable itself
--[[ Example to move the saves somewhere else
local old = fs.getHomePath()
function fs.getHomePath() return old:gsub("T%-Engine", "BoneToBeWild"):gsub("t%-engine", "bone-to-be-wild") end
]]
print("Booting T-Engine from: "..tostring(__SELFEXE))
-- Mount the engine, either from a path guessed from SELFEXE, or directly from current dir
......@@ -15,17 +20,28 @@ if __SELFEXE then
-- Now remove executable name
dir = dir:gsub("(.*"..fs.getPathSeparator()..").+", "%1")
else
dir = dir:gsub("(.*"..fs.getPathSeparator()..").+", "%1")..fs.getPathSeparator().."Resources"..fs.getPathSeparator()
-- This is a little un-OSX like: we grab our data from the folder containing T-Engine.app
-- It is a bit strange but way way better for people to install addons and such
dir = dir:gsub("(.*"..fs.getPathSeparator()..").+", "%1"):gsub("(.*"..fs.getPathSeparator()..").+", "%1"):gsub("(.*"..fs.getPathSeparator()..").+", "%1")
-- dir = dir:gsub("(.*"..fs.getPathSeparator()..").+", "%1")..fs.getPathSeparator().."Resources"..fs.getPathSeparator()
end
print("SelfExe gave us app directory of:", dir)
fs.mount(dir..fs.getPathSeparator().."game"..fs.getPathSeparator().."thirdparty", "/", true)
fs.mount(dir..fs.getPathSeparator().."game", "/", true)
fs.setPathAllowed(dir..fs.getPathSeparator().."game", false)
else
print("No SelfExe, using basic path")
fs.mount("game"..fs.getPathSeparator().."thirdparty", "/", true)
fs.mount("game", "/", true)
end
fs.setPathAllowed(fs.getRealPath("/engines/"), false)
fs.setPathAllowed(fs.getRealPath("/thirdparty/"), false)
fs.setPathAllowed(fs.getRealPath("/addons/"), true)
if fs.getRealPath("/dlcs/") then fs.setPathAllowed(fs.getRealPath("/dlcs/"), true) end
fs.setPathAllowed(fs.getRealPath("/modules/"), true)
-- Look for a core
function get_core(coretype, id)
coretype = coretype or "te4core"
......
-- T-Engine4
-- Copyright (C) 2009, 2010, 2011, 2012 Nicolas Casalini
-- Copyright (C) 2009, 2010, 2011, 2012, 2013 Nicolas Casalini
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
......@@ -26,7 +26,6 @@ newoption {
description = "Virtual Machine to use for Lua, either the default one or a JIT",
allowed = {
{ "default", "Default Lua Virtual Machine" },
{ "jitx86", "LuaJIT x86" },
{ "jit2", "LuaJIT2" },
}
}
......@@ -37,6 +36,10 @@ newoption {
newoption {
trigger = "relpath",
description = "Links libraries relative to the application path for redistribution",
allowed = {
{ "32", "32 bits location" },
{ "64", "64 bits location" },
}
}
newoption {
trigger = "luaassert",
......@@ -52,4 +55,39 @@ newoption {
description = "Doesnt remove jit2 build files",
}
newoption {
trigger = "no_rwops_size",
description = "Compat for old SDL2 dev verions"
}
newoption {
trigger = "steam",
description = "Steam integration"
}
newoption {
trigger = "discord",
description = "Discord integration"
}
newoption {
trigger = "discord-nolib",
description = "Dont build discord lib"
}
newoption {
trigger = "web-awesomium",
description = "Use awesomium embedded browser as the webcore"
}
newoption {
trigger = "web-cef3",
description = "Use CEF3 embedded browser as the webcore"
}
newoption {
trigger = "wincross",
description = "Enables cross-compilation for windows (from linux)"
}
_OPTIONS.lua = _OPTIONS.lua or "jit2"
-- T-Engine4
-- Copyright (C) 2009, 2010, 2011, 2012 Nicolas Casalini
-- Copyright (C) 2009, 2010, 2011, 2012, 2013 Nicolas Casalini
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
......@@ -28,6 +28,10 @@ project "TEngineRunner"
links { "dl", "SDL", "SDL_ttf", "SDL_image", "SDL_mixer", "GL", "GLU", "m", "pthread" }
defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_LINUX' }
configuration "bsd"
links { "SDL", "SDL_ttf", "SDL_image", "SDL_mixer", "GL", "GLU", "m", "pthread" }
defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_BSD' }
configuration "windows"
links { "mingw32", "SDLmain", "SDL", "SDL_ttf", "SDL_image", "SDL_mixer", "OPENGL32", "GLU32", "wsock32" }
defines { [[TENGINE_HOME_PATH='"T-Engine"']], 'SELFEXE_WINDOWS' }
......@@ -56,6 +60,9 @@ project "te4runner"
configuration "linux"
defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_LINUX' }
configuration "bsd"
defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_BSD' }
configuration "windows"
defines { [[TENGINE_HOME_PATH='"T-Engine"']], 'SELFEXE_WINDOWS' }
configuration "macosx"
......@@ -74,10 +81,12 @@ project "runner-physfs"
defines {"PHYSFS_SUPPORTS_ZIP"}
files { "../src/physfs/*.c", "../src/physfs/zlib123/*.c", "../src/physfs/archivers/*.c", }
files { "../src/physfs/*.c", "../src/zlib/*.c", "../src/physfs/archivers/*.c", }
configuration "linux"
files { "../src/physfs/platform/unix.c", "../src/physfs/platform/posix.c", }
configuration "bsd"
files { "../src/physfs/platform/unix.c", "../src/physfs/platform/posix.c", }
configuration "windows"
files { "../src/physfs/platform/windows.c", }
configuration "macosx"
......
This diff is collapsed.
Building
========
Building the documentation requires [LDoc](https://github.com/stevedonovan/LDoc)
It has a dependency of [Penlight](https://github.com/stevedonovan/Penlight)
And optionally you can install [lua-discount](https://github.com/craigbarnes/lua-discount) for better markdown processing of comments
Both dependencies can be found with luarocks if you have that
Just point ldoc.lua at the directory this README file is contained in and it will handle the rest:
t-engine-source $ cd documentation
t-engine-source/documentation $ lua /path/to/ldoc.lua .
After building the documentation, it will output into `tengine_doc` one directory below
You can alter this path by including `-d path` when calling ldoc
\ No newline at end of file
project='T-Engine 4 v1.4.0'
title='TE4 1.4.0 Documentation'
description='Documentation for T-Engine 4 - version 1.4.0'
file={'../game/engines/default/engine', '../game/engines/default/data', 'readme_files'}
kind_names={topic='Manual'}
style='!fixed'
all=true
prettify_files=show
sort=false
package=engine
merge=true
format = 'discount'
readme={'readme_files'}
convert_opt=true
custom_tags={"inherit","Inherits"}
style='style'
template='style'
dir='../tengine_doc'
full_description=[[<a href="manual/index.md.html">View the Manual</a> | <a href="http://git.net-core.org/tome/t-engine4/">T-Engine Git Repository</a>
]]
# Colors
Implementation: @{engine.colors}
## Usage
T-Engine provides a number of predefined colors. There are two ways to refer to these:
<ul>
<li>In your Lua code. For example: <code>color.DARK_GREEN</code></li>
<li>Embedded within strings (using # signs to mark them). For example: <code>"Hello, #BLUE#world#LAST#!"</code></li>
</ul>
You can add your own colours to the list for your module by adding in a line like the following to the <code>/load.lua</code> file:
<pre>defineColor('MAUVE', 204, 153, 255)</pre>
References to "MAUVE" will then result in this colour. You can define as many colours with as many names as you like. It can sometimes to helpful to name the colours based on what they're used for rather than the colours themselves. Eg, a colour for lightning attacks could be called "LIGHTNING".
## Presets
The following colors are defined by T-Engine 4:
<!-- Useful with: http://regexr.com/
REGEX for table generation for HEX Values:
/defineColor\('(\S+)',\s*((?:0x)(\S+)),\s*((?:0x)(\S+)),\s*((?:0x)(\S+))\)/g
Substitution for HEX values:
<tr><td>$1</td><td>$2</td><td>$4</td><td>$6</td><td class="color" style="background: #$3$5$7;"></td></tr>
REGEX for table generation for RGB values:
/defineColor\('(\S+)',\s*(\d+),\s*(\d+),\s*(\d+)\)/g
Substitution for RGB values:
<tr><td>$1</td><td>$2</td><td>$3</td><td>$3</td><td class="color" style="background: rgb($2,$3,$4);"></td></tr>
-->
<table class="colortable">
<thead>
<tr><th>Name</th><th>Red</th><th>Green</th><th>Blue</th><th>Demo</th></tr>
</thead>
<tbody>
<tr><td>BLACK</td><td>0</td><td>0</td><td>0</td><td class="color" style="background: rgb(0,0,0);"></td></tr>
<tr><td>WHITE</td><td>0xFF</td><td>0xFF</td><td>0xFF</td><td class="color" style="background: #FFFFFF;"></td></tr>
<tr><td>SLATE</td><td>0x8C</td><td>0x8C</td><td>0x8C</td><td class="color" style="background: #8C8C8C;"></td></tr>
<tr><td>ORANGE</td><td>0xFF</td><td>0x77</td><td>0x00</td><td class="color" style="background: #FF7700;"></td></tr>
<tr><td>RED</td><td>0xC9</td><td>0x00</td><td>0x00</td><td class="color" style="background: #C90000;"></td></tr>
<tr><td>GREEN</td><td>0x00</td><td>0x86</td><td>0x45</td><td class="color" style="background: #008645;"></td></tr>
<tr><td>BLUE</td><td>0x00</td><td>0x00</td><td>0xE3</td><td class="color" style="background: #0000E3;"></td></tr>
<tr><td>UMBER</td><td>0x8E</td><td>0x45</td><td>0x00</td><td class="color" style="background: #8E4500;"></td></tr>
<tr><td>LIGHT_DARK</td><td>0x50</td><td>0x50</td><td>0x50</td><td class="color" style="background: #505050;"></td></tr>
<tr><td>LIGHT_SLATE</td><td>0xD1</td><td>0xD1</td><td>0xD1</td><td class="color" style="background: #D1D1D1;"></td></tr>
<tr><td>VIOLET</td><td>0xC0</td><td>0x00</td><td>0xAF</td><td class="color" style="background: #C000AF;"></td></tr>
<tr><td>YELLOW</td><td>0xFF</td><td>0xFF</td><td>0x00</td><td class="color" style="background: #FFFF00;"></td></tr>
<tr><td>LIGHT_RED</td><td>0xFF</td><td>0x00</td><td>0x68</td><td class="color" style="background: #FF0068;"></td></tr>
<tr><td>LIGHT_GREEN</td><td>0x00</td><td>0xFF</td><td>0x00</td><td class="color" style="background: #00FF00;"></td></tr>
<tr><td>LIGHT_BLUE</td><td>0x51</td><td>0xDD</td><td>0xFF</td><td class="color" style="background: #51DDFF;"></td></tr>
<tr><td>LIGHT_UMBER</td><td>0xD7</td><td>0x8E</td><td>0x45</td><td class="color" style="background: #D78E45;"></td></tr>
<tr><td>DARK_UMBER</td><td>0x57</td><td>0x5E</td><td>0x25</td><td class="color" style="background: #575E25;"></td></tr>
<tr><td>DARK_GREY</td><td>67</td><td>67</td><td>67</td><td class="color" style="background: rgb(67,67,67);"></td></tr>
<tr><td>GREY</td><td>127</td><td>127</td><td>127</td><td class="color" style="background: rgb(127,127,127);"></td></tr>
<tr><td>ROYAL_BLUE</td><td>65</td><td>105</td><td>105</td><td class="color" style="background: rgb(65,105,225);"></td></tr>
<tr><td>AQUAMARINE</td><td>127</td><td>255</td><td>255</td><td class="color" style="background: rgb(127,255,212);"></td></tr>
<tr><td>CADET_BLUE</td><td>95</td><td>158</td><td>158</td><td class="color" style="background: rgb(95,158,160);"></td></tr>
<tr><td>STEEL_BLUE</td><td>70</td><td>130</td><td>130</td><td class="color" style="background: rgb(70,130,180);"></td></tr>
<tr><td>TEAL</td><td>0</td><td>128</td><td>128</td><td class="color" style="background: rgb(0,128,128);"></td></tr>
<tr><td>LIGHT_STEEL_BLUE</td><td>176</td><td>196</td><td>196</td><td class="color" style="background: rgb(176,196,222);"></td></tr>
<tr><td>DARK_BLUE</td><td>0x00</td><td>0x00</td><td>0x93</td><td class="color" style="background: #000093;"></td></tr>
<tr><td>ROYAL_BLUE</td><td>0x00</td><td>0x6C</td><td>0xFF</td><td class="color" style="background: #006CFF;"></td></tr>
<tr><td>PINK</td><td>255</td><td>192</td><td>192</td><td class="color" style="background: rgb(255,192,203);"></td></tr>
<tr><td>GOLD</td><td>255</td><td>215</td><td>215</td><td class="color" style="background: rgb(255,215,0);"></td></tr>
<tr><td>FIREBRICK</td><td>178</td><td>34</td><td>34</td><td class="color" style="background: rgb(178,34,34);"></td></tr>
<tr><td>DARK_RED</td><td>100</td><td>0</td><td>0</td><td class="color" style="background: rgb(100,0,0);"></td></tr>
<tr><td>VERY_DARK_RED</td><td>50</td><td>0</td><td>0</td><td class="color" style="background: rgb(50,0,0);"></td></tr>
<tr><td>CRIMSON</td><td>220</td><td>20</td><td>20</td><td class="color" style="background: rgb(220,20,60);"></td></tr>
<tr><td>MOCCASIN</td><td>255</td><td>228</td><td>228</td><td class="color" style="background: rgb(255,228,181);"></td></tr>
<tr><td>KHAKI</td><td>240</td><td>230</td><td>230</td><td class="color" style="background: rgb(240,230,130);"></td></tr>
<tr><td>SANDY_BROWN</td><td>244</td><td>164</td><td>164</td><td class="color" style="background: rgb(244,164,96);"></td></tr>
<tr><td>SALMON</td><td>250</td><td>128</td><td>128</td><td class="color" style="background: rgb(250,128,114);"></td></tr>
<tr><td>DARK_ORCHID</td><td>153</td><td>50</td><td>50</td><td class="color" style="background: rgb(153,50,204);"></td></tr>
<tr><td>ORCHID</td><td>218</td><td>112</td><td>112</td><td class="color" style="background: rgb(218,112,214);"></td></tr>
<tr><td>PURPLE</td><td>128</td><td>0</td><td>0</td><td class="color" style="background: rgb(128,0,139);"></td></tr>
<tr><td>CHOCOLATE</td><td>210</td><td>105</td><td>105</td><td class="color" style="background: rgb(210,105,30);"></td></tr>
<tr><td>DARK_KHAKI</td><td>189</td><td>183</td><td>183</td><td class="color" style="background: rgb(189,183,107);"></td></tr>
<tr><td>TAN</td><td>210</td><td>180</td><td>180</td><td class="color" style="background: rgb(210,180,140);"></td></tr>
<tr><td>DARK_TAN</td><td>110</td><td>80</td><td>80</td><td class="color" style="background: rgb(110,80,40);"></td></tr>
<tr><td>HONEYDEW</td><td>240</td><td>255</td><td>255</td><td class="color" style="background: rgb(240,255,240);"></td></tr>
<tr><td>ANTIQUE_WHITE</td><td>250</td><td>235</td><td>235</td><td class="color" style="background: rgb(250,235,215);"></td></tr>
<tr><td>OLD_LACE</td><td>253</td><td>245</td><td>245</td><td class="color" style="background: rgb(253,245,230);"></td></tr>
<tr><td>DARK_SLATE_GRAY</td><td>47</td><td>79</td><td>79</td><td class="color" style="background: rgb(47,79,79);"></td></tr>
<tr><td>OLIVE_DRAB</td><td>107</td><td>142</td><td>142</td><td class="color" style="background: rgb(107,142,35);"></td></tr>
<tr><td>DARK_SEA_GREEN</td><td>143</td><td>188</td><td>188</td><td class="color" style="background: rgb(143,188,143);"></td></tr>
<tr><td>YELLOW_GREEN</td><td>154</td><td>205</td><td>205</td><td class="color" style="background: rgb(154,205,50);"></td></tr>
<tr><td>DARK_GREEN</td><td>50</td><td>77</td><td>77</td><td class="color" style="background: rgb(50,77,12);"></td></tr>
</tbody>
</table>
\ No newline at end of file
# T-Engine 4 Manual
## External Information
* <a href="http://www.lua.org/manual/5.1/index.html">Lua 5.1 manual</a>
* <a href="http://lua-users.org/wiki/LuaDirectory">Lua Users Wiki</a>
* <strong>IRC:</strong> <code>irc.rizon.net #tome</code>
## Topics
* @{colors.md|Understanding the COLOR System}
\ No newline at end of file
/* BEGIN RESET
Copyright (c) 2010, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.com/yui/license.html
version: 2.8.2r1
*/
html {
color: #000;
background: #FFF;
}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td {
margin: 0;
padding: 0;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
fieldset,img {
border: 0;
}
address,caption,cite,code,dfn,em,strong,th,var,optgroup {
font-style: inherit;
font-weight: inherit;
}
del,ins {
text-decoration: none;
}
li {
list-style: disc;
margin-left: 20px;
}
caption,th {
text-align: left;
}
h1,h2,h3,h4,h5,h6 {
font-size: 100%;
font-weight: bold;
}
q:before,q:after {
content: '';
}
abbr,acronym {
border: 0;
font-variant: normal;
}
sup {
vertical-align: baseline;
}
sub {
vertical-align: baseline;
}
legend {
color: #000;
}
input,button,textarea,select,optgroup,option {
font-family: inherit;
font-size: inherit;
font-style: inherit;
font-weight: inherit;
}
input,button,textarea,select {*font-size:100%;
}
/* END RESET */
/* MAIN STYLE */
body {
margin-left: 1em;
margin-right: 1em;
font-family: arial, helvetica, geneva, sans-serif;
background-color: #ffffff; margin: 0px;
}
code, tt { font-family: monospace; font-size: 1.1em; }
span.parameter { font-family:monospace; }
span.parameter:after { content:":"; }
span.types:before { content:"("; }
span.types:after { content:")"; }
.type { font-weight: bold; font-style:italic }
body, p, td, th { font-size: .95em; line-height: 1.2em;}
th { font-weight: bold; }
p, ul { margin: 10px 0 0 0px;}
strong { font-weight: bold;}
em { font-style: italic;}
h1 {
font-size: 1.5em;
margin: 0 0 20px 0;
}
h2, h3, h4 { margin: 15px 0 10px 0; }
h2 { font-size: 1.25em; }
h3 { font-size: 1.15em; }
h4 { font-size: 1.06em; }
a:link { font-weight: bold; color: #004080; text-decoration: none; }
a:visited { font-weight: bold; color: #006699; text-decoration: none; }
a:link:hover { text-decoration: underline; }
hr {
color:#cccccc;
background: #00007f;
height: 1px;
}
blockquote { margin-left: 3em; }
ul { list-style-type: disc; }
li { list-style: none; }
p.name {
font-family: "Andale Mono", monospace;
padding-top: 1em;
}
pre {
background-color: rgb(245, 245, 245);
border: 1px solid #C0C0C0; /* silver */
padding: 10px;
margin: 10px 0 10px 0;
overflow: auto;
font-family: "Andale Mono", monospace;
}
pre.example {
font-size: .85em;
}
table.index { border: 1px #00007f; }
table.index td { text-align: left; vertical-align: top; }
#container {
margin-left: 1em;
margin-right: 1em;
background-color: #ffffff;
}
#product {
text-align: center;
border-bottom: 1px solid #cccccc;
background-color: #ffffff;
}
#product big {
font-size: 2em;
}
#main {
background-color:#FFFFFF; // #f0f0f0;
border-left: 1px solid #cccccc;
}
#navigation {
position: fixed;
top: 0;
left: 0;
float: left;
width: 20em;
vertical-align: top;
background-color:#FFFFFF; // #f0f0f0;
border-right: 2px solid #cccccc;
overflow: visible;
overflow-y: scroll;
height: 100%;
padding-left: 1em;
}
#navigation h2 {
background-color:#FFFFFF;//:#e7e7e7;
font-size:1.1em;
color:#000000;
text-align: left;
padding:0.2em;
border-bottom:1px solid #dddddd;
}
#navigation ul
{
font-size:1em;
list-style-type: none;
margin: 1px 1px 10px 1px;
}
#navigation li {
text-indent: -1em;
display: block;
margin: 3px 0px 0px 22px;
}
#navigation li li a {
margin: 0px 3px 0px -1em;
}
#content {
margin-left: 20em;
padding: 1em;
padding-left: 2em;
width: 700px;
border-left: 2px solid #cccccc;
// border-right: 2px solid #cccccc;
background-color: #ffffff;
}
#about {
clear: both;
padding-left: 1em;
margin-left: 20em; // avoid the damn sidebar!
border-top: 2px solid #cccccc;
border-left: 2px solid #cccccc;
background-color: #ffffff;
}
@media print {
body {
font: 12pt "Times New Roman", "TimeNR", Times, serif;
}
a { font-weight: bold; color: #004080; text-decoration: underline; }
#main {
background-color: #ffffff;
border-left: 0px;
}
#container {
margin-left: 2%;
margin-right: 2%;
background-color: #ffffff;
}
#content {
padding: 1em;
background-color: #ffffff;
}
#navigation {
display: none;
}
pre.example {
font-family: "Andale Mono", monospace;
font-size: 10pt;
page-break-inside: avoid;
}
}
.module_list {
border-width: 1px;
border-style: solid;
border-color: #cccccc;
border-collapse: collapse;
}
.module_list td {
border-width: 1px;
padding: 3px;
border-style: solid;
border-color: #cccccc;
}
.module_list .name { background-color: #f0f0f0; ; min-width: 200px; }
.module_list .summary { width: 100%; }
.function_list {
margin-left: 1em;
font-size: 80%;
}
.function_list .name { background-color: #f6f6ff; ; min-width: 200px; margin-bottom: .2em; }
.function_list .summary { width: 100%; margin-top:.2em; margin-left: 1em;}
dl.table dt, dl.function dt {border-top: 1px solid #ccc; padding-top: 1em;}
dl.table dd, dl.function dd {padding-bottom: 1em; margin: 10px 0 0 20px;}
dl.table h3, dl.function h3 {font-size: .95em;}
ul.nowrap {
overflow:auto;
whitespace:nowrap;
}
/* stop sublists from having initial vertical space */
ul ul { margin-top: 0px; }
ol ul { margin-top: 0px; }
ol ol { margin-top: 0px; }
ul ol { margin-top: 0px; }
/* make the target distinct; helps when we're navigating to a function */
a:target + * {
background-color: #FF9;
}
/* styles for prettification of source */
pre .comment { color: #558817; }
pre .constant { color: #a8660d; }
pre .escape { color: #844631; }
pre .keyword { color: #aa5050; font-weight: bold; }
pre .library { color: #0e7c6b; }
pre .marker { color: #512b1e; background: #fedc56; font-weight: bold; }
pre .string { color: #8080ff; }
pre .number { color: #f8660d; }
pre .operator { color: #2239a8; font-weight: bold; }
pre .preprocessor, pre .prepro { color: #a33243; }
pre .global { color: #800080; }
pre .user-keyword { color: #800080; }
pre .prompt { color: #558817; }
pre .url { color: #272fc2; text-decoration: underline; }
/* Extra stuff */
.colortable { margin: 1em; }
.colortable td { padding: .3em; }
.color { display:block; width: 1em; height: 1em; border: 1px solid #000; }
\ No newline at end of file
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<meta http-equiv="Content-Type" content="text/html; charset=$(ldoc.doc_charset)"/>
<head>
<title>$(ldoc.title)</title>
<link rel="stylesheet" href="$(ldoc.css)" type="text/css" />
</head>
<body>
<div id="container">
<div id="main">
# local no_spaces = ldoc.no_spaces
# local use_li = ldoc.use_li
# local display_name = ldoc.display_name
# local iter = ldoc.modules.iter
# local function M(txt,item) return ldoc.markup(txt,item,ldoc.plain) end
# local nowrap = ldoc.wrap and '' or 'nowrap'
<!-- Menu -->
<div id="navigation">
<br/>
<h1>
# if not ldoc.single and module then -- reference back to project index
<a title="Index" href="../$(ldoc.output).html">
#end
$(ldoc.project)
# if not ldoc.single and module then
</a>
# end
</h1>
# --------- contents of module -------------
# if module and not ldoc.no_summary and #module.items > 0 then
<h2>Contents</h2>
<ul>
# for kind,items in module.kinds() do
<li><a href="#$(no_spaces(kind))">$(kind)</a></li>
# end
</ul>
# end
# if ldoc.no_summary and module and not ldoc.one then -- bang out the functions on the side
# for kind, items in module.kinds() do
<h2>$(kind)</h2>
<ul class="nowrap">
# for item in items() do
<li><a href="#$(item.name)">$(display_name(item))</a></li>
# end
</ul>
# end
# end
# -------- contents of project ----------
# local this_mod = module and module.name
# for kind, mods, type in ldoc.kinds() do
# if ldoc.allowed_in_contents(type,module) then
<h2>$(kind)</h2>
<ul class="$(kind=='Topics' and '' or 'nowrap')">
# for mod in mods() do local name = display_name(mod)
# if mod.name == this_mod then
<li><strong>$(name)</strong></li>
# else
<li><a href="$(ldoc.ref_to_module(mod))">$(name)</a></li>
# end
# end
# end
</ul>
# end
</div>
<div id="content">
# if ldoc.body then -- verbatim HTML as contents; 'non-code' entries'
# if (module.name ~= "index.md") then
<a title="Index" href="../manual/index.md.html">Return to Manual Index</a>
<hr>
# end
$(ldoc.body)
# elseif module then -- module documentation
<h1>$(ldoc.module_typename(module)) <code>$(module.name)</code></h1>
<p>$(M(module.summary,module))</p>
<p>$(M(module.description,module))</p>
# if module.tags.include then
$(M(ldoc.include_file(module.tags.include)))
# end
# if module.usage then
# local li,il = use_li(module.usage)
<h3>Usage:</h3>
<ul>
# for usage in iter(module.usage) do
$(li)<pre class="example">$(ldoc.escape(usage))</pre>$(il)
# end -- for
</ul>
# end -- if usage
# if module.info then
<h3>Info:</h3>
<ul>
# for tag, value in module.info:iter() do
<li><strong>$(tag)</strong>: $(M(value,module))</li>
# end
</ul>
# end -- if module.info
# if not ldoc.no_summary then
# -- bang out the tables of item types for this module (e.g Functions, Tables, etc)
# for kind,items in module.kinds() do
<h2><a href="#$(no_spaces(kind))">$(kind)</a></h2>
<div class="function_list">
# for item in items() do
<h3 class="name" $(nowrap)><a href="#$(item.name)">$(display_name(item))</a></h3>
<p class="summary">$(M(item.summary,item))</p>
# end -- for items
</div>
# end -- for kinds
<br/>
<br/>
#end -- if not no_summary
# --- currently works for both Functions and Tables. The params field either contains
# --- function parameters or table fields.
# local show_return = not ldoc.no_return_or_parms
# local show_parms = show_return
# for kind, items in module.kinds() do
# local kitem = module.kinds:get_item(kind)
# local has_description = kitem and ldoc.descript(kitem) ~= ""
<h2 class="section-header $(has_description and 'has-description')"><a name="$(no_spaces(kind))"></a>$(kind)</h2>
$(M(module.kinds:get_section_description(kind),nil))
# if kitem then
# if has_description then
<div class="section-description">
$(M(ldoc.descript(kitem),kitem))
</div>
# end
# if kitem.usage then
<h3>Usage:</h3>
<pre class="example">$(ldoc.prettify(kitem.usage[1]))</pre>
# end
# end
<dl class="function">
# for item in items() do
<dt>
<a name = "$(item.name)"></a>
<strong>$(display_name(item))
# if item.tags.static then
<small>STATIC</small>
# end
</strong>
# if ldoc.prettify_files then
<a style="float:right;" href="$(ldoc.source_ref(item))">line $(item.lineno)</a>
# end
</dt>
<dd>
$(M(ldoc.descript(item),item))
# if ldoc.custom_tags then
# for custom in iter(ldoc.custom_tags) do
# local tag = item.tags[custom[1]]
# if tag and not custom.hidden then
# local li,il = use_li(tag)
<h3>$(custom.title or custom[1]):</h3>
<ul>
# for value in iter(tag) do
$(li)$(custom.format and custom.format(value) or M(value))$(il)
# end -- for
# end -- if tag
</ul>
# end -- iter tags
# end
# if show_parms and item.params and #item.params > 0 then
# local subnames = module.kinds:type_of(item).subnames
# if subnames then
<h3>$(subnames):</h3>
# end
<ul>
# for parm in iter(item.params) do
# local param,sublist = item:subparam(parm)
# if sublist then
<li><span class="parameter">$(sublist)</span>$(M(item.params.map[sublist],item))
<ul>
# end
# for p in iter(param) do
# local name,tp,def = item:display_name_of(p), ldoc.typename(item:type_of_param(p)), item:default_of_param(p)
<li><span class="parameter">$(name)</span>
# if tp ~= '' then
<span class="types">$(tp)</span>
# end
$(M(item.params.map[p],item))
# if def == true then
(<em>optional</em>)
# elseif def then
(<em>default</em> $(def))
# end
# if item:readonly(p) then
<em>readonly</em>
# end
</li>
# end
# if sublist then
</li></ul>
# end
# end -- for
</ul>
# end -- if params
# if show_return and item.retgroups then local groups = item.retgroups
<h3>Returns:</h3>
# for i,group in ldoc.ipairs(groups) do local li,il = use_li(group)
<ol>
# for r in group:iter() do local type, ctypes = item:return_type(r); local rt = ldoc.typename(type)
$(li)
# if rt ~= '' then
<span class="types">$(rt)</span>
# end
$(M(r.text,item))$(il)
# if ctypes then
<ul>
# for c in ctypes:iter() do
<li><span class="parameter">$(c.name)</span>
<span class="types">$(ldoc.typename(c.type))</span>
$(M(c.comment,item))</li>
# end
</ul>
# end -- if ctypes
# end -- for r
</ol>
# if i < #groups then
<h3>Or</h3>
# end
# end -- for group
# end -- if returns
# if show_return and item.raise then
<h3>Raises:</h3>
$(M(item.raise,item))
# end
# if item.see then
# local li,il = use_li(item.see)
<h3>See also:</h3>
<ul>
# for see in iter(item.see) do
$(li)<a href="$(ldoc.href(see))">$(see.label)</a>$(il)
# end -- for
</ul>
# end -- if see
# if item.usage then
# local li,il = use_li(item.usage)
<h3>Usage:</h3>
<ul>
# for usage in iter(item.usage) do
$(li)<pre class="example">$(ldoc.prettify(usage))</pre>$(il)
# end -- for
</ul>
# end -- if usage
</dd>
# end -- for items
</dl>
# end -- for kinds
# else -- if module; project-level contents
# if ldoc.description then
<h2>$(M(ldoc.description,nil))</h2>
# end
# if ldoc.full_description then
<p>$(M(ldoc.full_description,nil))</p>
# end
# for kind, mods in ldoc.kinds() do
<h2>$(kind)</h2>
# kind = kind:lower()
<table class="module_list">
# for m in mods() do
<tr>
<td class="name" $(nowrap)><a href="$(no_spaces(kind))/$(m.name).html">$(m.name)</a></td>
<td class="summary">$(M(ldoc.strip_header(m.summary),m))</td>
</tr>
# end -- for modules
</table>
# end -- for kinds
# end -- if module
</div> <!-- id="content" -->
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>
</html>
\ No newline at end of file
File added