Skip to content

Commit 4715174

Browse files
committed
In benchmarks increased size of the russian-translit.js file
1 parent 1eb1bd7 commit 4715174

File tree

1 file changed

+304
-0
lines changed

1 file changed

+304
-0
lines changed

test/JavaScriptEngineSwitcher.Benchmarks/Resources/russian-translit.js

Lines changed: 304 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,13 @@
11
var transliterate = (function () {
22
'use strict';
33

4+
/**
5+
* Сопоставления русских и латинских символов, сгруппированные по типам (системам) транслитерации
6+
*
7+
* @private {Object}
8+
*/
49
var characterMappings = {
10+
// Основной
511
'basic': {
612
'а': 'a',
713
'б': 'b',
@@ -70,6 +76,8 @@ var transliterate = (function () {
7076
'Ю': 'Ju',
7177
'Я': 'Ja'
7278
},
79+
80+
// Буквы-цифры
7381
'letters-numbers': {
7482
'а': 'a',
7583
'б': 'b',
@@ -138,6 +146,8 @@ var transliterate = (function () {
138146
'Ю': 'Ju',
139147
'Я': 'Ja'
140148
},
149+
150+
// ГОСТ 16876-71
141151
'gost-16876-71': {
142152
'а': 'a',
143153
'б': 'b',
@@ -206,6 +216,8 @@ var transliterate = (function () {
206216
'Ю': 'Ju',
207217
'Я': 'Ja'
208218
},
219+
220+
// ГОСТ 7.79-2000
209221
'gost-7-79-2000': {
210222
'а': 'a',
211223
'б': 'b',
@@ -274,6 +286,288 @@ var transliterate = (function () {
274286
'Ю': 'Yu',
275287
'Я': 'Ya'
276288
},
289+
290+
// СЭВ 1362-78
291+
'sev-1362-78': {
292+
'а': 'a',
293+
'б': 'b',
294+
'в': 'v',
295+
'г': 'g',
296+
'д': 'd',
297+
'е': 'e',
298+
'ё': 'jo',
299+
'ж': 'zh',
300+
'з': 'z',
301+
'и': 'i',
302+
'й': 'j',
303+
'к': 'k',
304+
'л': 'l',
305+
'м': 'm',
306+
'н': 'n',
307+
'о': 'o',
308+
'п': 'p',
309+
'р': 'r',
310+
'с': 's',
311+
'т': 't',
312+
'у': 'u',
313+
'ф': 'f',
314+
'х': 'kh',
315+
'ц': 'c',
316+
'ч': 'ch',
317+
'ш': 'sh',
318+
'щ': 'shh',
319+
'ъ': '"',
320+
'ы': 'y',
321+
'ь': '\'',
322+
'э': 'eh',
323+
'ю': 'ju',
324+
'я': 'ja',
325+
'А': 'A',
326+
'Б': 'B',
327+
'В': 'V',
328+
'Г': 'G',
329+
'Д': 'D',
330+
'Е': 'E',
331+
'Ё': 'Jo',
332+
'Ж': 'Zh',
333+
'З': 'Z',
334+
'И': 'I',
335+
'Й': 'J',
336+
'К': 'K',
337+
'Л': 'L',
338+
'М': 'M',
339+
'Н': 'N',
340+
'О': 'O',
341+
'П': 'P',
342+
'Р': 'R',
343+
'С': 'S',
344+
'Т': 'T',
345+
'У': 'U',
346+
'Ф': 'F',
347+
'Х': 'Kh',
348+
'Ц': 'C',
349+
'Ч': 'Ch',
350+
'Ш': 'Sh',
351+
'Щ': 'Shh',
352+
'Ъ': '""',
353+
'Ы': 'Y',
354+
'Ь': '\'\'',
355+
'Э': 'Eh',
356+
'Ю': 'Ju',
357+
'Я': 'Ja'
358+
},
359+
360+
// LC
361+
'lc': {
362+
'а': 'a',
363+
'б': 'b',
364+
'в': 'v',
365+
'г': 'g',
366+
'д': 'd',
367+
'е': 'e',
368+
'ё': 'e',
369+
'ж': 'zh',
370+
'з': 'z',
371+
'и': 'i',
372+
'й': 'i',
373+
'к': 'k',
374+
'л': 'l',
375+
'м': 'm',
376+
'н': 'n',
377+
'о': 'o',
378+
'п': 'p',
379+
'р': 'r',
380+
'с': 's',
381+
'т': 't',
382+
'у': 'u',
383+
'ф': 'f',
384+
'х': 'kh',
385+
'ц': 'ts',
386+
'ч': 'ch',
387+
'ш': 'sh',
388+
'щ': 'shch',
389+
'ъ': '"',
390+
'ы': 'y',
391+
'ь': '\'',
392+
'э': 'e',
393+
'ю': 'iu',
394+
'я': 'ia',
395+
'А': 'A',
396+
'Б': 'B',
397+
'В': 'V',
398+
'Г': 'G',
399+
'Д': 'D',
400+
'Е': 'E',
401+
'Ё': 'E',
402+
'Ж': 'Zh',
403+
'З': 'Z',
404+
'И': 'I',
405+
'Й': 'I',
406+
'К': 'K',
407+
'Л': 'L',
408+
'М': 'M',
409+
'Н': 'N',
410+
'О': 'O',
411+
'П': 'P',
412+
'Р': 'R',
413+
'С': 'S',
414+
'Т': 'T',
415+
'У': 'U',
416+
'Ф': 'F',
417+
'Х': 'Kh',
418+
'Ц': 'Ts',
419+
'Ч': 'Ch',
420+
'Ш': 'Sh',
421+
'Щ': 'Shch',
422+
'Ъ': '""',
423+
'Ы': 'Y',
424+
'Ь': '\'\'',
425+
'Э': 'E',
426+
'Ю': 'Iu',
427+
'Я': 'Ia'
428+
},
429+
430+
// BGN
431+
'bgn': {
432+
'а': 'a',
433+
'б': 'b',
434+
'в': 'v',
435+
'г': 'g',
436+
'д': 'd',
437+
'е': 'e',
438+
'ё': 'e',
439+
'ж': 'zh',
440+
'з': 'z',
441+
'и': 'i',
442+
'й': 'y',
443+
'к': 'k',
444+
'л': 'l',
445+
'м': 'm',
446+
'н': 'n',
447+
'о': 'o',
448+
'п': 'p',
449+
'р': 'r',
450+
'с': 's',
451+
'т': 't',
452+
'у': 'u',
453+
'ф': 'f',
454+
'х': 'kh',
455+
'ц': 'ts',
456+
'ч': 'ch',
457+
'ш': 'sh',
458+
'щ': 'shch',
459+
'ъ': '"',
460+
'ы': 'y',
461+
'ь': '\'',
462+
'э': 'e',
463+
'ю': 'yu',
464+
'я': 'ya',
465+
'А': 'A',
466+
'Б': 'B',
467+
'В': 'V',
468+
'Г': 'G',
469+
'Д': 'D',
470+
'Е': 'E',
471+
'Ё': 'E',
472+
'Ж': 'Zh',
473+
'З': 'Z',
474+
'И': 'I',
475+
'Й': 'Y',
476+
'К': 'K',
477+
'Л': 'L',
478+
'М': 'M',
479+
'Н': 'N',
480+
'О': 'O',
481+
'П': 'P',
482+
'Р': 'R',
483+
'С': 'S',
484+
'Т': 'T',
485+
'У': 'U',
486+
'Ф': 'F',
487+
'Х': 'Kh',
488+
'Ц': 'Ts',
489+
'Ч': 'Ch',
490+
'Ш': 'Sh',
491+
'Щ': 'Shch',
492+
'Ъ': '""',
493+
'Ы': 'Y',
494+
'Ь': '\'\'',
495+
'Э': 'E',
496+
'Ю': 'Yu',
497+
'Я': 'Ya'
498+
},
499+
500+
// BSI
501+
'bsi': {
502+
'а': 'a',
503+
'б': 'b',
504+
'в': 'v',
505+
'г': 'g',
506+
'д': 'd',
507+
'е': 'e',
508+
'ё': 'e',
509+
'ж': 'zh',
510+
'з': 'z',
511+
'и': 'i',
512+
'й': 'i',
513+
'к': 'k',
514+
'л': 'l',
515+
'м': 'm',
516+
'н': 'n',
517+
'о': 'o',
518+
'п': 'p',
519+
'р': 'r',
520+
'с': 's',
521+
'т': 't',
522+
'у': 'u',
523+
'ф': 'f',
524+
'х': 'kh',
525+
'ц': 'ts',
526+
'ч': 'ch',
527+
'ш': 'sh',
528+
'щ': 'shch',
529+
'ъ': '"',
530+
'ы': 'y',
531+
'ь': '\'',
532+
'э': 'e',
533+
'ю': 'yu',
534+
'я': 'ya',
535+
'А': 'A',
536+
'Б': 'B',
537+
'В': 'V',
538+
'Г': 'G',
539+
'Д': 'D',
540+
'Е': 'E',
541+
'Ё': 'E',
542+
'Ж': 'Zh',
543+
'З': 'Z',
544+
'И': 'I',
545+
'Й': 'I',
546+
'К': 'K',
547+
'Л': 'L',
548+
'М': 'M',
549+
'Н': 'N',
550+
'О': 'O',
551+
'П': 'P',
552+
'Р': 'R',
553+
'С': 'S',
554+
'Т': 'T',
555+
'У': 'U',
556+
'Ф': 'F',
557+
'Х': 'Kh',
558+
'Ц': 'Ts',
559+
'Ч': 'Ch',
560+
'Ш': 'Sh',
561+
'Щ': 'Shch',
562+
'Ъ': '""',
563+
'Ы': 'Y',
564+
'Ь': '\'\'',
565+
'Э': 'E',
566+
'Ю': 'Yu',
567+
'Я': 'Ya'
568+
},
569+
570+
// Сходно с МВД
277571
'police': {
278572
'а': 'a',
279573
'б': 'b',
@@ -342,6 +636,8 @@ var transliterate = (function () {
342636
'Ю': 'Iu',
343637
'Я': 'Ia'
344638
},
639+
640+
// Как на загранпаспорт
345641
'foreign-passport': {
346642
'а': 'a',
347643
'б': 'b',
@@ -412,6 +708,14 @@ var transliterate = (function () {
412708
}
413709
};
414710

711+
/**
712+
* Производит транслитерацию русского текста с кириллицы на латиницу
713+
*
714+
* @param {String} value - Текст, содержащий символы русского (кириллического) алфавита
715+
* @param {String} type - Код типа (системы) транслитерации
716+
* @returns {String} Текст, содержащий только символы латинского алфавита
717+
* @expose
718+
*/
415719
function transliterate(value, type) {
416720
var charCount,
417721
charIndex,

0 commit comments

Comments
 (0)