Новости Энциклопедия переводчика Блоги Авторский дневник Форум Работа

Декларация Поиск О нас пишут Награды Читальня Конкурсы Опросы








ГП-цитатник

Конвертация таблиц в формат DSL

Конвертация таблиц в формат DSL

Сообщение Denis Kazakov » Сб фев 14, 2009 19:50

Суть проблемы.

В принципе сделать словарь в формате DSL я могу, но на это уходит много времени. Если глоссарий потом меняться не будет, то это не так страшно. Однако заказчики часто присылают свои глоссарии под конкретные проекты. Глоссарии периодически обновляются. Свои глоссарии я тоже постоянно пополняю. Все это обычно существует в виде таблиц (Word или Excel). Глоссарии обычно простые: слово, перевод, примечания.

В Мультитране в теории все просто: копируешь таблицу прямо в программу, но на практике возникают глюки. В Лингво все получается без них, но требует много времени.

Есть ли какой-то способ автоматизировать конвертацию таблиц (Word или Excel) в формат DSL?
"Нам, представителям среднего класса, кроме правильного произношения, терять нечего". Дж. Оруэлл
Аватара пользователя
Denis Kazakov

 
Сообщения: 8852
Зарегистрирован: Вс окт 24, 2004 22:35
Откуда: Ближний Восток (10 км от МКАД)
Язык(-и): русский-английский





Re: Конвертация таблиц в формат DSL

Сообщение Юрий В. » Сб фев 14, 2009 19:52

Есть Мультитерм (удобно, если работать в Традосе). Есть Xbench (удобно для любой CAT и редактора).
Аватара пользователя
Юрий В.

 
Сообщения: 7788
Зарегистрирован: Чт окт 19, 2006 15:42
Откуда: Moscow (499) 608-56-20
Блог: Просмотр блога (6)
Язык(-и): англ>рус

Re: Конвертация таблиц в формат DSL

Сообщение Vic » Сб фев 14, 2009 20:08

Денис, я работаю с Мультитерм 5.5. Очень просто преобразовать из Ворда или xls в файл, необходимый для создания словаря. И, соответственно, если в в глоссарий добавляется дополнительные позиции, можно либо вручную каждый термин ввести в МТ, либо, когда набралось несколько терминов, та же самая процедура - импортировать как выше.
Vic

 
Сообщения: 1972
Зарегистрирован: Вт дек 16, 2003 13:40
Откуда: Москва

Re: Конвертация таблиц в формат DSL

Сообщение Denis Kazakov » Сб фев 14, 2009 20:53

Мультитерм - это часть Традоса?

Юрий В. писал(а):Есть Xbench

А это где берут?
"Нам, представителям среднего класса, кроме правильного произношения, терять нечего". Дж. Оруэлл
Аватара пользователя
Denis Kazakov

 
Сообщения: 8852
Зарегистрирован: Вс окт 24, 2004 22:35
Откуда: Ближний Восток (10 км от МКАД)
Язык(-и): русский-английский

Re: Конвертация таблиц в формат DSL

Сообщение Юрий В. » Сб фев 14, 2009 20:55

Аватара пользователя
Юрий В.

 
Сообщения: 7788
Зарегистрирован: Чт окт 19, 2006 15:42
Откуда: Moscow (499) 608-56-20
Блог: Просмотр блога (6)
Язык(-и): англ>рус

Re: Конвертация таблиц в формат DSL

Сообщение Denis Kazakov » Сб фев 14, 2009 21:07

Ок, изучим.
"Нам, представителям среднего класса, кроме правильного произношения, терять нечего". Дж. Оруэлл
Аватара пользователя
Denis Kazakov

 
Сообщения: 8852
Зарегистрирован: Вс окт 24, 2004 22:35
Откуда: Ближний Восток (10 км от МКАД)
Язык(-и): русский-английский

Re: Конвертация таблиц в формат DSL

Сообщение Denis Kazakov » Сб фев 14, 2009 21:30

У словарей в формате Лингво, однако, есть преимущество: их можно загрузить на КПК.
"Нам, представителям среднего класса, кроме правильного произношения, терять нечего". Дж. Оруэлл
Аватара пользователя
Denis Kazakov

 
Сообщения: 8852
Зарегистрирован: Вс окт 24, 2004 22:35
Откуда: Ближний Восток (10 км от МКАД)
Язык(-и): русский-английский

Re: Конвертация таблиц в формат DSL

Сообщение Юрий В. » Сб фев 14, 2009 21:45

Есть скрипты по их подготовке из формата word. Ну и форум руборды.
Аватара пользователя
Юрий В.

 
Сообщения: 7788
Зарегистрирован: Чт окт 19, 2006 15:42
Откуда: Moscow (499) 608-56-20
Блог: Просмотр блога (6)
Язык(-и): англ>рус

Re: Конвертация таблиц в формат DSL

Сообщение mikhailo » Сб фев 14, 2009 22:53

Денис
Проблем с Лв никаких и времени не нужно. Из экселя копируете в таблицу в любой текстовый редактор с поддержкой регексов и заменяете таб на новая строка + таб. Добавляете название в формате DSL, сохраняете в юникоде с раширением dsl и конвертите в Лингву с опцией добавления разметки.
Any man who is under 30, and is not a liberal, has not heart; and any man who is over 30, and is not a conservative, has no brains. - Sir Winston Churchill
mikhailo

 
Сообщения: 3880
Зарегистрирован: Пн июл 12, 2004 07:22
Язык(-и): EN,DE,IT>RU; СУРДОПЕРЕВОД

Re: Конвертация таблиц в формат DSL

Сообщение Denis Kazakov » Сб фев 14, 2009 22:57

Юрий В. писал(а):Есть скрипты по их подготовке из формата word.

Их то, наверное, я и ищу.

Юрий В. писал(а):Ну и форум руборды.

Пока там не был. Схожу.

mikhailo, про регексы слышу первый раз. Извините. С тремя колонками (слово, перевод, примечания) такой фокус пройдет?
"Нам, представителям среднего класса, кроме правильного произношения, терять нечего". Дж. Оруэлл
Аватара пользователя
Denis Kazakov

 
Сообщения: 8852
Зарегистрирован: Вс окт 24, 2004 22:35
Откуда: Ближний Восток (10 км от МКАД)
Язык(-и): русский-английский

Re: Конвертация таблиц в формат DSL

Сообщение mikegor » Вс фев 15, 2009 13:18

Без проблем. Я обычно для таких дел пишу скрипты на Perl. Кто не умеет программировать, тот может запросто сделать это в Ворде поиском и заменой с использованием подстановочных знаков (они же регексы, т.е. регулярные выражения). Можете выложить примерчик файла, а мы вам напишем примерчик того, как его перелопатить в Ворде и получить DSL.
An Arbeitsplätzen kann es laut zugehen. Verlassen Sie sich nicht auf verbale Kommunikation!
Аватара пользователя
mikegor

 
Сообщения: 2334
Зарегистрирован: Пт дек 02, 2005 20:47
Откуда: Moscow
Язык(-и): нем-рус,дат-рус

Re: Конвертация таблиц в формат DSL

Сообщение Denis Kazakov » Вс фев 15, 2009 16:44

mikegor, вот тестовая таблица (text1.xls) с четырьмя колонками: слово, перевод, пример (определение, пояснения), комментарий.
Пока самое быстрое, что я могу сделать - это 1) повставлять колонки, заполненные тегами и разделителями, 2) сохранить как текст с разделителями в виде знаков табуляции, 3) открыть в Ворде и с помощью макроса с автозаменами получить почти готовый файл - text2.dsl (осталось только добавить заголовок в начало).
test.rar
(4.75 КБ) Скачиваний: 387
"Нам, представителям среднего класса, кроме правильного произношения, терять нечего". Дж. Оруэлл
Аватара пользователя
Denis Kazakov

 
Сообщения: 8852
Зарегистрирован: Вс окт 24, 2004 22:35
Откуда: Ближний Восток (10 км от МКАД)
Язык(-и): русский-английский

Re: Конвертация таблиц в формат DSL

Сообщение mikegor » Вс фев 15, 2009 19:13

http://slil.ru/26646903
Вот я быстренько набросал программку, которая делает все то же самое.
Пусть есть файл test1.txt (текст с разделитями в виде символов табуляции).
Тогда в командной строке пишем:
txt2dsl.exe test1
и получаем файл test1.dsl, идентичный вашему test2.dsl. Единственное различие, что он не в Юникоде (на Перле я могу и Юникод записать, но такой скрипт по техническим причинам не удается конвертировать в exe). Далее открываем test1.dsl в Блокноте (если ОС русская) или в Ворде с указанием кириллической кодировки (в любой локализации ОС) и сохраняем в Юникоде.
An Arbeitsplätzen kann es laut zugehen. Verlassen Sie sich nicht auf verbale Kommunikation!
Аватара пользователя
mikegor

 
Сообщения: 2334
Зарегистрирован: Пт дек 02, 2005 20:47
Откуда: Moscow
Язык(-и): нем-рус,дат-рус

Re: Конвертация таблиц в формат DSL

Сообщение mikhailo » Вс фев 15, 2009 19:25

Денис - чтобы получить то, что в таблице ума совсем немного надо.

1. В столбец 5 формулу =ЕСЛИ(B1<>"";СЦЕПИТЬ("[m1][trn]";B1;"[/trn][/m]");"")
2. В столбец 6 формулу =ЕСЛИ(C1<>"";СЦЕПИТЬ("[m2][ex]",C1,"[/ex][/m]");"")
3. В столбец 7 формулу =ЕСЛИ(D1<>"";СЦЕПИТЬ("[m2][com]",D1,"[/com][/m]");"")

Размножаете их на весь словарь. Выделяете всё - Копировать -спец_вставка -значения. Удаляем BCD столбцы. Все выделяем, копируем в например Emeditor

Find/Replace
F:\t+$
R:(nothing)
with Use reg ex checked (удаляем лишние табы в конце строк)

Затем

F:\t
R:\n\t
with Use reg ex checked

Добавляете заголовок, созхраняете с раширением dsl в Unicode и компилируете.

Формулы можете сохранить для будущих словарей в таком формате.
Any man who is under 30, and is not a liberal, has not heart; and any man who is over 30, and is not a conservative, has no brains. - Sir Winston Churchill
mikhailo

 
Сообщения: 3880
Зарегистрирован: Пн июл 12, 2004 07:22
Язык(-и): EN,DE,IT>RU; СУРДОПЕРЕВОД

Re: Конвертация таблиц в формат DSL

Сообщение Denis Kazakov » Вс фев 15, 2009 22:52

mikhailo, ловкий фокус. Логическими формулами в Экселе раньше никогда не пользовался. Он, правда, не срабатывает, когда 3-я или 4-я колонки пустые (так бывает). Наверное, эту проблему можно решить с помощью более хитрой логики.

С Emeditor-ом пока не сталкивался. Судя по всему, он делает то же самое, что и мой неказистый макрос (который я, кстати, написал, вдохновшись рассказами про регексы).
"Нам, представителям среднего класса, кроме правильного произношения, терять нечего". Дж. Оруэлл
Аватара пользователя
Denis Kazakov

 
Сообщения: 8852
Зарегистрирован: Вс окт 24, 2004 22:35
Откуда: Ближний Восток (10 км от МКАД)
Язык(-и): русский-английский

Re: Конвертация таблиц в формат DSL

Сообщение mikhailo » Вс фев 15, 2009 23:16

Денис просто в формуле 2 и 3 ошибки - запятые вместо точки с запятой
Any man who is under 30, and is not a liberal, has not heart; and any man who is over 30, and is not a conservative, has no brains. - Sir Winston Churchill
mikhailo

 
Сообщения: 3880
Зарегистрирован: Пн июл 12, 2004 07:22
Язык(-и): EN,DE,IT>RU; СУРДОПЕРЕВОД

Re: Конвертация таблиц в формат DSL

Сообщение Denis Kazakov » Пн фев 16, 2009 00:15

mikhailo писал(а):Денис просто в формуле 2 и 3 ошибки - запятые вместо точки с запятой

Это я заметил. Я сам еще чего-то не так сделал. Теперь работает. Спасибо! Спрашивал на формумах Мультитрана и Лингво, но никто ничего вразумительного не сказал.
"Нам, представителям среднего класса, кроме правильного произношения, терять нечего". Дж. Оруэлл
Аватара пользователя
Denis Kazakov

 
Сообщения: 8852
Зарегистрирован: Вс окт 24, 2004 22:35
Откуда: Ближний Восток (10 км от МКАД)
Язык(-и): русский-английский

Re: Конвертация таблиц в формат DSL

Сообщение mikhailo » Пн фев 16, 2009 09:44

Такие вещи надо на руборде в топике по конвертации словарей в Лингво спрашивать. Настоящие профессионалы там.
Any man who is under 30, and is not a liberal, has not heart; and any man who is over 30, and is not a conservative, has no brains. - Sir Winston Churchill
mikhailo

 
Сообщения: 3880
Зарегистрирован: Пн июл 12, 2004 07:22
Язык(-и): EN,DE,IT>RU; СУРДОПЕРЕВОД

Re: Конвертация таблиц в формат DSL

Сообщение Denis Kazakov » Пн фев 16, 2009 20:01

mikegor писал(а):Вот я быстренько набросал программку, которая делает все то же самое.

Как это я сразу не заметил Ваше сообщение. Обычно все вижу. Работает программка! Конвертирует :) Спасибо огромное!

mikhailo писал(а):Такие вещи надо на руборде в топике по конвертации словарей в Лингво спрашивать.

Боюсь, тапками закидают. К тому же mikegor уже программу написал. И Ваш метод тоже очень хороший, т.к. я его могу адаптировать под свои нужды (другое кол-во и содержание колонок) без спец. знаний.
"Нам, представителям среднего класса, кроме правильного произношения, терять нечего". Дж. Оруэлл
Аватара пользователя
Denis Kazakov

 
Сообщения: 8852
Зарегистрирован: Вс окт 24, 2004 22:35
Откуда: Ближний Восток (10 км от МКАД)
Язык(-и): русский-английский

Re: Конвертация таблиц в формат DSL

Сообщение mikegor » Пн фев 16, 2009 21:18

Denis Kazakov писал(а):Работает программка! Конвертирует :)

А если надо добавить что-нибудь (там, еще одну колонку и т.д.), скажите, я доработаю программку. Это очень просто делается.
Denis Kazakov писал(а):Боюсь, тапками закидают.

На самом деле, руборд форум очень большой. Там, как правило, и справшивать ничего не надо. Достаточно походить и послушать людей.
An Arbeitsplätzen kann es laut zugehen. Verlassen Sie sich nicht auf verbale Kommunikation!
Аватара пользователя
mikegor

 
Сообщения: 2334
Зарегистрирован: Пт дек 02, 2005 20:47
Откуда: Moscow
Язык(-и): нем-рус,дат-рус

След.


Словари русского языка

www.gramota.ru
Словарь Мультитран
Язык

Вернуться в Полезное программное обеспечение. Аллея Бродяги

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14