Kano, Спасибо за первую ссылку.
Надо просто
"некий текст", который я кладу в файл перевести в ссылку с кодировкой
windows-1251.
Я взял за основу
https://github.com/mathiasbynens/windows-1251 и дописал.
var encodeURL = function(input) {
var length = input.length;
var index = -1;
var codePoint;
var pointer;
var result = '';
while (++index < length) {
codePoint = input.charCodeAt(index);
// “If `code point` is in the range U+0000 to U+007F, return a byte whose
// value is `code point`.”
if (codePoint >= 0x00 && codePoint <= 0x7F) {
result += '%' + (codePoint<16?'0':'') + codePoint.toString(16);
continue;
}
// “Let `pointer` be the index pointer for `code point` in index
// `single-byte`.”
if (hasOwnProperty.call(INDEX_BY_CODE_POINT, codePoint)) {
pointer = INDEX_BY_CODE_POINT[codePoint];
// “Return a byte whose value is `pointer + 0x80`.”
result += '%' + (codePoint<16?'0':'') + (pointer + 0x80).toString(16);
} else {
// “If `pointer` is `null`, return `error` with `code point`.”
result += error(codePoint, mode);
}
}
return result.toUpperCase();
};
Или вот еще более полное решение по кодировки.
text-encoding