mirror of
https://github.com/elenapan/dotfiles.git
synced 2025-12-26 15:14:58 +08:00
Move weather icon dictionary to icons init.lua
This commit is contained in:
parent
31f2452228
commit
c633db548f
2 changed files with 46 additions and 61 deletions
|
|
@ -14,8 +14,46 @@ local icons = {}
|
|||
icons.image = {}
|
||||
icons.text = {}
|
||||
|
||||
-- TODO Set up weather text icons here instead of in ../noodle/text_weather.lua
|
||||
-- icons.text.weather = {}
|
||||
-- 'Icomoon' font (filled variant)
|
||||
local sun_icon = ""
|
||||
local moon_icon = ""
|
||||
local dcloud_icon = ""
|
||||
local ncloud_icon = ""
|
||||
local cloud_icon = ""
|
||||
local rain_icon = ""
|
||||
local storm_icon = ""
|
||||
local snow_icon = ""
|
||||
local mist_icon = ""
|
||||
local whatever_icon = ""
|
||||
|
||||
-- Icon codes of openweathermap
|
||||
icons.text.weather = {
|
||||
["01d"] = { symbol = sun_icon, color = x.color3 },
|
||||
["01n"] = { symbol = moon_icon, color = x.color4 },
|
||||
["02d"] = { symbol = dcloud_icon, color = x.color3 },
|
||||
["02n"] = { symbol = ncloud_icon, color = x.color6 },
|
||||
["03d"] = { symbol = cloud_icon, color = x.color1 },
|
||||
["03n"] = { symbol = cloud_icon, color = x.color1 },
|
||||
["04d"] = { symbol = cloud_icon, color = x.color1 },
|
||||
["04n"] = { symbol = cloud_icon, color = x.color1 },
|
||||
["09d"] = { symbol = rain_icon, color = x.color4 },
|
||||
["09n"] = { symbol = rain_icon, color = x.color4 },
|
||||
["10d"] = { symbol = rain_icon, color = x.color4 },
|
||||
["10n"] = { symbol = rain_icon, color = x.color4 },
|
||||
["11d"] = { symbol = storm_icon, color = x.color1 },
|
||||
["11n"] = { symbol = storm_icon, color = x.color1 },
|
||||
["13d"] = { symbol = snow_icon, color = x.color6 },
|
||||
["13n"] = { symbol = snow_icon, color = x.color6 },
|
||||
["40d"] = { symbol = mist_icon, color = x.color5 },
|
||||
["40n"] = { symbol = mist_icon, color = x.color5 },
|
||||
["50d"] = { symbol = mist_icon, color = x.color5 },
|
||||
["50n"] = { symbol = mist_icon, color = x.color5 },
|
||||
["_"] = { symbol = whatever_icon, color = x.color2 }
|
||||
}
|
||||
|
||||
icons.text.get_weather_icon = function(code)
|
||||
return icons.text.weather[code] or icons.text.weather["_"]
|
||||
end
|
||||
|
||||
-- Set up text symbols and accent colors to be used in tasklists or docks
|
||||
-- instead of awful.widget.clienticon
|
||||
|
|
|
|||
|
|
@ -2,6 +2,8 @@ local gears = require("gears")
|
|||
local wibox = require("wibox")
|
||||
local beautiful = require("beautiful")
|
||||
local helpers = require("helpers")
|
||||
local icons = require("icons")
|
||||
local get_weather_icon = icons.text.get_weather_icon
|
||||
|
||||
local weather_temperature_symbol
|
||||
if user.weather_units == "metric" then
|
||||
|
|
@ -10,31 +12,6 @@ elseif user.weather_units == "imperial" then
|
|||
weather_temperature_symbol = "°F"
|
||||
end
|
||||
|
||||
-- Text icons
|
||||
-- 'Typicons' font
|
||||
-- local sun_icon = ""
|
||||
-- local moon_icon = ""
|
||||
-- local dcloud_icon = ""
|
||||
-- local ncloud_icon = ""
|
||||
-- local cloud_icon = ""
|
||||
-- local rain_icon = ""
|
||||
-- local storm_icon = ""
|
||||
-- local snow_icon = ""
|
||||
-- local mist_icon = ""
|
||||
-- local whatever_icon = ""
|
||||
|
||||
-- 'Icomoon' font (filled variant)
|
||||
local sun_icon = ""
|
||||
local moon_icon = ""
|
||||
local dcloud_icon = ""
|
||||
local ncloud_icon = ""
|
||||
local cloud_icon = ""
|
||||
local rain_icon = ""
|
||||
local storm_icon = ""
|
||||
local snow_icon = ""
|
||||
local mist_icon = ""
|
||||
local whatever_icon = ""
|
||||
|
||||
local weather_description = wibox.widget{
|
||||
-- text = "Weather unavailable",
|
||||
text = "Loading weather...",
|
||||
|
|
@ -66,42 +43,12 @@ local weather = wibox.widget{
|
|||
layout = wibox.layout.fixed.horizontal
|
||||
}
|
||||
|
||||
local weather_icons = {
|
||||
["01d"] = { icon = sun_icon, color = x.color3 },
|
||||
["01n"] = { icon = moon_icon, color = x.color4 },
|
||||
["02d"] = { icon = dcloud_icon, color = x.color3 },
|
||||
["02n"] = { icon = ncloud_icon, color = x.color6 },
|
||||
["03d"] = { icon = cloud_icon, color = x.color1 },
|
||||
["03n"] = { icon = cloud_icon, color = x.color1 },
|
||||
["04d"] = { icon = cloud_icon, color = x.color1 },
|
||||
["04n"] = { icon = cloud_icon, color = x.color1 },
|
||||
["09d"] = { icon = rain_icon, color = x.color4 },
|
||||
["09n"] = { icon = rain_icon, color = x.color4 },
|
||||
["10d"] = { icon = rain_icon, color = x.color4 },
|
||||
["10n"] = { icon = rain_icon, color = x.color4 },
|
||||
["11d"] = { icon = storm_icon, color = x.color1 },
|
||||
["11n"] = { icon = storm_icon, color = x.color1 },
|
||||
["13d"] = { icon = snow_icon, color = x.color6 },
|
||||
["13n"] = { icon = snow_icon, color = x.color6 },
|
||||
["40d"] = { icon = mist_icon, color = x.color5 },
|
||||
["40n"] = { icon = mist_icon, color = x.color5 },
|
||||
["50d"] = { icon = mist_icon, color = x.color5 },
|
||||
["50n"] = { icon = mist_icon, color = x.color5 },
|
||||
["_"] = { icon = whatever_icon, color = x.color2 },
|
||||
}
|
||||
|
||||
awesome.connect_signal("evil::weather", function(temperature, description, icon_code)
|
||||
local icon
|
||||
local color
|
||||
if weather_icons[icon_code] then
|
||||
icon = weather_icons[icon_code].icon
|
||||
color = weather_icons[icon_code].color
|
||||
else
|
||||
icon = weather_icons['_'].icon
|
||||
color = weather_icons['_'].color
|
||||
end
|
||||
local icon = get_weather_icon(icon_code)
|
||||
local symbol = icon.symbol
|
||||
local color = icon.color
|
||||
|
||||
weather_icon.markup = helpers.colorize_text(icon, color)
|
||||
weather_icon.markup = helpers.colorize_text(symbol, color)
|
||||
weather_description.markup = description
|
||||
weather_temperature.markup = temperature
|
||||
-- weather_temperature.markup = helpers.colorize_text(tostring(temperature)..weather_temperature_symbol, color)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue