gost-transliteration

Transliteration according to GOST

Usage no npm install needed!

<script type="module">
  import gostTransliteration from 'https://cdn.skypack.dev/gost-transliteration';
</script>

README

Транслитерация по ГОСТ

Небольшой javascript-пакет для транслитерации по действующим в Российской Федерации ГОСТ. В данный момент пакет поддерживает следующие ГОСТы и правила транслитерации:

  • ГОСТ 7.79-2000 (ISO 9-95) (русский, белорусский, украинский, болгарский и македонский алфавит)

Посмотреть на пример работы пакета можно на данной странице.

Установка и использование пакета

Устанавливаем с помощью npm:

npm install gost-transliteration --save

Подключаем и используем функцию модуля:

import { translit } from 'gost-transliteration'

translit('Привет мир!') // Вернёт «Privet mir!», для русского (язык по умолчанию)
translit("Прывітанне свет!", 'be') // Вернёт «Pry'vіtanne svet!», для белорусского
translit("Привіт світ!", 'uk') // Вернёт «Pry'vіt svіt!», для украинского
translit("Здравей свят!", 'bg') // Вернёт «Zdravej svyat!», для болгарского
translit("Здраво светот!", 'mk') // Вернёт «Zdravo svetot!», для македонского

Можно подключить с помощью CommonJS модулей (node.js):

const { translit } = require('gost-transliteration')

Транслитерация по ГОСТ 7.79-2000 (ISO 9-95)

Обратите внимание, что я решил поддерживать только транслитерацию славянских алфавитов по системе Б (транслитерация с использованием буквосочетаний) ГОСТ ГОСТ 7.79-2000 (ISO 9-95). Игнорируемая система А использует специфические латинские символы, которые, на мой взгляд, к реальной повседневной жизни имеют мало отношения.

Поддерживаемая транслитерация

Буква Русский Белорусский Украинский Болгарский Македонский
А a a a a a
Б b b b b b
В v v v v v
Г g g g g g
Ѓ - - - - g'
Д d d d d d
Е e e e e e
Ё yo yo - - -
Є - - ye - -
Ж zh zh zh zh zh
З z z z z z
Ѕ - - - - z'
И i - y' i i
Й j j j j j
Ј - - - - j
I i, i' i i i, i' -
Ї - - yi - -
К k k k k k
Ќ - - - - k'
Л l l l l l
Љ - - - - l'
М m m m m m
Н n n n n n
Њ - - - - n'
О o o o o o
П p p p p p
Р r r r r r
С s s s s s
Т t t t t t
У u u u u u
Ў - u' - - -
Ф f f f f f
Х x x x x x
Ц cz, c cz, c cz, c cz, c cz, c
Ч ch ch ch ch ch
Џ - - - - dh
Ш sh sh sh sh sh
Щ shh - shh sth -
Ъ '' - - a' -
Ы y' y' - - -
Ь ' ' ' ' -
Э e' e' - - -
Ю yu yu yu yu -
Я ya ya ya ya -
' (апостроф) ' ' ' ' '
Ѣ (ять) ye - - ye -
Ѳ (фита) fh - - fh -
Ѵ (ижица) yh - - yh -
Ѫ (юс) - - - o' -

Важные оговорки при транслитерации

  1. При транслитерации заглавных (прописных) букв буквосочетанием в транслитерированном тексте заглавный (прописной) вариант выбирается только для первой буквы сочетания, если в данном слове имеются строчные. Если все буквы исходного слова заглавные (прописные), то в транслитерированном слове заглавными пишут все буквы сочетания.
  2. Ц передается либо латинской C, либо сочетанием CZ. Рекомендуется употреблять C перед буквами I, E, Y, J, а в остальных случаях - CZ.
  3. Кирилловская I в украинском и белорусском языках всегда передается через латинскую I. Также она передается в русских и болгарских текстах, написанных по старой орфографии, где она, как правило, употребляется перед гласными буквами. В редких случаях употребления ее перед согласной (например, в слове «МIРѢ»), она передается сочетанием i'.