iso-8859-7

iso-8859-7 is a robust JavaScript implementation of the iso-8859-7 character encoding as defined by the Encoding Standard.
This encoding is known under the following names: csisolatingreek, ecma-118, elot_928, greek, greek8, iso-8859-7, iso-ir-126, iso8859-7, iso88597, iso_8859-7, iso_8859-7:1987, and sun_eu_greek.
Installation
Via npm:
npm install iso-8859-7
In a browser:
<script src="iso-8859-7.js"></script>
In Node.js, io.js, Narwhal, and RingoJS:
var iso88597 = require('iso-8859-7');
In Rhino:
load('iso88597.js');
Using an AMD loader like RequireJS:
require(
{
'paths': {
'iso-8859-7': 'path/to/iso-8859-7'
}
},
['iso-8859-7'],
function(iso88597) {
console.log(iso88597);
}
);
API
iso88597.version
A string representing the semantic version number.
iso88597.labels
An array of strings, each representing a label for this encoding.
iso88597.encode(input, options)
This function takes a plain text string (the input
parameter) and encodes it according to iso-8859-7. The return value is a ‘byte string’, i.e. a string of which each item represents an octet as per iso-8859-7.
const encodedData = iso88597.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'
.
const encodedData = iso88597.encode(text, {
'mode': 'html'
});
iso88597.decode(input, options)
This function takes a byte string (the input
parameter) and decodes it according to iso-8859-7.
const text = iso88597.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'
.
const text = iso88597.decode(encodedData, {
'mode': 'fatal'
});
For decoding a buffer (e.g. from fs.readFile
) use buffer.toString('binary')
to get the byte string which decode
takes.
Support
iso-8859-7 is designed to work in at least Node.js v0.10.0, io.js v1.0.0, Narwhal 0.3.2, RingoJS 0.8-0.11, PhantomJS 1.9.0, Rhino 1.7RC4, as well as old and modern versions of Chrome, Firefox, Safari, Opera, Edge, and Internet Explorer.
Notes
Similar modules for other single-byte legacy encodings are available.
Author
License
iso-8859-7 is available under the MIT license.