Вывод иконок погоды производится скриптом function_draw_image.lua
Скрипт содержит две функции draw_image_rect(cr, x, y, width) и image_weather().
Первая - draw_image_rect(cr, x, y, width) получает от скрипта main.lua данные о положении на экране и размеры иконки. Получив эти данные функция забирает название иконки из функции image_weather() и по этому названию забирает иконку из папки weathwericons с помощью строки
image = (usrhome .. "/conky_20.03.2011/weathericons/" .. image_weather())
затем, как я уже писал в "Вывод картинок (иконок) в конки" в марте 2011, производится вывод изображения иконки погоды.
Вторая функция - image_weather() с помощью программы sunwait определяет какой тип иконок надо будет брать, для дня или ночи. Строки
local sunrise = conky_parse("${exec sunwait -p 59.58N 30.18E | grep rises | awk '{print $3}'}")
local sunset = conky_parse("${exec sunwait -p 59.58N 30.18E | grep rises | awk '{print $6}'}")
присваивают значения sunrise (время восхода) и sunset (время заката) вызывая программу sunwait с необходимыми координатами места получения прогноза. 59.58N 30.18E это широта и долгота Санкт-Петербурга.
Эти данные в строке
if conky_parse("${time %H:%M}") > sunrise and conky_parse("${time %H:%M}") < sunset then
сравниваются с текущим временем, и если время приходится на день, то строка
image = conky_parse("${exec sed -n '5p' /tmp/weathertext}")
забирает название полученной погоды из /tmp/weathertext и выбирает, согласно названия и времени суток, подходящую иконку и передает данные о ней первой функции, которая выводит изображение на экран.
Так как иконок не очень много, а названий состояния погоды очень много, то некоторые иконки выводят изображение нескольких состояний погоды. Проще говоря облачно, облачно с дымкой, облачно с легким ветерком - выводятся как облачно.
Если будете использовать эти конки, не забудьте дать права скриптам, и измените координаты на координаты своего города. Для получения кода погоды своего города необходимо зайти на сайт http://www.wunderground.com и вписать название своего города. Если город будет найден вы перейдете на страницу с прогнозом погоды. В правом верхнем углу находятся две кнопки ICAL(зелёная) and RSS(красная). Щелкните правой кнопкой мыши по красной кнопке и скопируйте ссылку на адресс.
В скрипте pogoda.sh (находится в папке scripts) необходимо заменить строку с адресом
"http://rss.wunderground.com/auto/rss_full/global/stations/26063.xml?units=metric"
на скопированную вами.
Для переключения иконок с дневных на ночные необходимо зайти в папку sunwait, находится в общей папке этих коньков и дать команду
$ make
будет создан файл sunwait который необходимо поместить в /usr/local/bin.
Кажется ничего не забыл.
Удачных коньков.
Скрипт содержит две функции draw_image_rect(cr, x, y, width) и image_weather().
Первая - draw_image_rect(cr, x, y, width) получает от скрипта main.lua данные о положении на экране и размеры иконки. Получив эти данные функция забирает название иконки из функции image_weather() и по этому названию забирает иконку из папки weathwericons с помощью строки
image = (usrhome .. "/conky_20.03.2011/weathericons/" .. image_weather())
затем, как я уже писал в "Вывод картинок (иконок) в конки" в марте 2011, производится вывод изображения иконки погоды.
Вторая функция - image_weather() с помощью программы sunwait определяет какой тип иконок надо будет брать, для дня или ночи. Строки
local sunrise = conky_parse("${exec sunwait -p 59.58N 30.18E | grep rises | awk '{print $3}'}")
local sunset = conky_parse("${exec sunwait -p 59.58N 30.18E | grep rises | awk '{print $6}'}")
присваивают значения sunrise (время восхода) и sunset (время заката) вызывая программу sunwait с необходимыми координатами места получения прогноза. 59.58N 30.18E это широта и долгота Санкт-Петербурга.
Эти данные в строке
if conky_parse("${time %H:%M}") > sunrise and conky_parse("${time %H:%M}") < sunset then
сравниваются с текущим временем, и если время приходится на день, то строка
image = conky_parse("${exec sed -n '5p' /tmp/weathertext}")
забирает название полученной погоды из /tmp/weathertext и выбирает, согласно названия и времени суток, подходящую иконку и передает данные о ней первой функции, которая выводит изображение на экран.
Так как иконок не очень много, а названий состояния погоды очень много, то некоторые иконки выводят изображение нескольких состояний погоды. Проще говоря облачно, облачно с дымкой, облачно с легким ветерком - выводятся как облачно.
Если будете использовать эти конки, не забудьте дать права скриптам, и измените координаты на координаты своего города. Для получения кода погоды своего города необходимо зайти на сайт http://www.wunderground.com и вписать название своего города. Если город будет найден вы перейдете на страницу с прогнозом погоды. В правом верхнем углу находятся две кнопки ICAL(зелёная) and RSS(красная). Щелкните правой кнопкой мыши по красной кнопке и скопируйте ссылку на адресс.
В скрипте pogoda.sh (находится в папке scripts) необходимо заменить строку с адресом
"http://rss.wunderground.com/auto/rss_full/global/stations/26063.xml?units=metric"
на скопированную вами.
Для переключения иконок с дневных на ночные необходимо зайти в папку sunwait, находится в общей папке этих коньков и дать команду
$ make
будет создан файл sunwait который необходимо поместить в /usr/local/bin.
Кажется ничего не забыл.
Удачных коньков.
Комментариев нет:
Отправить комментарий