Главное меню
Мы солидарны с Украиной. Узнайте здесь, как можно поддержать Украину.

Программа для транслитерации текста по шаблону

Автор Ksardas, июля 15, 2015, 02:02

0 Пользователи и 1 гость просматривают эту тему.

Ksardas

 :down: :down: ;up:Для себя написал небольшую программку для транслитерации текста.
Назвал TeKo (Teksta Konverto), т.к. использую для добавления диакритики в тексты на Эсперанто и транслит. русского в английский.
Первая версия программы TeKo 1.0
Она заметно упрощает процесс конвертирования готовых текстов.
Можно загружать уже набранные тексты и сохранять результат.
Системные требования – наличие .NET Framework 2.0 и старше.

Вот ссылка на архив. https://yadi.sk/d/Iqgr-KNBhsPxC
В нем сама программа, 2 шаблона (эсперанто и транслит рус>англ) и небольшая справка (в PDF).
Принимаю на почту (указана в справке) и тут любые отзывы, критику, идеи...
Скриншот-пример:


P.S. Почему-то не получилось создать тему в "Проекты письменностей и транслитераций"...

Тайльнемер

Очень полезная вещь. Я тоже хотел себе сделать, но так и не решил, что именно я хочу.
Простая замена не очень интересна. Я хотел сделать немного более сложный язык для описания правил, чтобы можно было описывать разные системы транслитерации.
Вот пример файла правил из моего черновика (это система транслитерации Воллигера Менша):
Цитировать[C]
[bC]
  б в г д з к л м н п р с т ф х
  b v g d z k l m n p r s t f x
[hC]
  ж  ц  ш
  zh c sh
[sC]
  й  ч  щ
  j ch sch
[V]
[hV]
  у о а э ы ъ
  u o a e y _
[sV]
  ю ё я е и ь
  u o a e y _
{
_

[V][sV]  [V]j[sV]
[bC][sV] [bC]i[sV]
[sC][V]  [sC]i[V]
Здесь транслитерируемые буквы делятся на согласные [C] и гласные [V]. Согласные — на всегда твёрдые [hC], всегда мягкие [sC] и способные быть твёрдыми и мягкими [bC]. Гласные — на несмягчающие [hV] и смягчающие [sV].
Идея была в том, что правила транситерации применяются как к отдельным буквам, так и к их группам.

Ksardas

Цитата: Тайльнемер от июля 18, 2015, 17:41
Очень полезная вещь. Я тоже хотел себе сделать, но так и не решил, что именно я хочу.
Простая замена не очень интересна. Я хотел сделать немного более сложный язык для описания правил, чтобы можно было описывать разные системы транслитерации.
Вот пример файла правил из моего черновика (это система транслитерации Воллигера Менша):
Цитировать[C]
[bC]
  б в г д з к л м н п р с т ф х
  b v g d z k l m n p r s t f x
[hC]
  ж  ц  ш
  zh c sh
[sC]
  й  ч  щ
  j ch sch
[V]
[hV]
  у о а э ы ъ
  u o a e y _
[sV]
  ю ё я е и ь
  u o a e y _
{
_

[V][sV]  [V]j[sV]
[bC][sV] [bC]i[sV]
[sC][V]  [sC]i[V]
Здесь транслитерируемые буквы делятся на согласные [C] и гласные [V]. Согласные — на всегда твёрдые [hC], всегда мягкие [sC] и способные быть твёрдыми и мягкими [bC]. Гласные — на несмягчающие [hV] и смягчающие [sV].
Идея была в том, что правила транситерации применяются как к отдельным буквам, так и к их группам.

Хм. Это да, было бы интересно осуществить. Но думаю, большинству хотелось бы просто заменять букву на букву.
Если "извращаться", то можно в моей программе забить нужные комбинации. Если я правильно понял суть идеи.

А нет ли примера текста ДО и ПОСЛЕ?

Bhudh

Цитата: Тайльнемер от июля 18, 2015, 17:41Простая замена не очень интересна. Я хотел сделать немного более сложный язык для описания правил, чтобы можно было описывать разные системы транслитерации.
Попробуйте в SCA².
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

arseniiv

Или ASCA (из интернетов, кажется, пропала — ссылка на пересобранный мной архив) (нужна Java не помню какой версии) от Саманты Маккейб (сейчас она делает улучшенную SCA, пока не совсем готовую). Впрочем, я Тайльнемеру уже посылал этот архив, кажется — но то лишь ему.

Bhudh

Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

arseniiv

Неа, это улучшенная SCA того же автора! Самая первая, что ли, вообще. И браузерность не всегда удобна — скрипт не напишешь автоматический, например.

Bhudh

Смотря какой скрипт.
(Вообще, выражение «скрипт не напишешь» в отношении скриптового языка звучит оксюморонно :).)
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

arseniiv

Конечно же, я имел в виду скрипт, вызываемый как программа из своей операционной системы, и которому можно передать файлы. Сейчас браузеры аккуратно не дают JS делать что-то с произвольными файлами — даже для TiddlyWiki авторам пришлось дополнение написать, чтобы сохраняемость появилась. :)

Спору нет, на AutoHotkey и аналогах, наверное, можно написать скрипт, запускающий SCA² в браузере, тыкающий мышкой по полям и заполняющий их текстом, и потом копирующий вывод, когда тот появится, куда-нибудь — но это дооооолгоооо...

Bhudh

А JavaScript не умеет «тыкать мышкой по полям и заполнять их текстом»? :what:
Кто мешает полученный результат использовать ещё раз?
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

arseniiv

Цитата: Bhudh от апреля  7, 2016, 20:02
А JavaScript не умеет «тыкать мышкой по полям и заполнять их текстом»? :what:
Тогда это будет писанина не на одном языке, а на двух — возможно, хуже. Одним JS обойтись не удастся. Ну, может быть, node.js позволит что-то из того, что браузерный JS не сможет, не знаю. Кому как, я не настаиваю против SCA².

Bhudh

Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

arseniiv

Не, ещё на сопрягающем GUI с вводом из файлов с текстом и результатом. Например,

Код (какой-нибудь .bat) Выделить
java -jar "C:\Program Files\asca\ASCA.jar" -f in.txt -o out.txt -r rules2.txt  --diff

Bhudh

Чё-то я не понял. Я предложил вывод SCA² всунуть в ввод SCA². Простой строчкой
sca_input.value = sca_output.value;
     и столько раз, сколько нужно. Батник-то к чему?
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

arseniiv

Вводить из файла, не копируя. Может, это вывод другой программы будет. И ввод для третьей. Или мне просто неудобно смотреть на вывод из поля текстового в браузере. ::)

arseniiv


Bhudh

Чтобы обработать результат ещё раз. Другими правилами, к примеру.
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

arseniiv

А, тогда их надо будет тоже засунуть в код на JS. Нерасширяемо-то как!

Быстрый ответ

Обратите внимание: данное сообщение не будет отображаться, пока модератор не одобрит его.

Имя:
Имейл:
Проверка:
Оставьте это поле пустым:
Наберите символы, которые изображены на картинке
Прослушать / Запросить другое изображение

Наберите символы, которые изображены на картинке:

√36:
ALT+S — отправить
ALT+P — предварительный просмотр