[[Vorlage(Getestet, bionic)]]

{{{#!vorlage Wissen
[:Pakete installieren: Installation von Programmen]
[:sudo: Root-Rechte]
[:Terminal: Ein Terminal öffnen]
}}}
[[Inhaltsverzeichnis(1)]]

[[Bild(Wiki/Icons/terminal.png, 48, align=left)]]
[github:fcambus/ansiweather:Ansiweather] {en} ist ein kleines Shell-Skript, das Wetterinformationen von [http://openweathermap.org/ OpenWeatherMap] {en} bezieht und diese im [:Terminal:Terminal] bzw. in einer virtuellen Konsole farbig anzeigen kann. Es kann entweder als alleinstehendes Programm oder in anderen Skripten verwendet werden.

= Installation =
Ansiweather kann ab [:Xenial:Ubuntu 16.04] direkt aus den offiziellen Paketquellen installiert werden [1]:

{{{#!vorlage Paketinstallation
ansiweather, universe
}}}

== Manuell ==
Die aktuelle Version von Ansiweather kann manuell installiert werden. Als Voraussetzung zur Umwandlung der Wetterdaten wird das Werkzeug [:jq:] benötigt:

{{{#!vorlage Paketinstallation
jq, universe
}}}
Zum Herunterladen der Wetterdaten zusätzlich entweder [:wget:], '''ftp''' oder [:cURL:] (die unten angegebene Beispielkonfiguration nutzt cURL). Zur Umrechnung von Einheiten wird außerdem das Kommandozeilenprogramm '''bc''' verwendet, das bei Ubuntu bereits vorinstalliert ist.

Anschließend die Datei [https://raw.githubusercontent.com/fcambus/ansiweather/master/ansiweather ansiweather] {dl} herunterladen, als '''~/bin/ansiweather''' im [:Homeverzeichnis:] speichern und ausführbar machen:

{{{#!vorlage Befehl
mkdir ~/bin
cd ~/bin
wget https://raw.githubusercontent.com/fcambus/ansiweather/master/ansiweather
chmod u+x ansiweather
}}}
Wenn eine systemweite Nutzung gewünscht ist, mit Root-Rechten [2] nach '''/usr/local/bin/''' kopieren.

[[Vorlage(Fremd, Software, "")]]

= Bedienung =
Das Programm wird im Terminal aufgerufen [3]:

{{{#!vorlage Befehl
ansiweather [OPTIONEN]
}}}
Ruft man es ohne Optionen auf, wird das regionale Wetter für [wikipedia:Rzeszów:] (Polen) in englischer Sprache als Text ausgegeben/angezeigt. Beispiel:

{{{
 Current weather in Rzeszow => 19 °C ☔  - Wind => 3.51 m/s WSW - Humidity => 93 %
 - Pressure => 1015 hPa - Sunrise => Jun 13 04:42:52 - Sunset => Jun 13 09:30:02
}}}
Die wichtigste Option ist daher die Angabe des gewünschten Orts (location) mit `-l ORT,LAND`.

{{{#!vorlage Tabelle
<-2 tablestyle="width: 97%;" rowclass="titel"> Optionen von ansiweather
+++
<rowclass="kopf"> Parameter
Bedeutung
+++
`-l ORT,LAND`
Ortsangabe, z.B. `-l Berlin,DE`
+++
<rowclass="highlight">`-u metric/imperial`
Verwendete Einheiten, Standard: `metric`
+++
`-f N`
Wettervorhersage für N Tage (max. 7 Tage). Aktuelle Wetterdaten werden dann nicht angezeigt.
+++
<rowclass="highlight">`-d true/false`
Sonnenaufgang/-untergang anzeigen/verbergen
+++
`-s true/false`
Wettersymbole anzeigen/verbergen (benötigt unicode-fähiges Terminal)
}}}
Weitere Optionen sind der [:man:Manpage] zu entnehmen. Bevorzugt man eine deutschsprachige Ausgabe, legt man eine [#Konfiguration Konfigurationsdatei] an und übersetzt dort die verwendeten Begriffe (siehe nächster Abschnitt).

= Konfiguration =
Dauerhaft gewünschte Optionen lassen sich über die Datei '''~/.ansiweatherrc''' vornehmen (siehe auch [https://github.com/fcambus/ansiweather/blob/master/ansiweatherrc.example ansiweatherrc.example] {en}). Beispiel:

{{{
api_key:85a4e3c55b73909f42c6a23ec35b7147
location:Berlin,DE
fetch_cmd:curl -s
units:metric
symbols:false
forecast:0
show_daylight:true
dateformat:%a %b %d
timeformat:%b %d %R

# Text and Colors
background:\033[44m
text:\033[36;1m
data:\033[33;1m
delimiter:\033[35m=>
dashes:\033[34m-
greeting_text:Aktuelles Wetter in
wind_text:Windgeschwindigkeit
humidity_text:Luftfeuchtigkeit
pressure_text:Luftdruck
sunrise_text:Sonnenaufgang
sunset_text:Sonnenuntergang

# Icons
sun:\033[33;1m\xe2\x98\x80
moon:\033[36m\xe2\x98\xbd
clouds:\033[37;1m\xe2\x98\x81
rain:\xe2\x98\x94
fog:\033[37;1m\xe2\x96\x92
mist:\033[34m\xe2\x96\x91
haze:\033[33m\xe2\x96\x91
snow:\033[37;1m\xe2\x9d\x84
thunderstorm:\xe2\x9a\xa1
}}}

[[Bild(./ansiweather.png)]]

= Links =
 * [github:fcambus/ansiweather:Projektseite] {en}
  * [man:ansiweather:Manpage] {en}
 * [askubuntu:390329/weather-from-terminal:Weather from terminal] {en} - Alternativen zu Ansiweather
 * [:Wetteranzeige#finger-graph-no:finger@graph.no]
 * [:Shell/Anwendungen:] {Übersicht} Programmübersicht

#tag: Shell, Wetter