summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NEWS8
-rw-r--r--README42
-rw-r--r--lualibs.lua124
3 files changed, 38 insertions, 136 deletions
diff --git a/NEWS b/NEWS
index 8b367bf..14da4da 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,12 @@
History of the lualibs package
+2013/05/05 v2.0/
+ * sync with Context beta as of 2013.04.29 20:30
+ * merge with mtx-package
+ * split in basic and extended collection, allowing for partial
+ loading
+ * include additional files from Context
+ * drop module() in favor of locals
+
2012/10/19 v0.9/
* sync with ConTeXt beta 2012.10.17
* move some files to util-* prefix
diff --git a/README b/README
index 57bd351..15aa337 100644
--- a/README
+++ b/README
@@ -1,22 +1,26 @@
- The lualibs generic package
+********************************************************************************
+ The Lualibs Package
+********************************************************************************
Lualibs is a collection of Lua modules useful for general programming.
-This work is based on lua modules shipped with ConTeXt, and are made available
-this package to be used independent of ConTeXt.
+This work is based on Lua modules shipped with ConTeXt, to make them available
+for use independent of ConTeXt.
+
+This package is developed by the LuaLaTeX development team on
+<http://github.com/lualatex/lualibs>. See the 'NEWS' file for version history.
-This package is developed on <http://github.com/mpg/lualibs>, see the 'NEWS'
-file for version history.
Installation
-------------
+--------------------------------------------------------------------------------
Here are the recommended installation methods (preferred first).
The methods "commented out" are currently not available.
1. If you are using TeX Live 2010 or later, use 'tlmgr install lualibs'.
- Alternatively, try your (TeX or Linux) distribution's package management system.
+ Alternatively, use your (TeX or Linux) distribution's package management
+ system.
2. a. Grab lualibs.tds.zip on CTAN.
b. Unzip it at the root of one or your TDS trees.
@@ -28,41 +32,55 @@ The methods "commented out" are currently not available.
c. See 2c.
Manifest
---------
+--------------------------------------------------------------------------------
Source files:
lualibs.dtx
lualibs-boolean.lua
+ lualibs-compat.lua
lualibs-dir.lua
lualibs-file.lua
+ lualibs-function.lua
lualibs-io.lua
lualibs-lpeg.lua
+ lualibs-lua.lua
lualibs-math.lua
lualibs-md5.lua
lualibs-number.lua
lualibs-os.lua
+ lualibs-package.lua
lualibs-set.lua
lualibs-string.lua
lualibs-table.lua
+ lualibs-trac-inf.lua
lualibs-unicode.lua
lualibs-url.lua
+ lualibs-util-deb.lua
lualibs-util-dim.lua
+ lualibs-util-env.lua
lualibs-util-jsn.lua
lualibs-util-lua.lua
lualibs-util-mrg.lua
+ lualibs-util-prs.lua
+ lualibs-util-sta.lua
lualibs-util-sto.lua
lualibs-util-str.lua
lualibs-util-tab.lua
- README
+ lualibs-util-tpl.lua
Makefile
NEWS
+ README
Derived files:
lualibs.lua
+ lualibs-basic.lua
+ lualibs-basic-merged.lua
+ lualibs-extended.lua
+ lualibs-extended-merged.lua
lualibs.pdf
License
--------
+--------------------------------------------------------------------------------
This work and the derived files are under the Creative Commons CC0 license.
@@ -74,8 +92,8 @@ and a FAQ at
http://wiki.creativecommons.org/CC0
-The files lualibs-*.lua are under the GNU GPLv2 license. Their legal notice
-starts by:
+The files lualibs-*.lua are under the same GNU GPLv2 license as Context. Their
+legal notice starts by:
"
Copyright PRAGMA ADE / ConTeXt Development Team
diff --git a/lualibs.lua b/lualibs.lua
deleted file mode 100644
index 6ba82cc..0000000
--- a/lualibs.lua
+++ /dev/null
@@ -1,124 +0,0 @@
-lualibs = lualibs or { }
-
-lualibs.module_info = {
- name = "lualibs",
- version = 2.00,
- date = "2013/04/30",
- description = "ConTeXt Lua standard libraries.",
- author = "Hans Hagen, PRAGMA-ADE, Hasselt NL & Elie Roux & Philipp Gesang",
- copyright = "PRAGMA ADE / ConTeXt Development Team",
- license = "See ConTeXt's mreadme.pdf for the license",
-}
-
---[[doc--
-
- The behavior of the lualibs can be configured to some extent.
- \begin{itemize}
- \item Based on the parameter \verb|lualibs.prefer_merged|, the
- libraries can be loaded via the included merged packages or
- the individual files.
- \item Two classes of libraries are distinguished, mainly because
- of a similar distinction in \CONTEXT, but also to make
- loading of the less fundamental functionality optional.
- While the “basic” collection is always loaded, the
- configuration setting \verb|lualibs.load_extended| triggers
- inclusion of the extended collection.
- \item Verbosity can be increased via the \verb|verbose| switch.
- \end{itemize}
-
---doc]]--
-
-config = config or { }
-config.lualibs = config.lualibs or { }
-
-if config.lualibs.prefer_merged == nil then
- lualibs.prefer_merged = true
-end
-if config.lualibs.load_extended == nil then
- lualibs.load_extended = true
-end
-config.lualibs.verbose = config.lualibs.verbose == false
-
---[[doc--
-
- The lualibs may be loaded in scripts.
- To account for the different environment, fallbacks for
- the luatexbase facilities are installed.
-
---doc]]--
-
-local dofile = dofile
-local kpsefind_file = kpse.find_file
-local stringformat = string.format
-local texiowrite_nl = texio.write_nl
-
-local find_file, error, warn, info
-do
- local _error, _warn, _info
- if luatexbase and luatexbase.provides_module then
- _error, _warn, _info = luatexbase.provides_module(lualibs.module_info)
- else
- _error, _warn, _info = texiowrite_nl, texiowrite_nl, texiowrite_nl
- end
-
- if lualibs.verbose then
- error, warn, info = _error, _warn, _info
- else
- local dummylogger = function ( ) end
- error, warn, info = _error, dummylogger, dummylogger
- end
- lualibs.error, lualibs.warn, lualibs.info = error, warn, info
-end
-
-if luatexbase and luatexbase.find_file then
- find_file = luatexbase.find_file
-else
- kpse.set_program_name"luatex"
- find_file = kpsefind_file
-end
-
---[[doc--
-
- The lualibs load a merged package by default.
- In order to create one of these, the meta file that includes the
- libraries must satisfy certain assumptions \verb|mtx-package| makes
- about the coding style.
- Most important is that the functions that indicates which files
- to include must go by the name \verb|loadmodule()|.
- For this reason we define a \verb|loadmodule()| function as a
- wrapper around \verb|dofile()|.
-
---doc]]--
-
-local loadmodule = loadmodule or function (name, t)
- if not t then t = "library" end
- local filepath = find_file(name, "lua")
- if not filepath or filepath == "" then
- warn(stringformat("Could not locate %s “%s”.", t, name))
- return false
- end
- dofile(filepath)
- return true
-end
-
-lualibs.loadmodule = loadmodule
-
---[[doc--
-
- The separation of the “basic” from the “extended” sets coincides
- with the split into luat-bas.mkiv and luat-lib.mkiv.
-
---doc]]--
-
-if lualibs.basic_loaded ~= true then
- loadmodule"lualibs-basic.lua"
- loadmodule"lualibs-compat.lua" --- restore stuff gone since v1.*
-end
-
-if lualibs.load_extended == true
-and lualibs.extended_loaded ~= true then
- loadmodule"lualibs-extended.lua"
-end
-
--- vim:tw=71:sw=2:ts=2:expandtab
--- End of File `lualibs-basic.lua'.