KNIME в Eclipse
KNIME удобнее использовать не как отдельное приложение, а как плагин в Eclipse. Для такой установка необходимо в Eclipse добавить репозитории KNIME Core и KNIME Labs. Затем выбрать пункт меню Help — Install new software и выбрать репозиторий KNIME. См. более подробную информацию на официальном сайте.
Установка emacs-w3m в EmacsW32 с использованием cygwin
Emacs может выступать в роли интернет-браузера. Для этого можно использовать мод emacs-w3m. Emacs-w3m представляет собой набор скриптов на ELisp. Emacs-w3m является интерфейсом между Emacs и консольным браузером w3m. Мод Emacs-w3m разрабатывается группой японских программистов.
Установка emacs-w3m
Рассмотрим процесс установки emacs-w3m в EmacsW32 на основе emacs 23 под ОС Windows XP SP3 с использованием cygwin.
Так как используется 23-я версия emacs необходимо использовать последнюю девелоперскую версию emacs-w3m из CVS (proof link). Для скачивания последних версий файлов из CVS никаких дополнительных программ устанавливать не нужно. Скачать можно через ViewCVS. Файлы emacs-w3m можно положить, например, в директорию C:\Documents and Settings\<username>\Application Data\.emacs.d\emacs-w3m или в C:\Program Files\Emacs\emacs\site-lisp\w3m.
Процесс настройки cygwin я рассмотрел тут. Согласно файлу README emacs-w3m необходимо скомпилировать. Для компиляции emacs-w3m и его использования необходим ряд консольных утилит, которые будем ставить в cygwin:
- консольный браузер w3m.
- autoconf — это утилита для формирования файла configure на основании файлов configure.in и aclocal.m4. Исходные файлы для autoconf написаны на макроязыке m4. Autoconf — это набор скриптов, использующих макропроцессор M4. Перед вызовом autoconf полезно выполнить команду autoupdate. Она заменяет в файле configure.in устаревшие макросы их новыми версиями. Скрипт Autom4te, входящий в пакет autoconf2.5-2.65-1.tar.bz2, написан на perl. Поэтому, потребуется установить еще и perl.
- make — это утилита для компиляции и сборки файлов проекта. Входным файлом для утилиты make является файл Makefile. Файл Makefile формируется скриптом configure из файла Makefile.in.
Теперь необходимо скомпилировать emacs-w3m:
- В консоли cygwin перейдем в папку, со скриптами emacs-w3m. Файл configure отсутствует. Необходимо его сгенерировать. Для этого выполним команду autoconf. Предварительно утилита autoconf и макропроцессор m4 должны быть установлены в cygwin. Файл /bin/autoconf — это символьная ссылка на скрипт /usr/share/autotools/ac-wrapper.sh. Скрипт ac-wrapper.sh является оберткой для утилит autotools (autoconf, autoheader, autom4te, autoreconf, autoscan, autoupdate). Скрипт ac-wrapper.sh определяет какую версию исходного скрипта из директории /bin необходимо вызвать и вызывает его. Например, у меня в директории /bin есть две версии скрипта autoconf — autoconf-2.13 и autoconf-2.65. Выбор версии скрипта определяет, в частности, какая библиотека m4-файлов будут использоваться. Для autoconf 2.65 используются m4-скрипты из директории /usr/share/autoconf/autoconf. А autoconf 2.13 использует m4-скрипты из директории /usr/share/autoconf. Autoconf 2.13 непосредственно обращается к макропроцессору M4 для разбора M4-файлов. А autoconf 2.65 обращается к m4 через промежуточный скрипт autom4te. Механизм вызова autom4te аналогичен процессу вызова autoconf — через символьную ссылку и скрипт ac-wrapper.sh. Скрипт autom4te в свою очередь используется как обертка к m4 не только скриптом autoconf-2.65, но и остальными скриптами autotools версии 2.65 — autoheader-2.65, autoreconf-2.65, autoscan-2.65, autoupdate-2.65. Конфигурационный файл для autom4te — /usr/share/autoconf/autom4te.cfg.
- Итак, файл configure создан. Теперь необходимо его запустить.
Если у вас в cygwin установлен emacs, то в configure может определиться путь к emacs из cygwin. В таком случае можно emacs в cygwin просто временно переименовать.
Появится следующее сообщение об ошибке:./configure: line 2397: /cygdrive/c/Program: No such file or directory
Эта ошибка возникает из-за того, что в пути к emacs есть пробел. Ошибку легко устранить, если в файле configure заключить путь к emacs в кавычки. Но это будет поверхностное решение. Файл configure формируется утилитой autoconf на основании шаблона configure.in и библиотеки m4-скриптов. Найдём и исправим m4-скрипт, который приводит к ошибке. Цепочка вызовов m4-скриптов, приводящих к ошибке, следующая: AC_PATH_EMACS (вызывается из configure.in и определяется в aclocal.m4) -> AC_PATH_PROG (для autoconf 2.65 определяется в файле /usr/share/autoconf/autoconf/programs.m4) -> _AC_PATH_PROG (для autoconf 2.65 определяется в файле /usr/share/autoconf/autoconf/programs.m4). Для autoconf 2.13 скрипт AC_PATH_PROG определяется в файле /usr/share/autoconf/acgeneral.m4. Если используется autoconf 2.65, то в конце скрипта _AC_PATH_PROG необходимо заменить строку
$1=$ac_cv_path_$1
на строку
$1=\"$ac_cv_path_$1\"
Если используется autoconf 2.13, то надо сделать аналогичные по сути изменения в скрипте AC_PATH_PROG из файла /usr/share/autoconf/acgeneral.m4. Эту задачу я оставляю для желающих как самостоятельное упражнение.
Для отладки M4-скриптов можно использовать скрипт:AC_MSG_NOTICE([Debug:: I am in AC_PATH_PROG $@ end_debug_message])dnl
Если сейчас снова сформировать configure и запустить его, то получим ту же ошибку. Потому что мы не обновили freeze-файл autoconf.m4f. Про то что такое freeze можно почерпнуть немного информации из документации по M4. Коротко говоря, freeze-файлы используются для ускорения работы макропроцессора m4. Если этот freeze-файл удалить, пересоздать и запустить configure, то этой ошибки не будет.
Займемся обновлением файла autoconf.m4f. Если вы для создания freeze-файла для autoconf.m4 выполните команду
m4 -F autoconf.m4f autoconf.m4
то у вас ничего не получится. Потому что в файлах, которые подключаются в autoconf.m4 есть m4sugar-скрипты. M4sugar — это m4-скрипты, являющиеся обертками для m4-скриптов. Файлы M4sugar находятся в директории /usr/share/autoconf/m4sugar.
Для создания freeze-файла из autoconf.m4 удобнее использовать скрипт autom4te. Но если вы выполните команду
autom4te --language=Autoconf --freeze -o autoconf.m4f autoconf.m4
то получите ошибку, потому что опция —language=Autoconf уже определяет список всех необходимых файлов для создания freeze-файла autoconf.m4f, а мы еще явно указали файл autoconf.m4. Правильная строка для формирования autoconf.m4f следующая:
autom4te --language=Autoconf --freeze -o autoconf.m4f
- Теперь выполним команду make. Входным файлом для команды make является Makefile, который генерится скриптом configure на основании файла Makefile.in.
- Выполним make install.
- Выполним команду make install-icons
На этом всё. Можно запускать emacs и выполнять команду «M-x w3m». Вот как отображается мой сайт в emacs-w3m:
Использование emacs-w3m
Другие примеры того как emacs-w3m рендерит html можно посмотреть в этом посте из моего блога.
Emacs-W3M поддерживает табы.
Современные версии w3m имеют встроенный просмотрщик изображений. Для включения/отключения изображений необходимо нажать клавишу «T» в окне браузера. Ставить пакет w3m-img не нужно. Да его и нет в составе cygwin.
А вот как можно быстро переключаться между W3M браузером и другим буфером emacs.
А вот тут есть плагин для Firefox, который заменяет оформление браузера и горячие клавиши а-ля emacs.
Установка psyco, pylint и pyunit под Windows
При использовании PyDev в связке с Eclipse под Windows и попытке отладки python кода возникает предупреждение:
pydev debugger: warning: psyco not available for speedups (the debugger will still work correctly, but a bit slower) pydev debugger: starting pydev debugger: warning: psyco not available for speedups (the debugger will still work correctly, but a bit slower)pydev debugger: starting
Установочные файлы psyco под Windows следует искать не на домашней странице psyco, а на VoidSpace. Последняя поддерживаемая версия Pyhon — 2.6.
Для установки pylint под Windows есть хорошая инструкция на Thinkhole Labs. Я сделал как там написано и никаких проблем не возникло.
pyunit ставится аналогично pylint — надо скачать исходники, настроить переменную окруженич %PATH% и в консоли выполнить команду
python setup.py install

osya






