среда, 22 декабря 2010 г.

Подключение модуля справки MySQL Reference Manual к справочной системе Eclipse

Цель: подключить модуль руководства MySQL Reference Manual к справочной системе Eclipse.
В результате получаем:
  • единообразный, стандартный для платформы Eclipse доступ к справочным данным;
  • возможность поиска в документации.
Выглядит это как показано на рис. 1.
Рисунок 1
Этапы решения задачи.

  1. Загружаем подходящий файл руководства в формате "Eclipse Doc Plugin" с сайта dev.mysql.com. Да. Oracle позаботилась о возможности интеграции MySQL Reference Manual в Eclipse.
  2. В простейшем случае разархивируем содержимое загруженного файла (у меня это каталог com.mysql.refman_5.5.en) в каталог plugins платформы Eclipse (см. рис 2). И получаем желаемый результат - файл справки станет доступен по команде Help > Help Contents. Возможно Eclipse потребуется перегрузить. В простейшем случае задача решена. Поздравляю!


Рисунок 2
Но! Как всегда совершенству нет предела. MySQL Reference Manual состоит из множества html файлов, которые занимают около 40 Мб дискового пространства. Воспользуемся возможностью системы справки Eclipse, которая позволяет работать с zip архивами. Создадим архив с названием doc.zip, который содержит всё содержимое каталога com.mysql.refman_5.5.en, кроме файлов plugin.xml и toc.xml. Результат показан на рис. 3.
Рисунок 3
Теперь всё руководство состоит из трех файлов и занимает менее 19 Мб на жестком диске.

Порядок действий не описан на сайте dev.mysql.com. С единственным документом, который и позволил найти решение задачи, можно познакомиться здесь.

Несколько сложнее интегрировать PHP manual. Инструкция находится здесь.

вторник, 21 декабря 2010 г.

PHP Manual с комментариями пользователей в формате chm

Собрал PHP manual с комментариями пользователей. Файл датирован 13.12.2010 г. на сайте PHP.
Файл комментариев пользователей можно скачать с любого из зеркал сайта php.net: http://ANY_MIRROR_SITE.php.net/backend/notes/all.bz2
Сборка выполнена по методике, описанной на Хабре.
Файл справки на английском языке. Такие же комментарии.


Скачать файл можно здесь.

суббота, 18 декабря 2010 г.

Неожиданное завершение сессии при удаленной отладке php скрипта с помощью Xdebug

Симптомы:
  • cообщение в строке статуса PDT "Launching 57%: waiting for XDebug session";
  • сообщение в браузере " DEBUG SESSION ENDED";
  • в перспективе PHP Debug невозможна отладка скрипта.
Некорректное поведение отладчика у меня наблюдается только при отладке скрипта на удаленном сервере (не localhost) из NetBeans. В конфигурации Xdebug разрешен удаленный доступ
xdebug.remote_connect_back=On.
Ошибка не  проявляется при работе с локальным web сервером (localhost), то есть при наличии в конфигурации Xdebug строки
xdebug.remote_host = "localhost".
Проблема описана здесь. А её решение приведено здесь.
Причина такого поведения описана здесь (п. 2.7.3.1).
Решение
Необходимо в PDT очистить окно (view) "Expressions" от выражений.

воскресенье, 12 декабря 2010 г.

Список учетных записей livejournal.com

Написал php скрипт, который собирает информацию об учетных записях ЖЖ. Получилось более 3 млн. пользователей. Число соответствует оценке пользователей, о которых заявляет LiveJournal.com.
Могу поделиться базой за скромное вознаграждение с нуждающимися.

воскресенье, 28 ноября 2010 г.

Подключение php к Eclipse PDT

Eclipse PDT предназначен для работы со скриптами PHP.
Заметка описывает подключение php для запуска скриптов AS PHP Script из Eclipse
  • Run -> Run as -> PHP script
  • Run -> Debug as -> PHP script

Исходные данные:
  • Eclipse PDT
  • php (расположен в c:\php5)
  • файл конфигурации php.ini
Редактируем php.ini
  1. Создаем копию файла и называем её php4eclipse.ini;
  2. Редактируем файл php4eclipse.ini, где прописываем абсолютный адрес в следующих строках
    1. extension_dir = "С:\php5\ext"
    2. zend_extension=С:\php5\ext\php_xdebug.dll (при наличии дебагера xdebug, для Zend debug используется zend_extension_ts)

Настройка Eclipse
Windows -> Preferences -> PHP -> PHP Executables
где задаем конфигурацию PHP

Теперь возможен запуск скриптов командой Run -> Run as -> PHP script.

Выключение компьютера из командной строки без ввода пароля суперпользователя

Для выключения компьютера из командной строки в Linux необходимы привелегии суперпользователя. Выключение производится командой
sudo shutdown
и ввод пароля суперпользователя.

Чтобы разрешить непривилегированным пользователям выполнять команды shutdown, reboot необходимо в /etc/sudoers добавить строку

ALL ALL = NOPASSWD: (ALL) /sbin/shutdown, /sbin/reboot
Выключение будет производится командой
sudo shutdown
без ввода пароля.

Можно добавить алиас в ~/.bashrc
alias shutdown='sudo shutdown'

В результате выключение будет производится по команде
shutdown

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

пятница, 20 августа 2010 г.

Как разделить аудиофайл на равные части

Задача
Разделить длительный непрерывный аудиофайл на несколько частей.

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


Инструмент

Audacity — свободный, простой в использовании редактор звуковых файлов.

Методика
Файл - открыть - выбрать звуковой файл.
Анализ - Regular interval labels - выбрать параметры разделения.
Файл - Экспортировать в несколько файлов - выбрать параметры экспорта.
Подтвердить параметры для каждого экспортируемого файла.