commit 8a60d39ece07f9ffa17ab441ebf5ffbf0cc43b1c Author: Alexandre Erwin Ittner Date: Sun Sep 5 22:03:26 2010 -0300 Import GitHub pages diff --git a/index.html b/index.html new file mode 100644 index 0000000..54ba95b --- /dev/null +++ b/index.html @@ -0,0 +1,164 @@ + + + + + + + + Lua-iconv, Lua bindings for the iconv library + + + + + + + +

Lua iconv

+ + + +

Introduction

+ +

Lua-iconv is POSIX 'iconv' binding for the Lua Programming Language. The +iconv library converts a sequence of characters from one codeset into a +sequence of corresponding characters in another codeset. The codesets +are those specified in the iconv.new() call that returned the conversion +descriptor, cd. +

+

Lua-iconv 6 and later *requires* Lua 5.1. If you are using Lua 5.0, please +use the first release (lua-iconv-r1). +

+

Details on iconv may be obtained in the Open Group's interface definition +(http://www.opengroup.org/onlinepubs/007908799/xsh/iconv.h.html). +

+ + +

Download and installation

+ +

Lua-iconv can be obtained from its LuaForge project page +(http://luaforge.net/projects/lua-iconv/) or from some Linux distributions +which already provide it (eg. Debian). +

+

Unless you downloaded a compiled package, you must build the library for +your system. If you are using a system with pkg-config (as many Linux +distributions and Unix flavors) just fire up your favourite shell, untar +the distribution package and type, as root, within the program directory: +

+
    make install
+
+

The library will be compiled and installed on the in the correct path (which +is defined in lua5.1.pc). +

+

Compiling on systems without pkg-config requires manual changes in the +Makefile. +

+ + +

Loading and initialization

+ +

Lua-iconv is a shared library that must be loaded in the Lua interpreter +before use. From Lua 5.1 and later, you can simply do a +

+
    require "iconv"
+
+

call to load up the library (that, of course, must be installed in a +directory from package.cpath). +

+ + +

API documentation

+ +

iconv.new(to, from)

+

iconv.open(to, from)

+ +
    Opens a new conversion descriptor, from the 'from' charset to the
+    'to' charset. Concatenating "//TRANSLIT" to the first argument will
+    enable character transliteration and concatenating "//IGNORE" to
+    the first argument will cause iconv to ignore any invalid characters
+    found in the input string.
+
+
    This function returns a new converter or nil on error.
+
+ +

cd:iconv(str)

+ +
    Converts the 'str' string to the desired charset. This method always
+    returns two arguments: the converted string and an error code, which
+    may have any of the following values:
+
+
    nil
+        No error. Conversion was successful.
+
+
    iconv.ERROR_NO_MEMORY
+        Failed to allocate enough memory in the conversion process.
+
+
    iconv.ERROR_INVALID
+        An invalid character was found in the input sequence.
+
+
    iconv.ERROR_INCOMPLETE
+        An incomplete character was found in the input sequence.
+
+
    iconv.ERROR_UNKNOWN
+        There was an unknown error.
+
+ +

License

+ +

Lua-iconv is copyrighted free software: it can be used for both academic +and commercial purposes at absolutely no cost. There are no royalties +or GNU-like "copyleft" restrictions. The legal details are below: +

+
   Lua-iconv is (c) 2005-10 Alexandre Erwin Ittner
+
+
   Permission is hereby granted, free of charge, to any person obtaining
+   a copy of this software and associated documentation files (the
+   "Software"), to deal in the Software without restriction, including
+   without limitation the rights to use, copy, modify, merge, publish,
+   distribute, sublicense, and/or sell copies of the Software, and to
+   permit persons to whom the Software is furnished to do so, subject
+   to the following conditions:
+
+
   The above copyright notice and this permission notice shall be
+   included in all copies or substantial portions of the Software.
+
+
   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+   IN NO EVENT SHALL THE AUTHOR OR COPYRIGHT HOLDER BE LIABLE FOR ANY
+   CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+   TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+   SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+
   If you use this package in a product, an acknowledgment in the product
+   documentation would be greatly appreciated (but it is not required).
+
+ + + +

Contact

+
+
Author:
+
Alexandre Erwin Ittner
+ +
E-mail:
+
alexandre#ittner.com.br (e-mail obfuscated to avoid spam-bots. Please replace the "#" with an "@")
+ +
PGP Key:
+
0x0041A1FB (key fingerprint: 9B49 FCE2 E6B9 D1AD 6101 29AD 4F6D F114 0041 A1FB)
+ +
Homepage:
+
http://www.ittner.com.br/
+
+ + + diff --git a/lua-iconv-logo.png b/lua-iconv-logo.png new file mode 100644 index 0000000..7e4cb8c Binary files /dev/null and b/lua-iconv-logo.png differ diff --git a/style.css b/style.css new file mode 100644 index 0000000..682ea25 --- /dev/null +++ b/style.css @@ -0,0 +1,87 @@ + +body { + background: #ffffff; + font-size: 10pt; + color: #000000; + font-family: "Bitstream Vera Sans", "DejaVu Sans", Verdana, sans-serif; + margin: 1em; +} + +kbd, code { + font-family: "Bitstream Vera Sans Mono", "DejaVu Sans Mono", monospaced; +} + +kbd { + background-color: #dddddd; +} + +a { + text-decoration: none; +} + +a:link { + color: #0000ff; +} + +a:visited { + color: #aa00aa; +} + +a:hover { + text-decoration: underline; + color: #ff0000; +} + +img { + border: none; +} + +#menu { + text-align: center; +} + +#menu h2 { + display: none; +} + +#menu ul { + list-style-type: none; +} + +#menu ul li { + display: inline; + margin-left: 1em; + margin-right: 1em; +} + +h1 { + background: url(lua-iconv-logo.png) no-repeat center bottom; + height: 160px; + text-align: center; + font-size: 2em; +} + +h2, h3 { + font-weight: bold; +} + +h2 { + margin-top: 2em; + font-size: 1.5em; + width: 100%; + border-bottom: 1px solid #cacaea; +} + +h3 { + font-size: 1.15em; +} + +dl.prop-list dt { + float: left; + width: 6em; +} + +dl.prop-list dd { + margin-left: 7em; +} +