/d2s.pl

d2s.pl script

Primary LanguagePerlDo What The F*ck You Want To Public LicenseWTFPL

d2s.pl (version 2.00 beta)

Удобно настраиваемый скрипт, предназначенный для вывода различной информации на панель, используя Dzen2

Проект не поддерживается

Автор: Бабаев Евгений, 2012

Пак иконок по умолчанию от [sm4tik] (http://dzen.geekmode.org/dwiki/doku.php?id=dzen:icon-packs)

Лицензия

WTFPL, см. файл LICENSE

Системные требования

  • perl
  • dzen2

Включённые модули по умолчанию

  • battery: Уровень зарядки батареи
  • brightness: Текущая яркость экрана
  • cpu_freq: Частота процессора
  • date: Текущая дата
  • desktop: Список рабочих столов
  • imap: Количество новых писем на сервере IMAP
  • ip: Текущий внутрисетевой IP адрес
  • kernel: Версия ядра
  • layout: Раскладка клавиатуры
  • memory: Объём занимаемой памяти
  • time: Текущее время
  • uptime: Текущий аптайм
  • volume: Громкость (для ALSA)
  • weather: Погода в городе

Необходимые Perl-модули:

  • LWP::UserAgent: для работы модулей weather
  • POSIX::strftime: для работы модулей time и date
  • Mail::IMAPClient: для работы модуля imap
  • IO::Socket::SSL: Для работы модуля imap, если используется SSL-подключение

Необходимое для работы модулей ПО:

  • acpi: для модуля battery
  • cpufreq-info: для модуля cpu_freq
  • wmctrl: для модуля desktops
  • ip: для модуля ip
  • skb или xkb-switch: для модуля layout
  • amixer: для модуля volume

Описание доступных опций файла конфигурации

Main

main.enabled: Список включённых модулей, разделнённых пробелами

main.icons_path: Путь к иконкам в формате xbm или xpm. Если параметр ui.use_icons равен false, путь к иконкам можно не указывать

main.na_text: Текст, отображаемый в случае, когда невозможно получить значение (например текущую погоду или количество писем при отстутствия подключения к сети)

main.start_delay: Пауза перед запуском. Указывается в секундах

Dzen2

dzen2.path: Путь к исполняемому файлу Dzen2

dzen2.position: Положение вывода текста на панель. Может принимать значения left, right, center или сокращённые формы (l, r, c)

dzen2.font: Шрифт вывода на панель

dzen2.background: Фоновый цвет панели

dzen2.events: Обработчики действий Dzen. Строка, которая будет передана, как параметр -e

dzen2.width: Длина панели. Если значение равно нулю, панель будет занимать всю доступную по вертикали область

UI

ui.use_icons: Определяет, использовать ли иконки. Если параметр равен True (1) — вместо текстовых надписей буду использоваться иконки

ui.padding: Расстояние между индикаторами по умолчанию

ui.label_padding: Расстояние между надписью/иконкой и значением индикатора

Colors

colors.default: Основной цвет индикаторов

colors.disabled: Дополнительный цвет индикаторов (например для отображения громкости при отключённом звуке или уровне зарядки без питания от электричества)

colors.label: Цвет отображения подписей и иконкам

Mod

Настройки группы mod помогают настраивать параметры любого из модулей. Здесь будет представлено описание настроек, доступных для каждого из них. Специфичные настройки для модуля модуля можно найти в документации к нему.

mod.mod_name.upd: Интервал обновления контента модуля

mod.mod_name.color: Цвет вывода контента

mod.mod_name.rpadding: Расстояние между текущим модулем и следующим за ним

mod.mod_name.label: Надпись перед модулем. Отображается при настройке ui.use_icons = 0

mod.mod_name.icon: Имя файла иконки, отображаемой перед модулем. Отображается при настройке ui.use_icons = 1

История изменений

2.00 Beta 16

  • (battery) Упрощена проверка статуса работы от батарии
  • Возможность указывать интервал обновления в днях
  • Опитимизирована обработка параметров Dzen2

2.00 Beta 15

  • (ip) Возможность использовать ifconfig вместо ip. По умолчанию — False

2.00 Beta 14

  • Оптимизирован модуль работы с настройками

2.00 Beta 13

  • Сильно оптимизирован основной цикл генерации контента для индикаторов
  • Параметр файла конфиругации rpadding для модулей был переименован в padding, для удобства и совместимости
  • (imap) Добавлена загрузка пропущенного Perl модуля IO::Socket::SSL, из-за котого не работал модуль
  • (weather) Добавлен таймаут для модуля в 3 секунды, чтобы не тормозить обновление остального контента, в случае, если погоду невозможно получить в течении этого времени

2.00 Beta 12

  • Оптимизирована функция парсинга времени

2.00 Beta 11

  • (imap) Модуль Gmail заменён на модуль IMAP, который может получать количество непрочитанных сообщений с любого IMAP-сервера. Новому модулю требуются установленные модули Mail::IMAPClient и, если используется SSL-подключение, IO::Socket::SSL. Новый модуль больше не требует LWP::UserAgent для работы

2.00 Beta 10

  • Оптимизирована функция парсинга времени
  • Возможность указать время обновления в днях
  • Небольшие оптимизации и исправления ошибок

2.00 Beta 9

  • (layout) Возможность использовать skb вместо xkb-switch для получения текущей раскладки

2.00 Beta 8

  • (memory) Возможность выводить количество свободной памяти в процентном отношении

2.00 Beta 7

  • Проверка наличия модуля перед обновленим контента индикатора
  • Добавлен текст лицензии

2.00 Beta 6

  • Возможность обновлять индикаторы лишь один раз, при запуске программы

2.00 Beta 5

  • Возможно указать путь к исполняемому фалу Dzen2

2.00 Beta 4

  • Исправление различных ошибок

2.00 Beta 3

  • Возможность указать паузу перед запуском скрипта
  • Возможность указывать шкалу измерения времени в файле конфигурации

2.00 Beta 2

  • Возможность настройки Dzen2
  • Исравлена ошибка, из-за которого парсер настроек мог не учитывать некоторые параметры

2.00 Beta 1

  • Первая бета версия ветки 2.0. Введена поддержка модульности.

Контакты