что такое транслит в крмп
что такое транслит?
Транслитера́ция — конверсия систем письма, при которой каждый графический элемент (знак) одной системы письма представляется (заменяется) одним и тем же графическим элементом другой системы письма. (Грубо говоря написание слов одного языка буквами другого)
Различают по строгости представления:
строгую транслитерацию: замену каждой буквы исходного текста только одной буквой другой письменности;
ослабленную транслитерацию: замену некоторых букв исходного текста сочетанием двух или более букв чужого алфавита;
расширенную транслитерацию: представление некоторых буквосочетаний исходного текста особым образом.
Правила конверсии должны обладать следующими необходимыми свойствами:
однозначностью, обеспечивающей стабильность представления элементов исходной письменности (букв, слов; выражений) средствами другой (конвертирующей) письменности;
простотой, обеспечивающей автоматическое выполнение процедуры перехода от исходного текста к конвертированному на основе простых алгоритмов, преимущественно сводящихся к применению таблиц замены знаков одной системы письма знаками другой системы письма.
Желательна также обратимость этого преобразования, чтобы всегда можно было восстановить исходное написание; на практике это соблюдается далеко не всегда.
При применении правил конверсии могут не всегда соблюдаться требования звукового соответствия знаков конвертируемых систем письма, эстетические соображения и традиционные нормы, хотя в каждом отдельном случае желательна разработка таких правил, чтобы нарушение традиционных, фонетических и эстетических норм было минимальным. Однако каждый, кто знает исходный язык и правила конверсии, имеет возможность восстановить исходный текст и прочитать его по правилам исходного языка. Для алфавитных систем письма способом, удовлетворяющим сформулированным выше требованиям, и является транслитерация.
Что такое транслит, транслитерация.
Что такое транслит? Это передача текста чужим алфавитом. При транслите могут использоваться цифры и знаки, которые есть на клавиатуре. Этим он и отличается от транслитерации. Фактически это неформальная транслитерация. Русский транслит можно считать неформальной романизацией, поскольку в нем применяется латинский алфавит. В то время как в армянском транслите может использоваться и латинский алфавит, и кириллица.
Кстати, на нашем сайте вы можете выполнить транслитерацию слов с русского на английский и обратно, воспользовавшись Транслитерацией онлайн.
Слово «транслит» иногда в профессиональной речи используют вместо слова «транслитерация».
Принцип транслитерации.
В целом, транслит строится по принципу фонетических соответствий (латинских и русских букв). Довольно часто правила чтения в разных языках сочетаются. В первую очередь, конкуренция происходит между соответствиями старо-латинских транскрипций польско-немецкого толка (й→j, ц→c, ы→y, ю→ju, я→ja) и позднее усвоенных английских (ы→y, ц→ts, ч→ch, ш→sh, ю→yu, я→yа). Редко может использоваться визуальное сходство знаков (ш→III или ш→w; ч→4; я→9I; ы→bl). Однако, такой способ чаще всего считают не транслитом, а «кодировкой Волалюка». В написании заимствованные слова могут передаваться на языке оригинала. ТАБЛИЦА
Буква
Транслит
Буква
Транслит
Буква
Транслит
Применение транслитерации.
Само явление «транслит» появилось еще в докомпьютерное время, когда русские тексты передавались международными телеграфами. В связи с появлением кракозябр использование транслита стало очень популярным в интернет общении. Также он довольно активно употребляется при общении через SMS, так как сообщение, набранное латиницей, содержит вдвое больше букв, чем сообщение набранное кириллицей в кодировке Юникод.
Существует ряд несовместимых между собой правил и стандартов транслитерации (советских и российских) кириллицы латинским алфавитом:
Во многих стандартах (например, ГОСТ 16876-71 и ГОСТ 7.79-2000) транслитерация прописывается несколькими способами. Одним для преобразования одного символа кириллицы в несколько символов латиницы без диакритики, а другим для преображения символа в символ с использованием латинских диакритических символов.
Изменения в 21 веке – транслит в Интернете.
Транслитерация очень распространилась в Интернете в 1990-1999 годах. Тогда в группах новостей и на форумах было довольно много сообщений, написанных транслитом, даже некоторые авторские сайты были на транслите. Стремительное развитие компьютерных технологий в 21 веке кардинально изменило эту ситуацию. Упростилась процедура поддерживания ввода и чтения кириллицы на японских, немецких и английских компьютерах. По этой причине транслитерация исчезла даже на русскоязычных форумах — от Германии до Австралии.
В последнее время стало заметно, что российские пользователи всемирной паутины Интернет стремятся уйти от применения транслита не только в текстах. Такие перемены связаны с появлением кириллической зоны.рф (см. примечание).
Если говорить о целевой аудитории рф-сайтов, то «эксперты» приводят такую статистику:
— Чтение. Изначально кириллица поддерживается в обычных шрифтах, которые включены в поставку каждой популярной операционной системы, независимо от того немецкая она или корейская. Так читать ru.wikipedia.org можно даже в Токио в любом интернет-кафе.
— Ввод. В отличие от шрифтов, клавиатурные средства ввода кириллицы, которые тоже первоначально присутствуют, необходимо активировать путем добавления русской («RU») раскладки клавиатуры. Для одного языка можно иметь, на выбор, несколько разнообразных раскладок. К примеру, для русского языка, помимо двух стандартных обычных раскладок можно установить и фонетическую раскладку, в то время, как для английского есть лишь «раскладка Дворака».
Сейчас несколько сотен тысяч русскоговорящих людей, которые еще в 20 веке годами писали на транслите, общаются по почте, в блогах и на форумах, пользуясь стандартной кириллицей. Она имеет свои преимущества:
Во-первых, текст со стандартной, обычной русской раскладки вводить с помощью клавиатуры не обязательно. Теперь можно воспользоваться методом В. Маслова и установить фонетическую раскладку основной, системной клавиатуры. То есть, при такой раскладке ввод данных происходит в виде, привычном для людей (А—A, Б—B, Д—D, Ф—F, К—K, О—O).
Во-вторых, если Вы пользуетесь «чужим компьютером» (в барселонском интернет-кафе) Вам не нужно пользоваться такими устаревшими методами как ненадёжные «перекодировщики текста, введённого латиницей» или кропотливый ввод мышкой с помощью старого типа виртуальной клавиатуры. В настоящее время набирать текст быстро и удобно можно в любом интернет-кафе вне России. Для этого необходимо зайти на современные сайты Виртуальной Клавиатуры, где полностью имитируется «домашний», «системный» ввод. Здесь Вы сможете вводить данные с помощью той же раскладки (фонетической или стандартной), что и дома.
Примечание. По распространённости русский язык занимает пятое место в мире. Он – один из шести официальных языков Организации Объединенных Наций. Им владеют более 300 миллионов человек в мире, а 160 миллионов из них считают русский язык родным и лишь 34 % владеют английским языком на начальном уровне. Соответственно, можно сделать вывод, что зона.рф даст возможность более 100 миллионам человек пользоваться Интернетом на более понятном языке.
Что такое транслит самп
Возможно, кто-то еще помнит, как писали SMS, а иногда и письма, «транслитом». Но зачем транслитерация сегодня, когда везде уже unicode? К сожалению, унаследованные приложения выходят из эксплуатации намного медленнее, чем хотелось бы. Например, и сегодня используются томографы, не допускающие кириллицу в именах пациентов. При том, что информационная система, используемая тем же отделением, прекрасно кириллицу понимает. И оператору томографа нужно не просто позвать пациента на исследование, но и правильно записать его фамилию в какие-нибудь документы. Похожие ситуации могут встретится в разных местах.
Можно найти много готовых вариантов транслитерации кириллицы в латиницу. Но среди них не нашлось ничего, что бы удовлетворяло всем требованиям в приемлемой степени. То использует диакритические символы, как стандарты, то выбрасывает буквы (обычно «Ъ»), то предлагают необратимые (щ —> shch) или фонетически дикие (ш —> w) варианты замены, или имеют другие фатальные недостатки.
Значит, делаем свой велосипед. Собственно, нужно составить таблицу соответствия, и описать алгоритм преобразования туда и обратно.
Таблица
Начнем со всем очевидных одно-буквенных замен:
А | Б | В | Г | Д | Е | Ё | Ж | З | И | Й | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я |
A | B | V | G | D | E | Z | I | K | L | M | N | O | P | R | S | T | U | F |
Помня о требовании возможно коротких замен, и поскольку для «С» используем «S», с чистой совестью используем для «Ц» символ «C».
Для оставшихся букв традиция (и просто нехватка символов латиницы) велит нам использовать двух-буквенные сочетания. Для простоты прямого и, в особенности, обратного преобразования, хорошо бы, чтобы сочетания образовывали символы, не используемые вне сочетаний. По условию Фано, такой особый символ должен стоять в начале сочетания, но традиция слишком сильна и букву «H» будем писать все-таки в конце сочетания. Но, если отдельно символ «H» не использовать и разрешить алгоритму преобразования «возвращаться» (на самом деле, — запоминать) к предыдущему входному символу, для постфиксных сочетаний можно считать выполненным «перевернутый» аналог условия Фано. То есть алгоритм сможет их однозначно определять.
Особый символ для согласных везде один — «H». А для гласных есть два варианта: «Y» и «J». Хотя «Y» привычнее, он также часто используется отдельно, для «Й» или для «Ы». А «J» скорее воспринимается как чисто вспомогательный символ.
Решено, используем для гласных «J». А кстати освободившийся «Y» используем для «Й».
Раз «J» теперь особый символ, использовать его для «Ж» нельзя, и остается только «ZH». Аналогично, для «Х» нельзя использовать «H», и остается только «KH».
Теперь можем записать общепринятые и выбранные сочетания и одиночные символы:
А | Б | В | Г | Д | Е | Ё | Ж | З | И | Й | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я |
A | B | V | G | D | E | ZH | Z | I | Y | K | L | M | N | O | P | R | S | T | U | F | KH | C | CH | SH | EH | JU | JA |
Распространенные и хорошие (в смысле наших требований) замены здесь кончились, и мы вступаем на зыбкую почву «отсебятины», аналогий и компромиссов.
Начнем с «Ы». «Y» уже занят (помним про обратимость), да и фонетически это плохая замена. Посмотрим на решение для «Э» (взято, между прочим, из ISO/R 9, 1968 г.). По аналогии «Ы» должно заменятся на «IH». Странно, что такой вариант нигде не встретился.
С «Ё» ситуация тоже странная. Есть понятный, но не подходящий нам вариант «E». И есть фонетический вариант «JO». Но в русском алфавите «Ё» не случайно сделана на основе «Е», а не «О». «Ё» часто чередуется с «Е», например «клён — кленовый», и никогда не чередуется с «О». Это получается еще одна эвристика — «алфавитная» (не фонетическая и не графическая) близость букв. В результате для «Ё» конструируем замену «JE».
Сделаем паузу:
А | Б | В | Г | Д | Е | Ё | Ж | З | И | Й | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я |
A | B | V | G | D | E | JE | ZH | Z | I | Y | K | L | M | N | O | P | R | S | T | U | F | KH | C | CH | SH | IH | EH | JU | JA |
Как хорошо было бы на этом остановится и сказать, что задача в первом приближении решена. Но остались еще три буквы, без которых никак не обойтись. Для оставшихся букв нет никаких адекватных вариантов. Знаки обычно заменяют апострофами, а буквенные замены либо просто произвольны, либо «остроумны», вроде «ь» —>«q». Для «Щ» замена без диакритических знаков обычно длиной в 3 — 4 символа, и с ней еще будут проблемы.
После долгих исканий и страданий, пришлось остановится на таком рассуждении: для букв, которым не соответствуют звуки, нельзя использовать буквы, для которых звуки есть. И нам остаются только «специальные» символы для образования сочетаний. Но по условию Фано их нельзя использовать отдельно, сочетания станут неоднозначны.
Выход — использовать сочетания специальных символов друг с другом. Это, видимо, еще немного усложнит алгоритм преобразования, но кажется возможным сохранить однозначность.
Для твердого знака (он у нас только разделительный) интуитивно кажется уместной замена «HH» (не читается, как пауза, разделение).
А для мягкого знака цепочки ассоциаций («J» —> йотированные гласные —> смягчение предыдущей согласной) + («H» —> разделение) приводят к замене «JH».
Не назовешь красивым решением, но среди гнилых яблок выбор не велик.
К сожалению, такой выбор делает невозможным использовать замену «Щ» —> «SHH». Последовательность «SHH» будет означать «СЪ», и такое сочетание встречается в русском языке (например, «съезд»). Тут снова нет симпатичных решений, и надо искать хоть как-то мотивированные. Звук «Щ» близок к смягченному «Ш», и по аналогии с мягким знаком можно это изобразить префиксным «J». Понимаю, что сейчас ссылаюсь сам на себя, что код все равно длинны 3 и не стандартный. Но, как говорится, «других писателей у нас для вас нЭт».
В результате:
А | Б | В | Г | Д | Е | Ё | Ж | З | И | Й | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я |
A | B | V | G | D | E | JE | ZH | Z | I | Y | K | L | M | N | O | P | R | S | T | U | F | KH | C | CH | SH | JSH | HH | IH | JH | EH | JU | JA |
Применение транслитерации.
Существует ряд несовместимых между собой правил и стандартов транслитерации (советских и российских) кириллицы латинским алфавитом:
Во многих стандартах (например, ГОСТ 16876-71 и ГОСТ 7.79-2000) транслитерация прописывается несколькими способами. Одним для преобразования одного символа кириллицы в несколько символов латиницы без диакритики, а другим для преображения символа в символ с использованием латинских диакритических символов.
что такое транслит?
Различают по строгости представления:
строгую транслитерацию: замену каждой буквы исходного текста только одной буквой другой письменности;
ослабленную транслитерацию: замену некоторых букв исходного текста сочетанием двух или более букв чужого алфавита;
расширенную транслитерацию: представление некоторых буквосочетаний исходного текста особым образом.
Правила конверсии должны обладать следующими необходимыми свойствами:
однозначностью, обеспечивающей стабильность представления элементов исходной письменности (букв, слов; выражений) средствами другой (конвертирующей) письменности;
простотой, обеспечивающей автоматическое выполнение процедуры перехода от исходного текста к конвертированному на основе простых алгоритмов, преимущественно сводящихся к применению таблиц замены знаков одной системы письма знаками другой системы письма.
Желательна также обратимость этого преобразования, чтобы всегда можно было восстановить исходное написание; на практике это соблюдается далеко не всегда.
При применении правил конверсии могут не всегда соблюдаться требования звукового соответствия знаков конвертируемых систем письма, эстетические соображения и традиционные нормы, хотя в каждом отдельном случае желательна разработка таких правил, чтобы нарушение традиционных, фонетических и эстетических норм было минимальным. Однако каждый, кто знает исходный язык и правила конверсии, имеет возможность восстановить исходный текст и прочитать его по правилам исходного языка. Для алфавитных систем письма способом, удовлетворяющим сформулированным выше требованиям, и является транслитерация.
Изменения в 21 веке – транслит в Интернете.
Если говорить о целевой аудитории рф-сайтов, то «эксперты» приводят такую статистику:
— Ввод. В отличие от шрифтов, клавиатурные средства ввода кириллицы, которые тоже первоначально присутствуют, необходимо активировать путем добавления русской («RU») раскладки клавиатуры. Для одного языка можно иметь, на выбор, несколько разнообразных раскладок. К примеру, для русского языка, помимо двух стандартных обычных раскладок можно установить и фонетическую раскладку, в то время, как для английского есть лишь «раскладка Дворака».
Сейчас несколько сотен тысяч русскоговорящих людей, которые еще в 20 веке годами писали на транслите, общаются по почте, в блогах и на форумах, пользуясь стандартной кириллицей. Она имеет свои преимущества:
Во-первых, текст со стандартной, обычной русской раскладки вводить с помощью клавиатуры не обязательно. Теперь можно воспользоваться методом В. Маслова и установить фонетическую раскладку основной, системной клавиатуры. То есть, при такой раскладке ввод данных происходит в виде, привычном для людей (А—A, Б—B, Д—D, Ф—F, К—K, О—O).
Во-вторых, если Вы пользуетесь «чужим компьютером» (в барселонском интернет-кафе) Вам не нужно пользоваться такими устаревшими методами как ненадёжные «перекодировщики текста, введённого латиницей» или кропотливый ввод мышкой с помощью старого типа виртуальной клавиатуры. В настоящее время набирать текст быстро и удобно можно в любом интернет-кафе вне России. Для этого необходимо зайти на современные сайты Виртуальной Клавиатуры, где полностью имитируется «домашний», «системный» ввод. Здесь Вы сможете вводить данные с помощью той же раскладки (фонетической или стандартной), что и дома.
Что такое транслит, транслитерация.
Что такое транслит? Это передача текста чужим алфавитом. При транслите могут использоваться цифры и знаки, которые есть на клавиатуре. Этим он и отличается от транслитерации. Фактически это неформальная транслитерация. Русский транслит можно считать неформальной романизацией, поскольку в нем применяется латинский алфавит. В то время как в армянском транслите может использоваться и латинский алфавит, и кириллица.
Кстати, на нашем сайте вы можете выполнить транслитерацию слов с русского на английский и обратно, воспользовавшись Транслитерацией онлайн.
Слово «транслит» иногда в профессиональной речи используют вместо слова «транслитерация».
Принцип транслитерации.
В целом, транслит строится по принципу фонетических соответствий (латинских и русских букв). Довольно часто правила чтения в разных языках сочетаются. В первую очередь, конкуренция происходит между соответствиями старо-латинских транскрипций польско-немецкого толка (й→j, ц→c, ы→y, ю→ju, я→ja) и позднее усвоенных английских (ы→y, ц→ts, ч→ch, ш→sh, ю→yu, я→yа). Редко может использоваться визуальное сходство знаков (ш→III или ш→w; ч→4; я→9I; ы→bl). Однако, такой способ чаще всего считают не транслитом, а «кодировкой Волалюка». В написании заимствованные слова могут передаваться на языке оригинала. ТАБЛИЦА
Что такое транслит самп
Дополнение
- В результате транслитерации должны получаться только буквы основной латиницы
Транслитерация — точная передача знаков одной письменности знаками другой письменности.
Не путать с фонетической транскрипцией — передача звучания поощряется, но не гарантирована.
Самый низкий приоритет имеют соображения графического сходства символов. Например передача буквы ха как икс — фонетически не приемлема.
Для «легкой обратимости» кодов введем такое условие:
никакой код не должен начинаться с постфикса и не должен заканчиваться префиксом.
Это моё обобщение префиксного кода.
При соблюдении такого условия можно утверждать, что в любом фрагменте результирующей последовательности не будет длинных «ложных кодов». То есть понятно, что можно отрезать префикс или постфикс, и оставшийся базовый символ совпадет с одиночным.
Этого не избежать и это придется помнить. Но не случится такого, что кусочек составного года считается вместе с соседним одиночным символом как незапланированный составной код.
Например, пусть мы используем код «S», код «SH» и код «HH» (нарушает условие, начинается с постфикса). Тогда в последовательности «SHH» (третий и первый коды) можно выделить фрагмент «SH» (соответствует второму коду).
Для префиксов нарушение условия «легкой обратимости» не так неприятно (разница потому, разбор идет слева направо). Но тоже затрудняет восприятие «на глаз» — при беглом просмотре мы считываем слово целиком, а не последовательно, и можем «зацепиться» за случайное сочетание.
Частным следствием введенного условия является запрет на использование префикса или постфикса как одиночных символов.
Для кириллицы и латиницы постфикс — это без вариантов «H».
Префикс бывает «Y» или «J». Если использовать префикс «Y», его нельзя будет применять для передачи «Й» или «Ы». То есть для двух букв (а «Й» довольно частая) придется придумать не стандартные, далекие от фонетики, и скорее всего длинные коды.
С «J» проблем нет. Отдельно этот символ применять и не хотелось.
Получилось:
А | Б | В | Г | Д | Е | Ё | Ж | З | И | Й | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я |
A | B | V | G | D | E | JO | ZH | Z | I | Y | K | L | M | N | O | P | R | S | T | U | F | KH | C | CH | SH | SHH | JHH | IH | JH | EH | JU | JA |
Код «SHH» единственный использует постфикс длины 2. Но общая длина кода всего 3, буква редкая. Обратимость не нарушается (и даже «легкая обратимость»).
Больше ничего в стандарте трогать нет необходимости.
Код приведен только для экспериментов и наглядного описания алгоритма обратного преобразования.
Для промышленных нужд транслитерации есть соответствующие решения (хотя готового решения по требованиям 1 и 2 нет). Из промышленных стандартов транслитерация входит в Unicode Common Locale Data Repository Project (CLDR).
Есть очень мощная реализация в том числе CLDR: International Components for Unicode.
Конкретно Java-версия ICU: ICU4J.
Там есть фреймворк для описания и выполнения транслитерации (и много чего еще).
Для российской кириллицы там есть готовые реализации:
1. ISO 9. Обратимая, но с диакритами.
2. BGN. Без диакритов, но с пунктуационными знаками и необратимая.
Есть «неопределенный план» добавить ГОСТ.
Если будет время и силы разобраться, сделаю и выложу реализацию своей схемы средствами ICU4J.
Благодаря конструктивной критике в комментариях, решение изменилось. Моё понимание проблемы стало глубже. Задумался о «взрослой» реализации.
Всем спасибо! Хабр делает вещи лучше.
Алгоритм
SHirokaja ehlektrifikacija juzhnihkh guberniy dast mojshnihy tolchok podhhjemu seljhskogo khozjaystva.
Shheshjh zhe ejshje ehtikh mjagkikh francuzskikh bulok da vihpey chaju.
Aleksandr Ivanovich Lebedjh
Georgiy Konstantinovich ZHukov
Казалось бы, простая и давно решенная задача, а какой простор для творчества и обсуждений.
Если серьезно, получился рабочий алгоритм обратимой транслитерации всех букв русской кириллицы в буквы латиницы. При этом результат, со скидкой на жесткость требований, приемлемо читаем. Можно использовать для интеграции с унаследованными системами и библиотеками, для генерации идентификаторов.
Надеюсь, кому-нибудь решение покажется полезным, а путь к нему — занятным.