воскресенье, 29 декабря 2013 г.

Чертежи AutoCAD, OmegaT и GNU/Linux

Друзья!

Сегодня я выпил пивка по случаю успешного сражения с чертежами, коих у меня было 80 шт. Форматом чертежей был DWG 2004-2006

Итак, исходные данные: Ubuntu 13.10, wine, mono, draftsight.

Алгоритм следующий.

1. Сохраняем иcходные файлы в формате dxf R2000-2002 ASCII

Выполнить эту операцию мне пришлось 80 раз. А шо делаць, ибо касательно пакетного пересохранения я ничего не могу сказать хорошего.

2. На сайте Englishhelp.ru скачиваем программу dxf2txt. Кстати говоря, огромное спасибо автору этой чудесной программулины, ибо полезна она весьма!

3. Для того, чтобы облегчить себе задачу, воспользуемся командной строкой:
1) открываем терминал;
2) переходим в папку, где лежат наши файлы cd /home/chyvak/papka_s_DXF;
3) просим перечислить содержимое: ls;
4) копируем имена наших DXF-файлов;
5) ура(!);
6) терминал не закрываем.

4. Распаковываем скачанный архивчик в папку с нашими DXF-файлами.

5. В ранее незакрытом терминале (либо в новом, после команды cd /home/chyvak/papka_s_DXF) командуем вытащить текст из DXF: wine dxf2txt file1.dxf file2.dxf

6. В результате, в папке papka_s_DXF появятся TXT-файлы, одноименные с DXF-файлами.

7. Кодировкой этих файлов является ANSI, что не очень удобно, ибо кириллица выглядит очень красиво, но совсем не понятно, а нам это все переводить! Для того, чтобы спасти отца русской демократии необходимо сменить кодировку на UTF. Для этого воспользуемся программой UTFCast Express Запускается она из терминала аналогично dxf2txt, т. е. командой wine 'home/put/k/programme/utfcast.exe'. Использование программы интуитивно понятно, поэтому останавливаться в этой статье на ней не буду.

8. Перекодированные файлы переводим в какой-нибудь кошке. Я использовал OmegaT. Единственное замечание, необходимо настроить файловый фильтр для удобной сегментации.
9. Переведенные txt-файлы необходимо снова перекодировать из UTF в ANSI. Тут нам поможет программа Unicode2Ansi. Запускается она в среде mono, ибо написана для .NET, что есть зло: mono 'home/put/k/programme/unicode2ansi_rus.exe'. Эта программа немного испортила имена файлов, зачем-то добавив имя папки к имени файла (пришлось править вручную; думаю, в винде такой проблемы не будет), но с задачей справилась. Использование программы также было интуитивно понятным.

10. Перекодированные TXT-файлы кладем к нашим DXF-файлам. В терминале переходим в папку с DXF cd /home/chyvak/papka_s_DXF b командуем поместить наш переведенный текст на место  wine txt2dxf file1.dxf file2.dxf

11. Открываем наши DXF-файлы, просматриваем, получаем удовольствие, и сохраняем, как нам надо :-)

12. Профит!

Update: Спасибо г-ну Dimitry Prihodko за его программерство и получившийся ништяк!

среда, 20 ноября 2013 г.

Создание DSL-словаря из табулированного глоссария или таблицы MS Excel/LibreOffice Calc

Для начала создаем табулированный глоссарий, если у нас глоссарий представлен в табличном виде. Для этого выделяем ячейки, копируем и вставляем в текстовый редактор (Gedit, MS Notepad).

Затем переходим к собственно созданию словаря.

Итак, структура DSL-словаря следующая:

#NAME "Nazvanie, otobrazaemoe v slovarnoy obolochke"
#INDEX_LANGUAGE "Yazyk originala"
#CONTENTS_LANGUAGE "Yazyk perevoda"

TERMIN{перевод строки}
{табуляция}ПЕРЕВОД{перевод строки}
TERMIN{перевод строки}
{табуляция}ПЕРЕВОД{перевод строки}

.....

Это все безобразие должно быть создано в формате Unicode в любом текстовом редакторе (Gedit, MS Notepad) и сохранено с расширением dsl.

Очевидно, что каждый раз вставлять перевод строки не очень удобно.

Можно воспользоваться следующим способом:

1. Скопировать текст в LibreOffice Writer.
2. C помощью функции "Поиск и замена" заменить \t на \n\t, предварительно установив флажок "Регулярные выражения" в разворачивающемся списке на той же вкладки.
3. Добавить шапку, как показано выше.
4. Сохранить в формате Unicode с расширением dsl.
5. Пrofiт.

Если используется MS Word, то алгоритм аналогичен, только сами заклинания несколько отличаются:

1. Скопировать текст в MS Word.
2. C помощью функции "Поиск и замена" заменить ^t на ^p^t.
3. Добавить шапку, как показано выше.
4. Сохранить в формате Unicode с расширением dsl.
5. Пrofiт.

После этих действий получившийся словарь можно подключить к Goldendict или скомпилировать в .lsd и использовать с Lingvo.

четверг, 20 июня 2013 г.

Извлечение терминологии. wordTabulator

Необыкновенно полезная программа, предназначенная для извлечения терминологии. Она хоть и разработана под WIndows, тем не менее, замечательно работает в WINE, прекрасно справляясь со своей задачей. В качестве форматов исходных файлов использует txt и html.
Программа очень проста и понятна.
В результате работы программы в отдельном окне создается таблица извлеченных терминов и число их повторений. На основе этой таблицы можно составить глоссарий.

Радует удобство интерфейса и скорость работы программы. Скачать и узнать более подробные сведения о программе можно здесь.

суббота, 13 апреля 2013 г.

Проверка Ubuntu 13.04

Проверил... На первый взгляд - отличный релиз! Скорость возросла в разы! Мой комп просто летает!!!

Свистопляска была только со скайпом, но такая незначительная, что о ней напишу позже :-)

Gwibber отсутствует, ну шут с ним, есть линза, его частично заменяющая.

Blogilo с Blogger'ом работает все так же, как я рассказывал для Ubuntu 12.10

Megogo в XBMC работает на ура, что не может не радовать!

Буду тестировать дальше

=-=-=-=-=
Powered by Blogilo

воскресенье, 7 апреля 2013 г.

Workaholic. Дайте отдохнуть своим глазам!

Нередки случаи, когда работы так много, а сделать ее нужно позавчера очень быстро? Сидишь и работаешь, нажимаешь кнопки, таращишь в монитор иссохшиеся кровоточащие глазки? И мыслишки в голове: «Вот, сейчас, еще чуть-чуть и будет почти уже совсем, практически, совсем ничего не осталось или почти все уже!» не дают тебе спокойно встать и сделать пару наклонов, приседаний и пр. полезных вещей?
Поздравляю! Ты работоголик, по крайней мере, в такие минуты.
Вот, так сказать, примерная униформа для таких случаев:

Для того, чтобы заставлять работоголиков отвлекаться от этой бесовской машины под названием «персональный компьютер», была придумана программа Workaholic
Запуск программы означает запуск обратного таймера до отображения вот такого экрана (при запуске никакого «свистопердельного» события не происходит):

Этот экран блокирует все ваши открытые замечательные программы с интервалом 1 час на 5 минут. Есть возможность сделать перерыв, отложить его на 5 или 10 минут, либо пропустить перерыв.
Это прекрасно! Что еще нужно?
Установка в Ubuntu очень проста! Качаем пакет и устанавливаем посредством двойного щелчка мыши, ввода пароля и прослушивания какой-либо мелодии на ваш вкус.
Вот и все! Пользуйтесь, и следите за здоровьем!
ЗЫ Под виндовс есть аналог sye timer

суббота, 23 марта 2013 г.

Blogilo + blogger + ubuntu 12.10

Вести свой блог я начал относительно недавно, но уже стал ощущать всю прелесть этого занятия. Мне захотелось использовать для блоггинга какое-нибудь специализированное ПО.

Мой выбор пал на Blogilo. В ходе танцев с бубном настройки выяснилось, что стандартная версия (4.9.5) из репозиториев Ubuntu 12.10 публиковать записи отказывалась. Пришлось искать предыдущую версию, которая была бы лишена этого недостатка. Здесь я нашел, скачал, установил Blogilo версии 4.4.6 и заблокировал этот пакет, используя Synaptic.

Итак, после этого можно перейти собственно к подготовке Blogilo к работе с платформой Blogger.

Для этого в настройках открываем окно «Изменить параметры блога», где вводим следующее.

На вкладке «Основное»:

  • в поле «Заголовок» вписываем локальное название блога (это не собственно название блога, которое вы указали при его регистрации);
  • в поле «Адрес блога/домашней страницы» вводим адрес вида:

http://www.blogger.com/blogger.g?blogID=1234567890987654321

  • в поле «Пользователь» вводим адрес электронной почты, указанный при регистрации;
  • в поле «Пароль» вводим, сколько литров пива мы недопили на этой неделе пароль.

На вкладке «Дополнительно»:

  • в выпадающем списке «API» выбираем «Blogspot.com»;
  • в поле «ID блога» вводим цифры, указанные в поле «Адрес блога/домашней страницы» на вкладке «Основное» в конце адреса http://www.blogger.com/blogger.g?blogID=1234567890987654321

Сохраняем, закрываем окошко и пользуемся.

На этом настройка заканчивается и Blogilo готов к работе.

=-=-=-=-=
Powered by Blogilo

Индикатор Caps Lock, Num Lock, Scroll Lock на панели Unity

Купил себе на днях такой комплект беспроводной клавиатуры с мышью под маркой Logitech.

http://www.logitech.com/assets/38279/wireless-combo-mk220-dark-grey-emea-glamour-image-lg.png

Ну, вот, что тут можно сказать:

  • удобно, что и мышь, и клавиатура работают от одного USB-датчика, следовательно, на один свободный USB-порт становится больше, что есть добро;
  • нравится, что клавиатура занимает мало места, но при этом обладает всеми нужными функциями;
  • огорчает, что не предусмотрена световая сигнализация режимов CapsLock, NumLock, ScrollLock.



Именно о последнем выводе далее и пойдет речь.
Видимо, не один я озадачился этим. Среди многих других людей, столкнувшихся с подобной проблемой и пользующихся Ubuntu, к счастью, оказался г-н T. Scott Barnes, который создал индикатор режимов CapsLock, NumLock, ScrollLock.

Проще это сделать, открыв терминал (Ctrl+Alt+T) и введя последовательно следующие команды:

sudo add-apt-repository ppa:tsbarnes/indicator-keylock
sudo apt-get update
sudo apt-get install indicator-keylock


Уверен, что пароль суперпользователя вы помните и все пройдет успешно.

indicator-chars: вставка специальных символов на панели Unity

Начну с того, что необходимость в наличии инструмента быстрой вставки специальных символов для переводчика очевидна. Например, при работе в OmegaT возникает необходимость вставки, например, неразрывных пробелов, или таких символов как «, », ·, ×, —, Ø, °, ÷, ±, и пр.

Есть, разумеется, какой-то способ ввода этих символов через задни.. с использованием кодировки при нажатии какой-то там хитрой клавиши, удерживая в памяти код каждого из нужных символов. Однако, этот способ не для меня, поскольку я стремлюсь к максимальному упрощению рабочего процесса.

Итак, в Gnome 2 я использовал апплет «Касса символов» (Character Palette), но после выхода Unity и общего перехода на Gnоme 3 эта возможность исчезла. Но, как известно, мир не без добрых людей и свято место пусто не бывает. Нашелся умелец по имени Tobias Schlitt, который создал для панели Unity индикатор indicator-chars, дающий эту самую возможность, за что ему огромное спасибо!

Да простят меня красноглазые гуру командной строки и прочих linux-way догматов, но дальше я пойду путем обыкновенного пользователя, не желающего лишний раз связываться со всем этим геморроем усложнять простое.

Итак, алгоритм установки следующий:

  1. Установка indicator-chars. Для этого мы качаем архив отсюда.
  2. Распаковываем содержимое архива в какую-нибудь папку. Я рекомендую распаковать архив в домашней директории (путь: /home/ИМЯ_ПОЛЬЗОВАТЕЛЯ/indicator-chars-master).
  3. Затем в домашней папке необходимо создать файл .indicator-chars (путь: /home/ИМЯ_ПОЛЬЗОВАТЕЛЯ/.indicator-chars), в который следует внести необходимые символы. Количество и порядок строчек, созданных в этом файле, соответствуют тому, что отображаться в индикаторе на панели.
  4. Индикатор запускается файлом indicator-chars.py в папке, о которой шла речь в пункте 2 (путь: /home/ИМЯ_ПОЛЬЗОВАТЕЛЯ/indicator-chars-master/indicator-chars.py)
  5. Внесем indicator-chars.py в автозагрузку:
  • для этого в Dash наберем «Автоматически запускаемые приложения»;
  • в поле «Имя» введем, например, «Касса символов»;
  • в поле «Команда» ничего не введем, а нажмем на кнопку «Обзор», и выберем наш запускаемый файл из пункта 4 (путь: /home/ИМЯ_ПОЛЬЗОВАТЕЛЯ/indicator-chars-master/indicator-chars.py).

   Использование:

  1. Левой кнопкой мыши выбираем нужный символ. Он сохраняется в буфере обмена.
  2. Вставка символа происходит только нажатием средней кнопки мыши (колеса). Никакие Ctrl+V, Shift+Insert и пр. контекстные меню работать не будут.

Пользуйтесь!

четверг, 21 марта 2013 г.

OmegaT и MS Visio. Перевод

Взялся я на днях переводить VSD-файлы в количестве аж 18 шт. Это были чертежи (мне неизвестно, зачем нужны чертежи в формате MS Visio), и многое на этих чертежах было весьма однотипным, а то и вовсе повторяющимся. Само собой, в таких случаях очень хочется использовать какую-нибудь «кошку». 

Я взялся за поиск какой-нибудь информации об этом на просторах сети Интернет. Мне в этом помогала черепаха, чай и Google. В результате поисков оказалось, что наиболее выполнимым и понятным для меня вариантом является использование моей любимой программы OmegaT. Прочие варианты требовали всестороннего изучения корпускулярно-волновой теории света, работы с тензорами напряжений и беготни за очередным многолитровым сосудом с разливным пивом «Тернове поле» и луфариком горячего копчения (знатная рыбка!) серьезных усилий.

Сразу оговорюсь, непосредственная работа с VSD-файлами в OmegaT невозможна, необходимо конвертировать их в формат VDX. Я использую OmegaT версии 2.6.3

Итак, алгоритм работы следующий.

  1. Необходимо конвертировать VSD-файлы в формат VDX. Это можно сделать непосредственно в MS Visio самостоятельно, либо при помощи великого Маниту, которому необходим перевод. Размер сконвертированных файлов существенно увеличился, но это не беда.
  2. Перевод в OmegaT. Тут следует сказать, что тегов была уйма, была куча непонятного текста (видимо, какие-то свойства объектов или что-то в этом духе), но перевод, тем не менее, был вполне возможен. Глаза привыкли, стали бояться более или менее равномерно, ручонки нажимали кнопочки, перевод получался. 
  3. После проверки тегов следует создание переведенных документов. 
  4. Далее мы открываем готовые документы в MS Visio на предмет выяснения степени красивости и переведенности. У меня MS Visio 2007 ругался, что произошел какой-то кошмар (точно ошибку не помню), сейчас, мол, будем пытаться открыть. После нажатия кнопки «ОК» файлы успешно открывались. Форматирование восстанавливалось врукопашную, была пара моментов, где текст почему-то остался непереведенным.
  5. После устранения всех недочетов и восстановления форматирования следует сохранение в формат VSD. (Ну, это по желанию и чистоты эксперимента для)
Выводы:
  1. OmegaT вполне можно использовать для перевода файлов MS Visio.
  2. Внешний вид переведенных документов удалось сохранить исходным, несмотря на сложные преобразования вида VSD>VDX>перевод>создание_переведенных_файлов>VSD.
  3. Суммарно времени было затрачено существенно меньше, чем если бы перевод выполнялся непосредственно в MS Visio.
  4. Ура!

вторник, 15 января 2013 г.

OmegaT и Microsoft Translator

Приветствую!

Давно я не писал ничего, но сейчас я это исправлю.


Начну с того, что машинный перевод нисколько не заменяет живого переводчика, но, при правильном его использовании, является весьма полезным вспомогательным инструментом.
Ранее я писал о том, как использовать Яндекс.Перевод в Goldendict. Сегодня я хочу рассказать, как использовать машинный перевод от Microsoft Translator в OmegaT.

Раньше была возможность использовать API машинного перевода от Google в OmegaT, однако, сам API и условия его применения изменились, и теперь возможность бесплатного использования API недоступна (существует платная подписка на Google Translate v2). Кроме того, для того чтобы узнать, как использовать оплаченную подписку на Google Translate v2, необходимо проделать сложный и тернистый путь, полный трудностей и невзгод. Я не прошел его, да и платить я не очень люблю. Системы Apertium и Belazar, также доступные в OmegaT, работают с теми языковыми парами, с которыми я, и, очевидно, не только я, не работаю.

Итак, в OmegaT, начиная с версии 2.6.1_1, появилась возможность использования Microsoft Translator API в OmegaT. Это тоже платный сервис, как и Google Translate v2. Однако, в отличие от последнего, имеется возможность бесплатного использования API, но при ограниченном объеме переводимого текста. А это уже кое-что.

Поскольку OmegaT разрабатывается умельцами и поддерживается сообществом, то не всегда вовремя доступны инструкции по использованию тех или иных функций этой замечательно программы.

На форуме от г-на Didier Briel, одного из разработчиков OmegaT, я узнал, как же задействовать Microsoft Translator API в OmegaT. 

Итак, можно запустить OmegaT следующей командой:

java -jar -Dmicrosoft.api.client_id=Customer_ID -Dmicrosoft.api.client_secret=Primary_Account_Key путь/к/OmegaT.jar

Я же забрался в папку с OmegaT и подредактировал запускающий скрипт.

Раньше он выглядел вот так:



#!/bin/bash
# readlink follows any symbolic links to get the real file REALOMEGATPATH=`dirname $(readlink -nf $0)` "${REALOMEGATPATH}/jre/bin/java" -jar -Xmx512M "${REALOMEGATPATH}/OmegaT.jar" $*


Теперь он выглядит следующим образом:
  
#!/bin/bash
# readlink follows any symbolic links to get the real file REALOMEGATPATH=`dirname $(readlink -nf $0)` "${REALOMEGATPATH}/jre/bin/java" -jar -Xmx512M -Dmicrosoft.api.client_id=Customer_ID -Dmicrosoft.api.client_secret=Primary_Account_Key "${REALOMEGATPATH}/OmegaT.jar" $* 



Где Customer_ID и Primary_Account_Key это Primary Account Key и Customer ID, которые доступны на странице вашей учетной записи Microsoft Azure Marketplace после регистрации и выбора нужной подписки на API.

После этих манипуляций появится возможность использовать машинный переводчик Microsoft Translator  непосредственно в OmegaT.

Удачи!