]> git.donarmstrong.com Git - lib.git/blobdiff - emacs_el/org-google-weather.el
remove more outdated emacs packages
[lib.git] / emacs_el / org-google-weather.el
diff --git a/emacs_el/org-google-weather.el b/emacs_el/org-google-weather.el
deleted file mode 100644 (file)
index 2acf960..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-;;; org-google-weather.el --- Show Google Weather forecasts in Org agenda.
-
-;; Copyright (C) 2010 Julien Danjou
-
-;; Author: Julien Danjou <julien@danjou.info>
-;; Keywords: comm
-
-;; This file is NOT part of GNU Emacs.
-
-;; GNU Emacs is free software: you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; GNU Emacs is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
-
-;;; Commentary:
-;; This module allows to display the weather forecast fetched from Google in
-;; your Org agenda.
-;;
-;;     Wednesday   8 September 2010
-;;       Weather:    Pluie, 12/18 ℃
-;;     Thursday    9 September 2010
-;;       Weather:    Couverture nuageuse partielle, 11/21 ℃
-;;
-;; Just add the following in an Org buffer:
-;; %%(org-google-weather)
-;;
-;;; Code:
-
-(require 'google-weather)
-(require 'image)
-(require 'format-spec)
-(require 'solar)
-
-(defgroup org-google-weather nil
-  "Google Weather for Org mode."
-  :group 'comm
-  :group 'org)
-
-(defcustom org-google-weather-location calendar-location-name
-  "Default location for org-google-weather."
-  :group 'org-google-weather)
-
-(defcustom org-google-weather-format "%i %c, [%l,%h] %s"
-  "String to return to describe the weather.
-Valid %-sequences are:
-  - %i the icon
-  - %c means the weather condition
-  - %L the supplied location
-  - %C the city the weather is for
-  - %l the lower temperature
-  - %h the higher temperature
-  - %s the temperature unit symbol")
-
-(defcustom org-google-weather-cache-time 43200
-  "Define for how many seconds we should cache the weather."
-  :group 'org-google-weather)
-
-(defcustom org-google-weather-display-icon-p t
-  "Display icons."
-  :group 'org-google-weather)
-
-(defcustom org-google-weather-icon-directory "/usr/share/icons/gnome/16x16/status"
-  "Directory where to find icon listed in `org-google-weather-icon-alist'."
-  :group 'org-google-weather)
-
-(defcustom org-google-weather-icon-alist
-  '((chance_of_rain . "weather-showers-scattered.png")
-    (chance_of_snow . "weather-snow.png")
-    (chance_of_storm . "weather-storm.png")
-    (cn_cloudy . "weather-overcast.png")
-    (cn_heavyrun . "weather-showers.png")
-    (cn_sunny . "weather-clear.png")
-    (cloudy . "weather-overcast.png")
-    (dust . "weather-fog.png")
-    (flurries . "weather-storm.png")
-    (fog . "weather-fog.png")
-    (haze . "weather-fog.png")
-    (icy . "weather-snow.png")
-    (jp_sunny . "weather-clear.png")
-    (jp_cloudy . "weather-overcast.png")
-    (mist . "weather-storm.png")
-    (mostly_cloudy . "weather-overcast.png")
-    (mostly_sunny . "weather-clear.png")
-    (partly_cloudy . "weather-few-clouds.png")
-    (rain . "weather-showers.png")
-    (rain_snow . "weather-snow.png")
-    (sleet . "weather-snow.png")
-    (smoke . "weather-fog.png")
-    (snow . "weather-snow.png")
-    (storm . "weather-storm.png")
-    (thunderstorm . "weather-storm.png")
-    (sunny . "weather-clear.png"))
-  "Icons to use to illustrate the weather."
-  :group 'org-google-weather)
-
-(defcustom org-google-weather-use-google-icons nil
-  "Fetch icons from Google or use local ones.
-If you decide to use local ones, you should check
-`org-google-weather-icon-directory' and
-`org-google-weather-icon-alist'. Otherwise, if you want to use
-icons from Google, you have nothing to do."
-  :group 'org-google-weather
-  :type 'boolean)
-
-(defun org-google-weather-get-icon (url)
-  (with-current-buffer
-      (google-weather-retrieve-data-raw url org-google-weather-cache-time)
-    (goto-char (point-min))
-    (unless (search-forward "\n\n" nil t)
-      (error "Data not found"))
-    (let ((data (buffer-substring (point) (point-max))))
-      (kill-buffer (current-buffer))
-      data)))
-
-;;;###autoload
-(defun org-google-weather (&optional location language)
-  "Return Org entry with the weather for LOCATION in LANGUAGE.
-If LOCATION is not set, use org-google-weather-location."
-  (let* ((location (or location org-google-weather-location))
-         (data (ignore-errors
-                 (google-weather-get-data location
-                                          language
-                                          org-google-weather-cache-time)))
-         (problem-cause (when data (google-weather-data->problem-cause data)))
-         (forecast (when (and (null problem-cause) data)
-                     (google-weather-data->forecast-for-date data date))))
-    (if problem-cause
-        (message "%s: %s" location problem-cause)
-      (when forecast
-        (let ((condition (cadr (assoc 'condition forecast)))
-              (low (cadr (assoc 'low forecast)))
-              (high (cadr (assoc 'high forecast)))
-              (city (google-weather-data->city data))
-              ;; But *they* told me it's just about calling functions!
-              (icon (when (and org-google-weather-display-icon-p (display-images-p))
-                      (if org-google-weather-use-google-icons
-                          (create-image (org-google-weather-get-icon
-                                         (cadr (assoc 'icon forecast)))
-                                        nil t)
-                        (create-image
-                         (concat
-                          org-google-weather-icon-directory
-                          "/"
-                          (cdr
-                           (assoc
-                            (intern
-                             (file-name-sans-extension
-                              (file-name-nondirectory
-                               (cadr (assoc 'icon forecast)))))
-                            org-google-weather-icon-alist)))))))
-              (temp-symbol (google-weather-data->temperature-symbol data)))
-          (format-spec org-google-weather-format
-                       `((?i . ,(if icon
-                                    (propertize "icon"
-                                                'display
-                                                (append
-                                                 icon '(:ascent center))
-                                                'rear-nonsticky '(display))
-                                  ""))
-                         (?c . ,condition)
-                         (?L . ,location)
-                         (?C . ,city)
-                         (?l . ,low)
-                         (?h . ,high)
-                         (?s . ,temp-symbol))))))))
-
-(provide 'org-google-weather)