windows-1253

windows-1253 is a robust JavaScript implementation of the windows-1253 character encoding as defined by the Encoding Standard.
This encoding is known under the following names: cp1253, windows-1253, and x-cp1253.
Installation
Via npm:
npm install windows-1253
Via Bower:
bower install windows-1253
Via Component:
component install mathiasbynens/windows-1253
In a browser:
<script src="windows-1253.js"></script>
In Narwhal, Node.js, and RingoJS:
var windows1253 = require('windows-1253');
In Rhino:
load('windows1253.js');
Using an AMD loader like RequireJS:
require(
{
'paths': {
'windows-1253': 'path/to/windows-1253'
}
},
['windows-1253'],
function(windows1253) {
console.log(windows1253);
}
);
API
windows1253.version
A string representing the semantic version number.
windows1253.labels
An array of strings, each representing a label for this encoding.
windows1253.encode(input, options)
This function takes a plain text string (the input parameter) and encodes it according to windows-1253. The return value is a ‘byte string’, i.e. a string of which each item represents an octet as per windows-1253.
var encodedData = windows1253.encode(text);
The optional options object and its mode property can be used to set the error mode. For encoding, the error mode can be 'fatal' (the default) or 'html'.
var encodedData = windows1253.encode(text, {
'mode': 'html'
});
windows1253.decode(input, options)
This function takes a byte string (the input parameter) and decodes it according to windows-1253.
var text = windows1253.decode(encodedData);
The optional options object and its mode property can be used to set the error mode. For decoding, the error mode can be 'replacement' (the default) or 'fatal'.
var text = windows1253.decode(encodedData, {
'mode': 'fatal'
});
Support
windows-1253 is designed to work in at least Node.js v0.10.0, Narwhal 0.3.2, RingoJS 0.8-0.9, PhantomJS 1.9.0, Rhino 1.7RC4, as well as old and modern versions of Chrome, Firefox, Safari, Opera, and Internet Explorer.
Unit tests & code coverage
After cloning this repository, run npm install to install the dependencies needed for development and testing. You may want to install Istanbul globally using npm install istanbul -g.
Once that’s done, you can run the unit tests in Node using npm test or node tests/tests.js. To run the tests in Rhino, Ringo, Narwhal, and web browsers as well, use grunt test.
To generate the code coverage report, use grunt cover.
Notes
Similar modules for other single-byte legacy encodings are available.
Author
License
windows-1253 is available under the MIT license.