Показаны сообщения с ярлыком перевод. Показать все сообщения
Показаны сообщения с ярлыком перевод. Показать все сообщения

среда, 28 марта 2012 г.

Автоматический IM переводчик с помщью Caesar




Часто общаюсь с китайцами через Skype, но китайского не знаю. Пишу по английски, потом копирую в переводчик Google Translate Client, вставляю обратно. Когда динамически общаешся перекопировать фразу туда-сюда становится очень неудобно. Хотелось просто нажать кнопку и получить переведенную фразу строкой ниже. Такой программы найти не смог. Но я нашел другой вариант. Все оказалось просто.

hotkey my-imtranslate {
Key F2
Task {
Sendkeystroke Ctrl+A
Sleep 100
Sendkeystroke Ctrl+C
Sleep 100
;нужно указать ваш путь до файла
RunApp C:\Program Files (x86)\Translate Client\translateclient.exe
Sleep 500
Sendkeystroke Ctrl+V
Sleep 2000
Sendkeystroke Tab
Sleep 100
Sendkeystroke Ctrl+C
Sleep 100
Sendkeystroke Alt+F4
Sleep 100
Sendkeystroke Right
Sleep 100
Sendkeystroke Shift+Enter
Sleep 100
Sendkeystroke Ctrl+V
}
}


Этот скрипт нужно вставить в программу Caesar.

Кроме того с помощью этой программы, можно лайфхакнуть Windows еще многими способами. Вот некоторые возможности данной программы:
  • переключение раскладки клавиатуры (включение определенной раскладки или другие действия) по клавише Ctrl (или Shift), индикация раскладок клавиатуры с помощью Scroll Lock, Caps Lock, Num Lock;
  • изменение (через буфер обмена) регистра набираемого текста, его транслитерация и обратная транслитерация, корректировка раскладки клавиатуры;
  • минимизация окон в трей, изменение их прозрачности, перемещение мышкой при нажатой Alt, прокрутка окна под указателем мыши; *
  • выполнение произвольных действий при создании (открытии) окна (запуске приложения);
  • назначение горячих клавиш на произвольную последовательность действий (управление окном, запуск приложений, скриптов, выход из системы, перезагрузка, эмуляция клавиатуры и мыши);
  • любые действия при нажатии мышкой (прокрутке колесика мыши) на такие кнопки как «Свернуть», «Развернуть», «Закрыть» и других, а так же в произвольных областях экрана;
  • выполнение определенной последовательности действий с некоторой периодичностью (по расписанию);
  • при выполнении заданных условий (создание некоторого окна, нажатие горячей клавиши, по расписанию) отображение на экране в течение определенного времени отформатированного OSD (On-Screen-Display) текста произвольным цветом, размером, шрифтом; *
  • хранение информации в альтернативных буферах обмена;
  • управление уровнем громкости колонок, выдвижение лотка CD-ROM'а, и прочие мелочи;
  • запись о событиях в лог-файл.
Для получения представления обо всех возможностях программы смотрите полное описание синтаксиса конфигурационного файла caesar (файл caesar.conf-full), а также пример его написания (файл caesar.conf-example).

ccron — часть caesar (может использоваться и как самостоятельная программа), планировщик для выполнения служебных заданий не требующих вмешательства пользователя. Работает как сервис Windows.

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

Три вещи, которые я ненавижу в книгах о программировании для начинающих

Слишком длинные


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

Вот, например, книга краткая, но в тоже время достаточно подробная — «Eloquent Javascript» (Marijn Haverbeke).

Слишком много примеров вида «Hello, World!»


В идеале, «helloworld»-подобный пример должен встречаться в книге только единожды. Если и дальше приводятся беспорядочные и бесполезные примеры вроде рисования ёлочки в консоли, читатели все больше будут чувствовать себя оторванными от реальной практики. Читатели не идиоты. Они знают, что настоящие программисты никогда не рисовали ёлочки в консоли (разве что только ради смеха). Так зачем заставлять читателей делать всю эту ерунду? Если Вы обучаете их строкам, то приведите пример о генерации CSV файлов. Никогда больше не заставляйте читателей рисовать ёлку.

В книге «Ruby on Rails Tutorial: Learn Rails by Example» (Michael Hartl) автор занимается преподаванием во время создания реального проекта, что, несомненно, оставляет у читателя чувство завершенности.

Нет ответов на упражнения


Я считаю, что упражнения являются обязательной частью книги по программированию. Книги о программировании не должны быть для простого чтения. В конце концов эти книги должны учить своего читателя. Упражнения важны, поскольку они толкают мыслить самостоятельно и на самом деле писать программы. 

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

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

Оригинал лежит здесь.