Уважаемые пользователи и гости форума! Доступно обновление карт Украины: Июнь-2020 для Нави-Мапс и СитиГИД.
Карты можно обновить как через саму программу навигации = Карты - Обновить,
так и скачать атлас карт в архиве в разделе Загрузок (Скачать карты, программы)
Также выпущены карты cgnet для версии СитиГИД 7.9.0.236 под операционку WinCE 6.0 - подробнее читайте на форуме


Продолжаются работы по улучшению форума. Возможны перерывы во время обновления кода движка форума.

Подскажите утилиту для транслита. UPD: Найдено!

Редакторы и утилиты - предложения разработчиков

Модераторы: OldMan, alx69, Vadim_O, Mechanic, Alex1802, PivoOdessa

Ответить
Сообщение
Автор
Eclogyte
Сообщения: 7
Зарегистрирован: 07 авг 2010, 16:12

Подскажите утилиту для транслита. UPD: Найдено!

#1 Сообщение Eclogyte » 09 сен 2010, 13:34

Нужна утилита или скрипт, умеющий следующее.
  • Умеющий выполнять замену по определённому образцу с применением регэкспов. Например, дописать в начало или конец каждого слова какой-нибудь фрагмент.

    Конкретнее: в файле карты в польском формате, в каждой строке, начинающейся с "Label=", нужно заменить каждое слово на такое же с "|1|" в начале и с "|0|" в конце слова (без кавычек).
  • Выполняющий собственно транслитерацию по определяемым пользователем правилам. Один исходный символ соответствует одному результирующему. - неактуально, но если будет - то хорошо
Разумеется, также сойдут два скрипта с разными функциями.

Цель всего этого - русификация карт к Лоуренсу. Последний умеет показывать русские надписи, но хранит их в хитром транслите, в ASCII (а шо ви хотели - это ж американцы!).


ДОВЕСОК от 17.09.2010: обновил сообщение.

ДОВЕСОК 2: решение найдено! См. в теме.
Последний раз редактировалось Eclogyte 17 сен 2010, 15:58, всего редактировалось 3 раза.

Юрбас
интересующийся
Сообщения: 35
Зарегистрирован: 18 окт 2008, 11:01
Откуда: 32 RUS
Контактная информация:

Re: Подскажите утилиту для транслита

#2 Сообщение Юрбас » 16 сен 2010, 02:47

Microsoft Word?
Где начало того конца, которым кончается начало?
Изображение

Eclogyte
Сообщения: 7
Зарегистрирован: 07 авг 2010, 16:12

Re: Подскажите утилиту для транслита

#3 Сообщение Eclogyte » 16 сен 2010, 08:25

Замена 35 раз в 40-мегабайтном текстовом файле в Ворде? Интересная мысль :-). Причём если не найдётся скрипта на Перле или Питоне, то придётся так и поступить.

Но отложу этот вариант для худших времён.

eugene_za
Активный форумчанин
Сообщения: 1053
Зарегистрирован: 14 апр 2008, 12:21
Откуда: Киев
Контактная информация:

Re: Подскажите утилиту для транслита

#4 Сообщение eugene_za » 17 сен 2010, 13:34

Как-то давным давно была хорошая программа "Штирлиц".
Описание:
Штирлиц программа расшифровывает русские тексты, написанные в различных кодировках (Win-1251, KOI-8r, DOS, ISO-8859-5, MAC и др.) Все русские кодовые страницы и их комбинации, многочисленные способы транслитерации, HTML, RTF, Unicode, UTF (7,8, порченный 8), Quoted printable, base 64, binhex, uuencode, xxencode, BtoA, ручное декодирование, просмотрщик буфера обмена, декодер буфера обмена, горячая клавиша для декодирования текста в стандартном окне редактирования других приложений, пакетное перекодирование, многодокументный интерфейс,инсталлятор-деинсталлятор, печать RTF и многое другое...
Ссылка на версию 4.01 - http://softsearch.ru/programs/180-405-s ... load.shtml
Может и свежее есть.

Eclogyte
Сообщения: 7
Зарегистрирован: 07 авг 2010, 16:12

Re: Подскажите утилиту для транслита

#5 Сообщение Eclogyte » 17 сен 2010, 13:49

"Штирлица" буду иметь в виду, благ-за-ин. Но вот второй пункт не выполняется, хотя он, пожалуй, даже более важен по сравнению с транслитерацией. Да и необходимость загрузки файла - не комильфо.

Сейчас обновлю заглавное сообщение.

Eclogyte
Сообщения: 7
Зарегистрирован: 07 авг 2010, 16:12

Re: Подскажите утилиту для транслита

#6 Сообщение Eclogyte » 17 сен 2010, 15:56

Решение найдено! Сейчас оно допиливается в виде спешного изучения редактора sed :-). Состоит в том, что файл с картой прогоняется через две команды, одна из которых добавляет к каждому слову из строчки Label нужные 0 и 1, а вторая - удаляет последний 0.

Первая команда: sed -e '/Label=/ s/[^ =-]\+/|1|&|0|/g' -e 's/|1|Label|0|/Label/g' source.mp > almost_result.mp,

где source.mp - Ваш файл с картой, а almost_result.mp - соответственно, результат. Фактически, здесь две команды sed в одной строчке, но это уже детали.

Вторая:

sed -e '/Label=/ s/|0|$//' almost_result.mp > result.mp

Конечно, это можно слепить в один скрипт, но так нагляднее.


Транслитерация будет производиться на втором этапе. Пока для неё используется mpUtilities (http://travelgps.com.ua/forum/viewtopic ... 327#p10327), и для её выполнения по-прежнему ищется скрипт. Предпочтительнее на Перле, Питоне или тех же sed, awk или шелле.

Ответить

Вернуться в «Утилиты и редакторы для создания хороших правильных карт»