[Pkg-javascript-commits] [node-iconv-lite] 31/83: Version 0.2.0: Automatic generation of single byte encodings.

matthew pideil mpideil-guest at moszumanska.debian.org
Tue Apr 1 19:56:48 UTC 2014


This is an automated email from the git hooks/post-receive script.

mpideil-guest pushed a commit to branch master
in repository node-iconv-lite.

commit e1a3083cf6c254efb73e6d5ebd718a2717668134
Author: Alexander Shtuchkin <ashtuchkin at gmail.com>
Date:   Mon May 7 21:34:55 2012 +0400

    Version 0.2.0: Automatic generation of single byte encodings.
---
 README.md                         |  44 +++---
 encodings/arabic.js               |  20 ---
 encodings/baltic.js               |  20 ---
 encodings/cyrillic.js             |  26 ---
 encodings/greek.js                |  27 ----
 encodings/hebrew.js               |  21 ---
 encodings/singlebyte.js           | 324 ++++++++++++++++++++++++++++++++++++++
 encodings/turkish.js              |  21 ---
 encodings/vietnamese.js           |  12 --
 encodings/western.js              |  44 ------
 generation/generate-encoding.js   | 241 ----------------------------
 generation/generate-singlebyte.js | 134 ++++++++++++++++
 index.js                          |   4 -
 package.json                      |   2 +-
 test/turkish-test.js              |  16 +-
 15 files changed, 488 insertions(+), 468 deletions(-)

diff --git a/README.md b/README.md
index a8af69b..b226161 100644
--- a/README.md
+++ b/README.md
@@ -1,49 +1,49 @@
-iconv-lite - native javascript conversion between character encodings.
+iconv-lite - pure javascript character encoding conversion
 ======================================================================
 
+## Features
+
+*   Easy API.
+*   Works on Windows and in sandboxed environments like [Cloud9](http://c9.io) (doesn't need native code compilation).
+*   Faster than iconv (see below for performance comparison).
+
 ## Usage
 
     var iconv = require('iconv-lite');
     
     // Convert from an encoded buffer to string.
-    str = iconv.fromEncoding(buf, 'win-1251');
-    // Or
-    str = iconv.decode(buf, 'win-1251');
+    str = iconv.decode(buf, 'win1251');
     
     // Convert from string to an encoded buffer.
-    buf = iconv.toEncoding("Sample input string", 'win-1251');
-    // Or
-    buf = iconv.encode("Sample input string", 'win-1251');
+    buf = iconv.encode("Sample input string", 'win1251');
 
 ## Supported encodings
 
-Currently the following encodings supported:
-
 *   All node.js native encodings: 'utf8', 'ucs2', 'ascii', 'binary', 'base64'
-*   Base encodings: 'latin1'
-*   Western encoding: 'windows-1252'
-*   Cyrillic encodings: 'windows-1251', 'koi8-r', 'iso-8859-5'
-*   Simplified chinese: 'gbk', 'gb2313'
-*   Greek encodings: 'windows-1253', 'iso-8859-7'/'greek', 'cp737', 'cp28597'
-*   Turkish encodings: 'windows1254', 'iso-8859-9'/'turkish'
+*   All widespread single byte encodings: Windows 125x family, ISO-8859 family, 
+    IBM/DOS codepages, Macintosh family, KOI8 family. 
+    Aliases like 'latin1', 'us-ascii' also supported.
+*   Multibyte encodings: 'gbk', 'gb2313'.
 
-Other encodings are easy to add, see the source. Please, participate.
+Others are easy to add, see the source. Please, participate.
+Most encodings are generated from node-iconv. Thank you Ben Noordhuis and iconv authors!
+
+Not supported yet: Big5, EUC family, Shift_JIS.
 
 
 ## Encoding/decoding speed
 
 Comparison with iconv module (1000 times 256kb, on Core i5/2.5 GHz).
 
-    Operation\module            iconv       iconv-lite (this)
-    toEncoding('win1251')       19.57 mb/s  49.04 mb/s
-    fromEncoding('win1251')     16.39 mb/s  24.11 mb/s
+    operation             iconv       iconv-lite (this module)
+    ----------------------------------------------------------
+    encode('win1251')     19.57 mb/s  49.04 mb/s
+    decode('win1251')     16.39 mb/s  24.11 mb/s
 
 
 ## Notes
 
-This module is JavaScript-only, thus can be used in a sandboxed environment like [Cloud9](http://c9.io).
-
-Untranslatable characters are set to '?'. No transliteration is currently supported, pull requests are welcome.
+Untranslatable characters are set to � or ?. No transliteration is currently supported, pull requests are welcome.
 
 ## Testing
 
diff --git a/encodings/arabic.js b/encodings/arabic.js
deleted file mode 100644
index 07be51e..0000000
--- a/encodings/arabic.js
+++ /dev/null
@@ -1,20 +0,0 @@
-// Arabic encodings
-
-module.exports = {
-    "windows1256": {
-        type: "singlebyte",
-        chars: "\u20ac\u067e\u201a\u0192\u201e\u2026\u2020\u2021\u02c6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06af\u2018\u2019\u201c\u201d\u2022\u2013\u2014\u06a9\u2122\u0691\u203a\u0153\u200c\u200d\u06ba\u00a0\u060c\u00a2\u00a3\u00a4\u00a5\u00a6\u00a7\u00a8\u00a9\u06be\u00ab\u00ac\u00ad\u00ae\u00af\u00b0\u00b1\u00b2\u00b3\u00b4\u00b5\u00b6\u00b7\u00b8\u00b9\u061b\u00bb\u00bc\u00bd\u00be\u061f\u06c1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062a\u062b\u062c\u062d\u062e\u [...]
-    },
-    "win1256": "windows1256",
-    "cp1256": "windows1256",
-    1256: "windows1256",
-
-    "iso88596": {
-        type: "singlebyte",
-        chars: "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087\u0088\u0089\u008a\u008b\u008c\u008d\u008e\u008f\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097\u0098\u0099\u009a\u009b\u009c\u009d\u009e\u009f\u00a0\ufffd\ufffd\ufffd\u00a4\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u060c\u00ad\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u061b\ufffd\ufffd\ufffd\u061f\ufffd\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062a\u062b\u062c\u062d\u062e\u [...]
-    },
-    "arabic": "iso88596",
-    "cp28596": "iso88596",
-    28596: "iso88596",
-
-};
diff --git a/encodings/baltic.js b/encodings/baltic.js
deleted file mode 100644
index 4ce025e..0000000
--- a/encodings/baltic.js
+++ /dev/null
@@ -1,20 +0,0 @@
-// Estonian, Latvian and Lithuanian encodings
-
-module.exports = {
-    "windows1257": {
-        type: "singlebyte",
-        chars: "\u20ac\ufffd\u201a\ufffd\u201e\u2026\u2020\u2021\ufffd\u2030\ufffd\u2039\ufffd\u00a8\u02c7\u00b8\ufffd\u2018\u2019\u201c\u201d\u2022\u2013\u2014\ufffd\u2122\ufffd\u203a\ufffd\u00af\u02db\ufffd\u00a0\ufffd\u00a2\u00a3\u00a4\ufffd\u00a6\u00a7\u00d8\u00a9\u0156\u00ab\u00ac\u00ad\u00ae\u00c6\u00b0\u00b1\u00b2\u00b3\u00b4\u00b5\u00b6\u00b7\u00f8\u00b9\u0157\u00bb\u00bc\u00bd\u00be\u00e6\u0104\u012e\u0100\u0106\u00c4\u00c5\u0118\u0112\u010c\u00c9\u0179\u0116\u0122\u0136\u012a\u [...]
-    },
-    "win1257": "windows1257",
-    "cp1257": "windows1257",
-    1257: "windows1257",
-
-    "iso885913": {
-        type: "singlebyte",
-        chars: "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087\u0088\u0089\u008a\u008b\u008c\u008d\u008e\u008f\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097\u0098\u0099\u009a\u009b\u009c\u009d\u009e\u009f\u00a0\u201d\u00a2\u00a3\u00a4\u201e\u00a6\u00a7\u00d8\u00a9\u0156\u00ab\u00ac\u00ad\u00ae\u00c6\u00b0\u00b1\u00b2\u00b3\u201c\u00b5\u00b6\u00b7\u00f8\u00b9\u0157\u00bb\u00bc\u00bd\u00be\u00e6\u0104\u012e\u0100\u0106\u00c4\u00c5\u0118\u0112\u010c\u00c9\u0179\u0116\u0122\u0136\u012a\u [...]
-    },
-    "baltic": "iso885913",
-    "cp28594": "iso885913",
-    28594: "iso885913",
-
-};
diff --git a/encodings/cyrillic.js b/encodings/cyrillic.js
deleted file mode 100644
index 4a89f76..0000000
--- a/encodings/cyrillic.js
+++ /dev/null
@@ -1,26 +0,0 @@
-// Cyrillic encodings
-
-module.exports = {
-    "windows1251": {
-        type: "singlebyte",
-        chars: "\u0402\u0403\u201a\u0453\u201e\u2026\u2020\u2021\u20ac\u2030\u0409\u2039\u040a\u040c\u040b\u040f\u0452\u2018\u2019\u201c\u201d\u2022\u2013\u2014\ufffd\u2122\u0459\u203a\u045a\u045c\u045b\u045f\u00a0\u040e\u045e\u0408\u00a4\u0490\u00a6\u00a7\u0401\u00a9\u0404\u00ab\u00ac\u00ad\u00ae\u0407\u00b0\u00b1\u0406\u0456\u0491\u00b5\u00b6\u00b7\u0451\u2116\u0454\u00bb\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041a\u041b\u041c\u041d\u041e\u [...]
-    },
-    "win1251": "windows1251",
-    "cp1251": "windows1251",
-    1251: "windows1251",
-
-    "iso88595": {
-        type: "singlebyte",
-        chars: "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087\u0088\u0089\u008a\u008b\u008c\u008d\u008e\u008f\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097\u0098\u0099\u009a\u009b\u009c\u009d\u009e\u009f\u00a0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040a\u040b\u040c\u00ad\u040e\u040f\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041a\u041b\u041c\u041d\u041e\u041f\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042a\u042b\u042c\u042d\u042e\u [...]
-    },
-    "cp28595": "iso88595",
-    28595: "iso88595",
-
-    "koi8r": {
-        type: "singlebyte",
-        chars: "\u2500\u2502\u250c\u2510\u2514\u2518\u251c\u2524\u252c\u2534\u253c\u2580\u2584\u2588\u258c\u2590\u2591\u2592\u2593\u2320\u25a0\u2219\u221a\u2248\u2264\u2265\u00a0\u2321\u00b0\u00b2\u00b7\u00f7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255a\u255b\u255c\u255d\u255e\u255f\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256a\u256b\u256c\u00a9\u044e\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043a\u043b\u043c\u043d\u [...]
-    },
-    "cp20866": "koi8r",
-    20866: "koi8r",
-
-};
diff --git a/encodings/greek.js b/encodings/greek.js
deleted file mode 100644
index bf26701..0000000
--- a/encodings/greek.js
+++ /dev/null
@@ -1,27 +0,0 @@
-// Greek encodings
-
-module.exports = {
-    "windows1253": {
-        type: "singlebyte",
-        chars: "\u20ac\ufffd\u201a\u0192\u201e\u2026\u2020\u2021\ufffd\u2030\ufffd\u2039\ufffd\ufffd\ufffd\ufffd\ufffd\u2018\u2019\u201c\u201d\u2022\u2013\u2014\ufffd\u2122\ufffd\u203a\ufffd\ufffd\ufffd\ufffd\u00a0\u0385\u0386\u00a3\u00a4\u00a5\u00a6\u00a7\u00a8\u00a9\ufffd\u00ab\u00ac\u00ad\u00ae\u2015\u00b0\u00b1\u00b2\u00b3\u0384\u00b5\u00b6\u00b7\u0388\u0389\u038a\u00bb\u038c\u00bd\u038e\u038f\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u [...]
-    },
-    "win1253": "windows1253",
-    "cp1253": "windows1253",
-    1253: "windows1253",
-
-    "iso88597": {
-        type: "singlebyte",
-        chars: "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087\u0088\u0089\u008a\u008b\u008c\u008d\u008e\u008f\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097\u0098\u0099\u009a\u009b\u009c\u009d\u009e\u009f\u00a0\u2018\u2019\u00a3\u20ac\u20af\u00a6\u00a7\u00a8\u00a9\u037a\u00ab\u00ac\u00ad\ufffd\u2015\u00b0\u00b1\u00b2\u00b3\u0384\u0385\u0386\u00b7\u0388\u0389\u038a\u00bb\u038c\u00bd\u038e\u038f\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u [...]
-    },
-    "greek": "iso88597",
-    "greek8": "iso88597",
-    "cp28597": "iso88597",
-    28597: "iso88597",
-
-    "cp737": {
-        type: "singlebyte",
-        chars: "\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c3\u03c2\u03c4\u03c5\u03c6\u03c7\u03c8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u [...]
-    },
-    737: "cp737",
-
-};
diff --git a/encodings/hebrew.js b/encodings/hebrew.js
deleted file mode 100644
index 638ff2d..0000000
--- a/encodings/hebrew.js
+++ /dev/null
@@ -1,21 +0,0 @@
-// Hebrew encodings
-
-module.exports = {
-    "windows1255": {
-        type: "singlebyte",
-        chars: "\u20ac\ufffd\u201a\u0192\u201e\u2026\u2020\u2021\u02c6\u2030\ufffd\u2039\ufffd\ufffd\ufffd\ufffd\ufffd\u2018\u2019\u201c\u201d\u2022\u2013\u2014\u02dc\u2122\ufffd\u203a\ufffd\ufffd\ufffd\ufffd\u00a0\u00a1\u00a2\u00a3\u20aa\u00a5\u00a6\u00a7\u00a8\u00a9\u00d7\u00ab\u00ac\u00ad\u00ae\u00af\u00b0\u00b1\u00b2\u00b3\u00b4\u00b5\u00b6\u00b7\u00b8\u00b9\u00f7\u00bb\u00bc\u00bd\u00be\u00bf\u05b0\u05b1\u05b2\u05b3\u05b4\u05b5\u05b6\u05b7\u05b8\u05b9\ufffd\u05bb\u05bc\u05bd\u05be\u [...]
-    },
-    "win1255": "windows1255",
-    "cp1255": "windows1255",
-    1255: "windows1255",
-
-    "iso88598": {
-        type: "singlebyte",
-        chars: "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087\u0088\u0089\u008a\u008b\u008c\u008d\u008e\u008f\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097\u0098\u0099\u009a\u009b\u009c\u009d\u009e\u009f\u00a0\ufffd\u00a2\u00a3\u00a4\u00a5\u00a6\u00a7\u00a8\u00a9\u00d7\u00ab\u00ac\u00ad\u00ae\u00af\u00b0\u00b1\u00b2\u00b3\u00b4\u00b5\u00b6\u00b7\u00b8\u00b9\u00f7\u00bb\u00bc\u00bd\u00be\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u [...]
-    },
-    "hebrew": "iso88598",
-    "hebrew8": "iso88598",
-    "cp28598": "iso88598",
-    28598: "iso88598",
-
-};
diff --git a/encodings/singlebyte.js b/encodings/singlebyte.js
new file mode 100644
index 0000000..5e068df
--- /dev/null
+++ b/encodings/singlebyte.js
@@ -0,0 +1,324 @@
+module.exports = {
+  "437": "cp437",
+  "737": "cp737",
+  "775": "cp775",
+  "850": "cp850",
+  "852": "cp852",
+  "855": "cp855",
+  "857": "cp857",
+  "858": "cp858",
+  "860": "cp860",
+  "861": "cp861",
+  "862": "cp862",
+  "863": "cp863",
+  "864": "cp864",
+  "865": "cp865",
+  "866": "cp866",
+  "869": "cp869",
+  "874": "iso885911",
+  "1250": "windows1250",
+  "1251": "windows1251",
+  "1252": "windows1252",
+  "1253": "windows1253",
+  "1254": "windows1254",
+  "1255": "windows1255",
+  "1256": "windows1256",
+  "1257": "windows1257",
+  "1258": "windows1258",
+  "28591": "iso88591",
+  "28592": "iso88592",
+  "28593": "iso88593",
+  "28594": "iso88594",
+  "28595": "iso88595",
+  "28596": "iso88596",
+  "28597": "iso88597",
+  "28598": "iso88598",
+  "28599": "iso88599",
+  "28600": "iso885910",
+  "28601": "iso885911",
+  "28603": "iso885913",
+  "28604": "iso885914",
+  "28605": "iso885915",
+  "28606": "iso885916",
+  "ascii8bit": "ascii",
+  "us-ascii": "ascii",
+  "latin1": "iso88591",
+  "latin2": "iso88592",
+  "latin3": "iso88593",
+  "latin4": "iso88594",
+  "latin6": "iso885910",
+  "latin7": "iso885913",
+  "latin8": "iso885914",
+  "latin9": "iso885915",
+  "latin10": "iso885916",
+  "cp819": "iso88951",
+  "arabic": "iso88596",
+  "arabic8": "iso88596",
+  "greek": "iso88597",
+  "greek8": "iso88597",
+  "hebrew": "iso88598",
+  "hebrew8": "iso88598",
+  "turkish": "iso88599",
+  "turkish8": "iso88599",
+  "thai": "iso885911",
+  "thai8": "iso885911",
+  "tis620": "iso885911",
+  "windows874": "iso885911",
+  "win874": "iso885911",
+  "cp874": "iso885911",
+  "celtic": "iso885914",
+  "celtic8": "iso885914",
+  "windows1250": {
+    "type": "singlebyte",
+    "chars": "€�‚�„…†‡�‰Š‹ŚŤŽŹ�‘’“”•–—�™š›śťžź ˇ˘Ł¤Ą¦§¨©Ş«¬­®Ż°±˛ł´µ¶·¸ąş»Ľ˝ľżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙"
+  },
+  "win1250": "windows1250",
+  "cp1250": "windows1250",
+  "windows1251": {
+    "type": "singlebyte",
+    "chars": "ЂЃ‚ѓ„…†‡€‰Љ‹ЊЌЋЏђ‘’“”•–—�™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Ї°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя"
+  },
+  "win1251": "windows1251",
+  "cp1251": "windows1251",
+  "windows1252": {
+    "type": "singlebyte",
+    "chars": "€�‚ƒ„…†‡ˆ‰Š‹Œ�Ž��‘’“”•–—˜™š›œ�žŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"
+  },
+  "win1252": "windows1252",
+  "cp1252": "windows1252",
+  "windows1253": {
+    "type": "singlebyte",
+    "chars": "€�‚ƒ„…†‡�‰�‹�����‘’“”•–—�™�›���� ΅Ά£¤¥¦§¨©�«¬­®―°±²³΄µ¶·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ�ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ�"
+  },
+  "win1253": "windows1253",
+  "cp1253": "windows1253",
+  "windows1254": {
+    "type": "singlebyte",
+    "chars": "€�‚ƒ„…†‡ˆ‰Š‹Œ����‘’“”•–—˜™š›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ"
+  },
+  "win1254": "windows1254",
+  "cp1254": "windows1254",
+  "windows1255": {
+    "type": "singlebyte",
+    "chars": "€�‚ƒ„…†‡ˆ‰�‹�����‘’“”•–—˜™�›���� ¡¢£₪¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾¿ְֱֲֳִֵֶַָֹ�ֻּֽ־ֿ׀ׁׂ׃װױײ׳״�������אבגדהוזחטיךכלםמןנסעףפץצקרשת��‎‏�"
+  },
+  "win1255": "windows1255",
+  "cp1255": "windows1255",
+  "windows1256": {
+    "type": "singlebyte",
+    "chars": "€پ‚ƒ„…†‡ˆ‰ٹ‹Œچژڈگ‘’“”•–—ک™ڑ›œ‌‍ں ،¢£¤¥¦§¨©ھ«¬­®¯°±²³´µ¶·¸¹؛»¼½¾؟ہءآأؤإئابةتثجحخدذرزسشصض×طظعغـفقكàلâمنهوçèéêëىيîïًٌٍَôُِ÷ّùْûü‎‏ے"
+  },
+  "win1256": "windows1256",
+  "cp1256": "windows1256",
+  "windows1257": {
+    "type": "singlebyte",
+    "chars": "€�‚�„…†‡�‰�‹�¨ˇ¸�‘’“”•–—�™�›�¯˛� �¢£¤�¦§Ø©Ŗ«¬­®Æ°±²³´µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž˙"
+  },
+  "win1257": "windows1257",
+  "cp1257": "windows1257",
+  "windows1258": {
+    "type": "singlebyte",
+    "chars": "€�‚ƒ„…†‡ˆ‰�‹Œ����‘’“”•–—˜™�›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖ×ØÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ"
+  },
+  "win1258": "windows1258",
+  "cp1258": "windows1258",
+  "iso88591": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"
+  },
+  "cp28591": "iso88591",
+  "iso88592": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ą˘Ł¤ĽŚ§¨ŠŞŤŹ­ŽŻ°ą˛ł´ľśˇ¸šşťź˝žżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙"
+  },
+  "cp28592": "iso88592",
+  "iso88593": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ħ˘£¤�Ĥ§¨İŞĞĴ­�Ż°ħ²³´µĥ·¸ışğĵ½�żÀÁÂ�ÄĊĈÇÈÉÊËÌÍÎÏ�ÑÒÓÔĠÖ×ĜÙÚÛÜŬŜßàáâ�äċĉçèéêëìíîï�ñòóôġö÷ĝùúûüŭŝ˙"
+  },
+  "cp28593": "iso88593",
+  "iso88594": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĸŖ¤ĨĻ§¨ŠĒĢŦ­Ž¯°ą˛ŗ´ĩļˇ¸šēģŧŊžŋĀÁÂÃÄÅÆĮČÉĘËĖÍÎĪĐŅŌĶÔÕÖ×ØŲÚÛÜŨŪßāáâãäåæįčéęëėíîīđņōķôõö÷øųúûüũū˙"
+  },
+  "cp28594": "iso88594",
+  "iso88595": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ЁЂЃЄЅІЇЈЉЊЋЌ­ЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя№ёђѓєѕіїјљњћќ§ўџ"
+  },
+  "cp28595": "iso88595",
+  "iso88596": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ���¤�������،­�������������؛���؟�ءآأؤإئابةتثجحخدذرزسشصضطظعغ�����ـفقكلمنهوىيًٌٍَُِّْ�������������"
+  },
+  "cp28596": "iso88596",
+  "iso88597": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ‘’£€₯¦§¨©ͺ«¬­�―°±²³΄΅Ά·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ�ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ�"
+  },
+  "cp28597": "iso88597",
+  "iso88598": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ �¢£¤¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾��������������������������������‗אבגדהוזחטיךכלםמןנסעףפץצקרשת��‎‏�"
+  },
+  "cp28598": "iso88598",
+  "iso88599": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ"
+  },
+  "cp28599": "iso88599",
+  "iso885910": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĒĢĪĨĶ§ĻĐŠŦŽ­ŪŊ°ąēģīĩķ·ļđšŧž―ūŋĀÁÂÃÄÅÆĮČÉĘËĖÍÎÏÐŅŌÓÔÕÖŨØŲÚÛÜÝÞßāáâãäåæįčéęëėíîïðņōóôõöũøųúûüýþĸ"
+  },
+  "cp28600": "iso885910",
+  "iso885911": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����"
+  },
+  "cp28601": "iso885911",
+  "iso885913": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ”¢£¤„¦§Ø©Ŗ«¬­®Æ°±²³“µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž’"
+  },
+  "cp28603": "iso885913",
+  "iso885914": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ḃḃ£ĊċḊ§Ẁ©ẂḋỲ­®ŸḞḟĠġṀṁ¶ṖẁṗẃṠỳẄẅṡÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏŴÑÒÓÔÕÖṪØÙÚÛÜÝŶßàáâãäåæçèéêëìíîïŵñòóôõöṫøùúûüýŷÿ"
+  },
+  "cp28604": "iso885914",
+  "iso885915": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£€¥Š§š©ª«¬­®¯°±²³Žµ¶·ž¹º»ŒœŸ¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"
+  },
+  "cp28605": "iso885915",
+  "iso885916": {
+    "type": "singlebyte",
+    "chars": "€‚ƒ„
†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄąŁ€„Š§š©Ș«Ź­źŻ°±ČłŽ”¶·žčș»ŒœŸżÀÁÂĂÄĆÆÇÈÉÊËÌÍÎÏĐŃÒÓÔŐÖŚŰÙÚÛÜĘȚßàáâăäćæçèéêëìíîïđńòóôőöśűùúûüęțÿ"
+  },
+  "cp28606": "iso885916",
+  "cp437": {
+    "type": "singlebyte",
+    "chars": "ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "
+  },
+  "ibm437": "cp437",
+  "cp737": {
+    "type": "singlebyte",
+    "chars": "ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρσςτυφχψ░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀ωάέήϊίόύϋώΆΈΉΊΌΎΏ±≥≤ΪΫ÷≈°∙·√ⁿ²■ "
+  },
+  "ibm737": "cp737",
+  "cp775": {
+    "type": "singlebyte",
+    "chars": "ĆüéāäģåćłēŖŗīŹÄÅÉæÆōöĢ¢ŚśÖÜø£ØפĀĪóŻżź”¦©®¬½¼Ł«»░▒▓│┤ĄČĘĖ╣║╗╝ĮŠ┐└┴┬├─┼ŲŪ╚╔╩╦╠═╬Žąčęėįšųūž┘┌█▄▌▐▀ÓßŌŃõÕµńĶķĻļņĒŅ’­±“¾¶§÷„°∙·¹³²■ "
+  },
+  "ibm775": "cp775",
+  "cp850": {
+    "type": "singlebyte",
+    "chars": "ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø׃áíóúñѪº¿®¬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ðÐÊËÈıÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµþÞÚÛÙýݯ´­±‗¾¶§÷¸°¨·¹³²■ "
+  },
+  "ibm850": "cp850",
+  "cp852": {
+    "type": "singlebyte",
+    "chars": "ÇüéâäůćçłëŐőîŹÄĆÉĹĺôöĽľŚśÖÜŤťŁ×čáíóúĄąŽžĘ꬟Ⱥ«»░▒▓│┤ÁÂĚŞ╣║╗╝Żż┐└┴┬├─┼Ăă╚╔╩╦╠═╬¤đĐĎËďŇÍÎě┘┌█▄ŢŮ▀ÓßÔŃńňŠšŔÚŕŰýÝţ´­˝˛ˇ˘§÷¸°¨˙űŘř■ "
+  },
+  "ibm852": "cp852",
+  "cp855": {
+    "type": "singlebyte",
+    "chars": "ђЂѓЃёЁєЄѕЅіІїЇјЈљЉњЊћЋќЌўЎџЏюЮъЪаАбБцЦдДеЕфФгГ«»░▒▓│┤хХиИ╣║╗╝йЙ┐└┴┬├─┼кК╚╔╩╦╠═╬¤лЛмМнНоОп┘┌█▄Пя▀ЯрРсСтТуУжЖвВьЬ№­ыЫзЗшШэЭщЩчЧ§■ "
+  },
+  "ibm855": "cp855",
+  "cp857": {
+    "type": "singlebyte",
+    "chars": "ÇüéâäàåçêëèïîıÄÅÉæÆôöòûùİÖÜø£ØŞşáíóúñÑĞ𿮬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ºªÊËÈ�ÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµ�×ÚÛÙìÿ¯´­±�¾¶§÷¸°¨·¹³²■ "
+  },
+  "ibm857": "cp857",
+  "cp858": {
+    "type": "singlebyte",
+    "chars": "ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø׃áíóúñѪº¿®¬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ðÐÊËÈ€ÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµþÞÚÛÙýݯ´­±‗¾¶§÷¸°¨·¹³²■ "
+  },
+  "ibm858": "cp858",
+  "cp860": {
+    "type": "singlebyte",
+    "chars": "ÇüéâãàÁçêÊèÍÔìÃÂÉÀÈôõòÚùÌÕÜ¢£Ù₧ÓáíóúñѪº¿Ò¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "
+  },
+  "ibm860": "cp860",
+  "cp861": {
+    "type": "singlebyte",
+    "chars": "ÇüéâäàåçêëèÐðÞÄÅÉæÆôöþûÝýÖÜø£Ø₧ƒáíóúÁÍÓÚ¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "
+  },
+  "ibm861": "cp861",
+  "cp862": {
+    "type": "singlebyte",
+    "chars": "אבגדהוזחטיךכלםמןנסעףפץצקרשת¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "
+  },
+  "ibm862": "cp862",
+  "cp863": {
+    "type": "singlebyte",
+    "chars": "ÇüéâÂà¶çêëèïî‗À§ÉÈÊôËÏûù¤ÔÜ¢£ÙÛƒ¦´óú¨¸³¯Î⌐¬½¼¾«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "
+  },
+  "ibm863": "cp863",
+  "cp864": {
+    "type": "singlebyte",
+    "chars": "°·∙√▒─│┼┤┬├┴┐┌└┘β∞φ±½¼≈«»ﻷﻸ��ﻻﻼ� ­ﺂ£¤ﺄ��ﺎﺏﺕﺙ،ﺝﺡﺥ٠١٢٣٤٥٦٧٨٩ﻑ؛ﺱﺵﺹ؟¢ﺀﺁﺃﺅﻊﺋﺍﺑﺓﺗﺛﺟﺣﺧﺩﺫﺭﺯﺳﺷﺻﺿﻁﻅﻋﻏ¦¬÷×ﻉـﻓﻗﻛﻟﻣﻧﻫﻭﻯﻳﺽﻌﻎﻍﻡﹽّﻥﻩﻬﻰﻲﻐﻕﻵﻶﻝﻙﻱ■�"
+  },
+  "ibm864": "cp864",
+  "cp865": {
+    "type": "singlebyte",
+    "chars": "ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø₧ƒáíóúñѪº¿⌐¬½¼¡«¤░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "
+  },
+  "ibm865": "cp865",
+  "cp866": {
+    "type": "singlebyte",
+    "chars": "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёЄєЇїЎў°∙·√№¤■ "
+  },
+  "ibm866": "cp866",
+  "cp869": {
+    "type": "singlebyte",
+    "chars": "������Ά�·¬¦‘’Έ―ΉΊΪΌ��ΎΫ©Ώ²³ά£έήίϊΐόύΑΒΓΔΕΖΗ½ΘΙ«»░▒▓│┤ΚΛΜΝ╣║╗╝ΞΟ┐└┴┬├─┼ΠΡ╚╔╩╦╠═╬ΣΤΥΦΧΨΩαβγ┘┌█▄δε▀ζηθικλμνξοπρσςτ΄­±υφχ§ψ΅°¨ωϋΰώ■ "
+  },
+  "ibm869": "cp869",
+  "maccroatian": {
+    "type": "singlebyte",
+    "chars": "ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®Š™´¨≠ŽØ∞±≤≥∆µ∂∑∏š∫ªºΩžø¿¡¬√ƒ≈Ć«Č… ÀÃÕŒœĐ—“”‘’÷◊�©⁄¤‹›Æ»–·‚„‰ÂćÁčÈÍÎÏÌÓÔđÒÚÛÙıˆ˜¯πË˚¸Êæˇ"
+  },
+  "maccyrillic": {
+    "type": "singlebyte",
+    "chars": "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°¢£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµ∂ЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤"
+  },
+  "macgreek": {
+    "type": "singlebyte",
+    "chars": "Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦­ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ�"
+  },
+  "maciceland": {
+    "type": "singlebyte",
+    "chars": "ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüÝ°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ"
+  },
+  "macroman": {
+    "type": "singlebyte",
+    "chars": "ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ"
+  },
+  "macromania": {
+    "type": "singlebyte",
+    "chars": "ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ĂŞ∞±≤≥¥µ∂∑∏π∫ªºΩăş¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›Ţţ‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ"
+  },
+  "macthai": {
+    "type": "singlebyte",
+    "chars": "«»…“”�•‘’� กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู​–—฿เแโใไๅๆ็่้๊๋์ํ™๏๐๑๒๓๔๕๖๗๘๙®©����"
+  },
+  "macturkish": {
+    "type": "singlebyte",
+    "chars": "ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙ�ˆ˜¯˘˙˚¸˝˛ˇ"
+  },
+  "macukraine": {
+    "type": "singlebyte",
+    "chars": "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°Ґ£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµґЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤"
+  },
+  "koi8r": {
+    "type": "singlebyte",
+    "chars": "─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ё╓╔╕╖╗╘╙╚╛╜╝╞╟╠╡Ё╢╣╤╥╦╧╨╩╪╫╬©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ"
+  },
+  "koi8u": {
+    "type": "singlebyte",
+    "chars": "─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ёє╔ії╗╘╙╚╛ґ╝╞╟╠╡ЁЄ╣ІЇ╦╧╨╩╪Ґ╬©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ"
+  }
+};
\ No newline at end of file
diff --git a/encodings/turkish.js b/encodings/turkish.js
deleted file mode 100644
index f29cbfc..0000000
--- a/encodings/turkish.js
+++ /dev/null
@@ -1,21 +0,0 @@
-// Turkish encodings
-
-module.exports = {
-    "windows1254": {
-        type: "singlebyte",
-        chars: "\u20ac\ufffd\u201a\u0192\u201e\u2026\u2020\u2021\u02c6\u2030\u0160\u2039\u0152\ufffd\ufffd\ufffd\ufffd\u2018\u2019\u201c\u201d\u2022\u2013\u2014\u02dc\u2122\u0161\u203a\u0153\ufffd\ufffd\u0178\u00a0\u00a1\u00a2\u00a3\u00a4\u00a5\u00a6\u00a7\u00a8\u00a9\u00aa\u00ab\u00ac\u00ad\u00ae\u00af\u00b0\u00b1\u00b2\u00b3\u00b4\u00b5\u00b6\u00b7\u00b8\u00b9\u00ba\u00bb\u00bc\u00bd\u00be\u00bf\u00c0\u00c1\u00c2\u00c3\u00c4\u00c5\u00c6\u00c7\u00c8\u00c9\u00ca\u00cb\u00cc\u00cd\u00ce\u [...]
-    },
-    "win1254": "windows1254",
-    "cp1254": "windows1254",
-    1254: "windows1254",
-
-    "iso88599": {
-        type: "singlebyte",
-        chars: "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087\u0088\u0089\u008a\u008b\u008c\u008d\u008e\u008f\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097\u0098\u0099\u009a\u009b\u009c\u009d\u009e\u009f\u00a0\u00a1\u00a2\u00a3\u00a4\u00a5\u00a6\u00a7\u00a8\u00a9\u00aa\u00ab\u00ac\u00ad\u00ae\u00af\u00b0\u00b1\u00b2\u00b3\u00b4\u00b5\u00b6\u00b7\u00b8\u00b9\u00ba\u00bb\u00bc\u00bd\u00be\u00bf\u00c0\u00c1\u00c2\u00c3\u00c4\u00c5\u00c6\u00c7\u00c8\u00c9\u00ca\u00cb\u00cc\u00cd\u00ce\u [...]
-    },
-    "turkish": "iso88599",
-    "turkish8": "iso88599",
-    "cp28599": "iso88599",
-    28599: "iso88599",
-
-};
diff --git a/encodings/vietnamese.js b/encodings/vietnamese.js
deleted file mode 100644
index 5cafc37..0000000
--- a/encodings/vietnamese.js
+++ /dev/null
@@ -1,12 +0,0 @@
-// Vietnamese encodings
-
-module.exports = {
-    "windows1258": {
-        type: "singlebyte",
-        chars: "\u20ac\ufffd\u201a\u0192\u201e\u2026\u2020\u2021\u02c6\u2030\ufffd\u2039\u0152\ufffd\ufffd\ufffd\ufffd\u2018\u2019\u201c\u201d\u2022\u2013\u2014\u02dc\u2122\ufffd\u203a\u0153\ufffd\ufffd\u0178\u00a0\u00a1\u00a2\u00a3\u00a4\u00a5\u00a6\u00a7\u00a8\u00a9\u00aa\u00ab\u00ac\u00ad\u00ae\u00af\u00b0\u00b1\u00b2\u00b3\u00b4\u00b5\u00b6\u00b7\u00b8\u00b9\u00ba\u00bb\u00bc\u00bd\u00be\u00bf\u00c0\u00c1\u00c2\u0102\u00c4\u00c5\u00c6\u00c7\u00c8\u00c9\u00ca\u00cb\u0300\u00cd\u00ce\u [...]
-    },
-    "win1258": "windows1258",
-    "cp1258": "windows1258",
-    1258: "windows1258",
-
-};
diff --git a/encodings/western.js b/encodings/western.js
deleted file mode 100644
index e1d4649..0000000
--- a/encodings/western.js
+++ /dev/null
@@ -1,44 +0,0 @@
-// Central and Eastern European encodings
-
-module.exports = {
-    "windows1250": {
-        type: "singlebyte",
-        chars: "\u20ac\ufffd\u201a\ufffd\u201e\u2026\u2020\u2021\ufffd\u2030\u0160\u2039\u015a\u0164\u017d\u0179\ufffd\u2018\u2019\u201c\u201d\u2022\u2013\u2014\ufffd\u2122\u0161\u203a\u015b\u0165\u017e\u017a\u00a0\u02c7\u02d8\u0141\u00a4\u0104\u00a6\u00a7\u00a8\u00a9\u015e\u00ab\u00ac\u00ad\u00ae\u017b\u00b0\u00b1\u02db\u0142\u00b4\u00b5\u00b6\u00b7\u00b8\u0105\u015f\u00bb\u013d\u02dd\u013e\u017c\u0154\u00c1\u00c2\u0102\u00c4\u0139\u0106\u00c7\u010c\u00c9\u0118\u00cb\u011a\u00cd\u00ce\u [...]
-    },
-    "win1250": "windows1250",
-    "cp1250": "windows1250",
-    1250: "windows1250",
-
-    "windows1252": {
-        type: "singlebyte",
-        chars: "\u20ac\ufffd\u201a\u0192\u201e\u2026\u2020\u2021\u02c6\u2030\u0160\u2039\u0152\ufffd\u017d\ufffd\ufffd\u2018\u2019\u201c\u201d\u2022\u2013\u2014\u02dc\u2122\u0161\u203a\u0153\ufffd\u017e\u0178\u00a0\u00a1\u00a2\u00a3\u00a4\u00a5\u00a6\u00a7\u00a8\u00a9\u00aa\u00ab\u00ac\u00ad\u00ae\u00af\u00b0\u00b1\u00b2\u00b3\u00b4\u00b5\u00b6\u00b7\u00b8\u00b9\u00ba\u00bb\u00bc\u00bd\u00be\u00bf\u00c0\u00c1\u00c2\u00c3\u00c4\u00c5\u00c6\u00c7\u00c8\u00c9\u00ca\u00cb\u00cc\u00cd\u00ce\u [...]
-    },
-    "win1252": "windows1252",
-    "cp1252": "windows1252",
-    1252: "windows1252",
-
-    "iso88591": {
-        type: "singlebyte",
-        chars: "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087\u0088\u0089\u008a\u008b\u008c\u008d\u008e\u008f\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097\u0098\u0099\u009a\u009b\u009c\u009d\u009e\u009f\u00a0\u00a1\u00a2\u00a3\u00a4\u00a5\u00a6\u00a7\u00a8\u00a9\u00aa\u00ab\u00ac\u00ad\u00ae\u00af\u00b0\u00b1\u00b2\u00b3\u00b4\u00b5\u00b6\u00b7\u00b8\u00b9\u00ba\u00bb\u00bc\u00bd\u00be\u00bf\u00c0\u00c1\u00c2\u00c3\u00c4\u00c5\u00c6\u00c7\u00c8\u00c9\u00ca\u00cb\u00cc\u00cd\u00ce\u [...]
-    },
-    "latin1": "iso88591",
-    "latin-1": "iso88591",
-    "cp28591": "iso88591",
-    28591: "iso88591",
-
-    "iso88592": {
-        type: "singlebyte",
-        chars: "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087\u0088\u0089\u008a\u008b\u008c\u008d\u008e\u008f\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097\u0098\u0099\u009a\u009b\u009c\u009d\u009e\u009f\u00a0\u0104\u02d8\u0141\u00a4\u013d\u015a\u00a7\u00a8\u0160\u015e\u0164\u0179\u00ad\u017d\u017b\u00b0\u0105\u02db\u0142\u00b4\u013e\u015b\u02c7\u00b8\u0161\u015f\u0165\u017a\u02dd\u017e\u017c\u0154\u00c1\u00c2\u0102\u00c4\u0139\u0106\u00c7\u010c\u00c9\u0118\u00cb\u011a\u00cd\u00ce\u [...]
-    },
-    "latin2": "iso88592",
-    "latin-2": "iso88592",
-    "cp28592": "iso88592",
-    28592: "iso88592",
-
-    "cp850": {
-        type: "singlebyte",
-        chars: "\u00c7\u00fc\u00e9\u00e2\u00e4\u00e0\u00e5\u00e7\u00ea\u00eb\u00e8\u00ef\u00ee\u00ec\u00c4\u00c5\u00c9\u00e6\u00c6\u00f4\u00f6\u00f2\u00fb\u00f9\u00ff\u00d6\u00dc\u00f8\u00a3\u00d8\u00d7\u0192\u00e1\u00ed\u00f3\u00fa\u00f1\u00d1\u00aa\u00ba\u00bf\u00ae\u00ac\u00bd\u00bc\u00a1\u00ab\u00bb\u2591\u2592\u2593\u2502\u2524\u00c1\u00c2\u00c0\u00a9\u2563\u2551\u2557\u255d\u00a2\u00a5\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u00e3\u00c3\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u [...]
-    },
-    850: "cp850",
-
-};
diff --git a/generation/generate-encoding.js b/generation/generate-encoding.js
deleted file mode 100644
index c7b5458..0000000
--- a/generation/generate-encoding.js
+++ /dev/null
@@ -1,241 +0,0 @@
-var fs  = require("fs");
-var Iconv  = require("iconv").Iconv;
-
-var files = [
-    {
-        name: "western",
-        description: "Central and Eastern European",
-        encodings: [
-            {
-                encoding: "WINDOWS-1250",
-                name: "windows1250",
-                aliases: ["win1250", "cp1250", 1250]
-            },
-            {
-                encoding: "WINDOWS-1252",
-                name: "windows1252",
-                aliases: ["win1252", "cp1252", 1252]
-            },
-            {
-                encoding: "ISO-8859-1",
-                name: "iso88591",
-                aliases: ["latin1", "latin-1", "cp28591", 28591]
-            },
-            {
-                encoding: "ISO-8859-2",
-                name: "iso88592",
-                aliases: ["latin2", "latin-2", "cp28592", 28592]
-            },
-            {
-                encoding: "CP850",
-                name: "cp850",
-                aliases: [850]
-            }
-        ]
-    },
-    {
-        name: "cyrillic",
-        description: "Cyrillic",
-        encodings: [
-            {
-                encoding: "WINDOWS-1251",
-                name: "windows1251",
-                aliases: ["win1251", "cp1251", 1251]
-            },
-            {
-                encoding: "ISO-8859-5",
-                name: "iso88595",
-                aliases: ["cp28595", 28595]
-            },
-            {
-                encoding: "KOI8-R",
-                name: "koi8r",
-                aliases: ["cp20866", 20866]
-            }
-        ]
-    },
-    {
-        name: "greek",
-        description: "Greek",
-        encodings: [
-            {
-                encoding: "WINDOWS-1253",
-                name: "windows1253",
-                aliases: ["win1253", "cp1253", 1253]
-            },
-            {
-                encoding: "ISO-8859-7",
-                name: "iso88597",
-                aliases: ["greek", "greek8", "cp28597", 28597]
-            },
-            {
-                encoding: "CP737",
-                name: "cp737",
-                aliases: [737]
-            }
-        ]
-    },
-    {
-        name: "turkish",
-        description: "Turkish",
-        encodings: [
-            {
-                encoding: "WINDOWS-1254",
-                name: "windows1254",
-                aliases: ["win1254", "cp1254", 1254]
-            },
-            {
-                encoding: "ISO-8859-9",
-                name: "iso88599",
-                aliases: ["turkish", "turkish8", "cp28599", 28599]
-            }
-        ]
-    },
-    {
-        name: "hebrew",
-        description: "Hebrew",
-        encodings: [
-            {
-                encoding: "WINDOWS-1255",
-                name: "windows1255",
-                aliases: ["win1255", "cp1255", 1255]
-            },
-            {
-                encoding: "ISO-8859-8",
-                name: "iso88598",
-                aliases: ["hebrew", "hebrew8", "cp28598", 28598]
-            }
-        ]
-    },
-    {
-        name: "arabic",
-        description: "Arabic",
-        encodings: [
-            {
-                encoding: "WINDOWS-1256",
-                name: "windows1256",
-                aliases: ["win1256", "cp1256", 1256]
-            },
-            {
-                encoding: "ISO-8859-6",
-                name: "iso88596",
-                aliases: ["arabic", "cp28596", 28596]
-            }
-        ]
-    },
-    {
-        name: "baltic",
-        description: "Estonian, Latvian and Lithuanian",
-        encodings: [
-            {
-                encoding: "WINDOWS-1257",
-                name: "windows1257",
-                aliases: ["win1257", "cp1257", 1257]
-            },
-            {
-                encoding: "ISO-8859-13",
-                name: "iso885913",
-                aliases: ["baltic", "cp28594", 28594]
-            }
-        ]
-    },
-    {
-        name: "vietnamese",
-        description: "Vietnamese",
-        encodings: [
-            {
-                encoding: "WINDOWS-1258",
-                name: "windows1258",
-                aliases: ["win1258", "cp1258", 1258]
-            }
-        ]
-    }
-];
-
-generateFiles();
-
-function generateFiles() {
-    files.forEach(function(file) {
-        generateFile(file);
-    });
-}
-
-function generateFile(file) {
-    var fileName = "encodings/" + file.name + ".js";
-    var fileContent = "";
-
-    fileContent += "// " + file.description + " encodings\n";
-    fileContent += "\n";
-    fileContent += "module.exports = {\n";
-
-    file.encodings.forEach(function(encoding) {
-        fileContent += generateEncoding(encoding);
-    });
-
-    fileContent += "};\n";
-
-    fs.writeFileSync(fileName, fileContent);
-}
-
-function generateEncoding(encoding) {
-    fileContent = "";
-
-    fileContent += '    "' + encoding.name + '": {\n';
-    fileContent += '        type: "singlebyte",\n';
-    fileContent += '        chars: "' + generateCharsString(encoding.encoding) + '",\n';
-    fileContent += '    },\n';
-
-    encoding.aliases.forEach(function(alias) {
-        if (typeof alias === "string") {
-            fileContent += '    "' + alias + '": "' + encoding.name + '",\n';
-        } else {
-            fileContent += '    ' + alias + ': "' + encoding.name + '",\n';
-        }
-    });
-
-    fileContent += '\n';
-
-    return fileContent;
-}
-
-function generateCharsString(encoding) {
-    console.log("Generate encoding for " + encoding);
-    var iconvToUtf8 = new Iconv(encoding, "utf8");
-    var chars = "";
-
-    for (var b = 0x80; b < 0x100; b++) {
-        chars += byteToUnicodeEscapedString(iconvToUtf8, b);
-    }
-
-    return chars;
-}
-
-function byteToUnicodeEscapedString(iconv, b) {
-    try {
-        var bufferSourceEnoding = new Buffer([b])
-        var bufferUtf8 = iconv.convert(bufferSourceEnoding);
-        var charCode = bufferUtf8.toString().charCodeAt(0);
-
-        return "\\u" + integerAsFourDigitHexString(charCode)
-    } catch (exception) {
-        if (exception.code === "EILSEQ") {
-            return "\\ufffd";
-        } else {
-            throw exception;
-        }
-    }
-}
-
-function integerAsFourDigitHexString(integer) {
-    var byte1 = byteToHexString(integer >> 8);
-    var byte2 = byteToHexString(integer & 0xff);
-
-    return byte1 + byte2;
-}
-
-function byteToHexString(byteValue) {
-    var highNibble = (byteValue >> 4).toString(16);
-    var lowNibble = (byteValue & 0x0f).toString(16);
-
-    return highNibble + lowNibble;
-}
diff --git a/generation/generate-singlebyte.js b/generation/generate-singlebyte.js
new file mode 100644
index 0000000..ce1a043
--- /dev/null
+++ b/generation/generate-singlebyte.js
@@ -0,0 +1,134 @@
+var fs  = require("fs");
+var Iconv  = require("iconv").Iconv;
+
+
+var encodingFamilies = [
+    {
+        // Windows code pages
+        encodings: [1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 1258],
+        convert: function(cp) {
+            return {
+                name: "windows-"+cp,
+                aliases: ["win"+cp, "cp"+cp, ""+cp],
+            }
+        }
+    },
+    {
+        // ISO-8859 code pages
+        encodings: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16],
+        convert: function(i) {
+            return {
+                name: "iso-8859-"+i,
+                aliases: ["cp"+(28590+i), (28590+i)],
+            }
+        }
+    },
+    {
+        // IBM/DOS code pages
+        encodings: [437, 737, 775, 850, 852, 855, 857, 858, 860, 861, 862, 863, 864, 865, 866, 869],
+        convert: function(cp) {
+            return {
+                name: "CP"+cp,
+                aliases: ["ibm"+cp, ""+cp],
+            }
+        }
+    },
+    {
+        // Macintosh code pages
+        encodings: ["macCroatian", "macCyrillic", "macGreek", 
+                    "macIceland", "macRoman", "macRomania", 
+                    "macThai", "macTurkish", "macUkraine"],
+    },
+    {
+        // KOI8 code pages
+        encodings: ["KOI8-R", "KOI8-U"],
+    },
+];
+
+
+var encodings = {
+    // Aliases.
+    "ascii8bit": "ascii",
+    "us-ascii": "ascii",
+
+    "latin1": "iso88591",
+    "latin2": "iso88592",
+    "latin3": "iso88593",
+    "latin4": "iso88594",
+    "latin6": "iso885910",
+    "latin7": "iso885913",
+    "latin8": "iso885914",
+    "latin9": "iso885915",
+    "latin10": "iso885916",
+
+    "cp819": "iso88951",
+    "arabic": "iso88596",
+    "arabic8": "iso88596",
+    "greek" : "iso88597",
+    "greek8" : "iso88597",
+    "hebrew": "iso88598",
+    "hebrew8": "iso88598",
+    "turkish": "iso88599",
+    "turkish8": "iso88599",
+    "thai": "iso885911",
+    "thai8": "iso885911",
+    "tis620": "iso885911",
+    "windows874": "iso885911",
+    "win874": "iso885911",
+    "cp874": "iso885911",
+    "874": "iso885911",
+    "celtic": "iso885914",
+    "celtic8": "iso885914",
+};
+
+// Add all encodings from encodingFamilies.
+encodingFamilies.forEach(function(family){
+    family.encodings.forEach(function(encoding){
+        if (family.convert)
+            encoding = family.convert(encoding);
+
+        var encodingIconvName = encoding.name ? encoding.name : encoding; 
+        var encodingName = encodingIconvName.replace(/[-_]/g, "").toLowerCase();
+
+        encodings[encodingName] = {
+            type: "singlebyte",
+            chars: generateCharsString(encodingIconvName)
+        };
+
+        if (encoding.aliases)
+            encoding.aliases.forEach(function(alias){
+                encodings[alias] = encodingName;
+            });
+    });
+});
+
+// Write encodings.
+fs.writeFileSync("encodings/singlebyte.js", 
+    "module.exports = " + JSON.stringify(encodings, undefined, "  ") + ";");
+
+
+function generateCharsString(encoding) {
+    console.log("Generate encoding for " + encoding);
+    var iconvToUtf8 = new Iconv(encoding, "UTF-8");
+    var chars = "";
+
+    for (var b = 0x80; b < 0x100; b++) {
+
+        try {
+            var convertedChar = iconvToUtf8.convert(new Buffer([b])).toString();
+            
+            if (convertedChar.length != 1)
+                throw new Error("Single-byte encoding error: Must return single char.");
+        } catch (exception) {
+            if (exception.code === "EILSEQ") {
+                convertedChar = "\ufffd";
+            } else {
+                throw exception;
+            }
+        }
+
+        chars += convertedChar;
+    }
+
+    return chars;
+}
diff --git a/index.js b/index.js
index 04d35fc..99e8c0a 100644
--- a/index.js
+++ b/index.js
@@ -54,10 +54,6 @@ var iconv = module.exports = {
         binary: "internal",
         ascii: "internal",
         base64: "internal",
-        latin1: {
-            type: "internal",
-            originalEncoding: "binary"
-        },
         
         // Codepage single-byte encodings.
         singlebyte: function(options) {
diff --git a/package.json b/package.json
index a1d04ce..15daf32 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
 {
     "name": "iconv-lite",
     "description": "Convert character encodings in pure javascript.",
-    "version": "0.1.4",
+    "version": "0.2.0",
     
     "keywords": ["iconv", "convert", "charset"],
     "author": "Alexander Shtuchkin <ashtuchkin at gmail.com>",
diff --git a/test/turkish-test.js b/test/turkish-test.js
index d34dcbd..b2eb68e 100644
--- a/test/turkish-test.js
+++ b/test/turkish-test.js
@@ -11,13 +11,13 @@ var encodings = [{
     strings: {
         empty: "",
         ascii: ascii,
-        greek: "€‚ƒ„…†‡ˆ‰Š‹Œ‘’“”•–—˜™š›œŸ¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ",
+        turkish: "€‚ƒ„…†‡ˆ‰Š‹Œ‘’“”•–—˜™š›œŸ¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ",
         untranslatable: "\x81\x8d\x8e\x8f\x90\x9d\x9e"
     },
     encodedStrings: {
         empty: new Buffer(''),
         ascii: new Buffer(ascii, 'binary'),
-        greek: new Buffer(
+        turkish: new Buffer(
             '\x80\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c' +
             '\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9f' +
             '\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xae\xaf' +
@@ -34,16 +34,14 @@ var encodings = [{
     strings: {
         empty: "",
         ascii: ascii,
-        greek: "¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ",
-        untranslatable:
-            '\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f' +
-            '\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f'
+        turkish: "\xa0¡¢£¤¥¦§¨©ª«¬\xad®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ",
+        untranslatable: ''
     },
     encodedStrings: {
         empty: new Buffer(''),
         ascii: new Buffer(ascii, 'binary'),
-        greek: new Buffer(
-            '\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xae\xaf' +
+        turkish: new Buffer(
+            '\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf' +
             '\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf' +
             '\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf' +
             '\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf' +
@@ -56,7 +54,7 @@ var encodings = [{
 var testsBatch = {};
 encodings.forEach(function(encoding) {
     var enc = encoding.variations[0];
-    var key = "greek";
+    var key = "turkish";
     var tests = {
         "Convert to empty buffer": function() {
             assert.strictEqual(iconv.toEncoding("", enc).toString('binary'), new Buffer('').toString('binary'));

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/node-iconv-lite.git



More information about the Pkg-javascript-commits mailing list