UNPKG

cjkspace

Version:

Add space between CJK character and western character

29 lines (23 loc) 707 B
"use strict"; var shouldSpace = require('./shouldSpace'); var zip = function zip(a, b) { return a.reduce(function (acc, next, i) { return acc.concat(next, String(b[i])); }, []); }; var join = function join(array, f) { return array.reduce(function (acc, next) { return acc + f(acc, next) + next; }); }; var cjkspace = function cjkspace(string) { for (var _len = arguments.length, subs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { subs[_key - 1] = arguments[_key]; } return join(zip(string, subs.concat('')).filter(function (c) { return c !== ''; }), function (a, b) { return shouldSpace(a, b) ? ' ' : ''; }); }; module.exports = cjkspace;