Merge branch 'master' into functioning_docker

This commit is contained in:
Igor Chubin 2022-04-19 07:59:44 +02:00 committed by GitHub
commit 937389571a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
39 changed files with 1363 additions and 218 deletions

View file

@ -1,13 +1,16 @@
*wttr.in — the right way to check the weather!*
*wttr.in — the right way to ~check~ `curl` the weather!*
wttr.in is a console-oriented weather forecast service that supports various information
representation methods like terminal-oriented ANSI-sequences for console HTTP clients
(curl, httpie, or wget), HTML for web browsers, or PNG for graphical viewers.
wttr.in uses [wego](http://github.com/schachmat/wego) for visualization
and various data sources for weather forecast information.
Originally started as a small project, a wrapper for [wego](https://github.com/schachmat/wego),
intended to demonstrate the power of the console-oriented services,
*wttr.in* became a popular weather reporting service, handling tens millions of queries daily.
You can see it running here: [wttr.in](http://wttr.in).
You can see it running here: [wttr.in](https://wttr.in).
[Documentation](https://wttr.in/:help) | [Usage](https://github.com/chubin/wttr.in#usage) | [One-line output](https://github.com/chubin/wttr.in#one-line-output) | [Data-rich output format](https://github.com/chubin/wttr.in#data-rich-output-format-v2) | [Map view](https://github.com/chubin/wttr.in#map-view-v3) | [Output formats](https://github.com/chubin/wttr.in#different-output-formats) | [Moon phases](https://github.com/chubin/wttr.in#moon-phases) | [Internationalization](https://github.com/chubin/wttr.in#internationalization-and-localization) | [Windows issues](https://github.com/chubin/wttr.in#internationalization-and-localization) | [Installation](https://github.com/chubin/wttr.in#installation)
## Usage
@ -25,7 +28,7 @@ You can access the service from a shell or from a Web browser like this:
Here is an actual weather report for your location (it's live!):
![Weather Report](http://wttr.in/MyLocation.png?)
![Weather Report](https://wttr.in/MyLocation.png?)
(It's not your actual location - GitHub's CDN hides your real IP address with its own IP address,
but it's still a live weather report in your language.)
@ -33,7 +36,7 @@ but it's still a live weather report in your language.)
Or in PowerShell:
```PowerShell
Invoke-RestMethod http://wttr.in
Invoke-RestMethod https://wttr.in
```
Want to get the weather information for a specific location? You can add the desired location to the URL in your
@ -70,7 +73,7 @@ You can also use IP-addresses (direct) or domain names (prefixed with `@`) to sp
$ curl wttr.in/@github.com
$ curl wttr.in/@msu.ru
To get detailed information online, you can access the [/:help](http://wttr.in/:help) page:
To get detailed information online, you can access the [/:help](https://wttr.in/:help) page:
$ curl wttr.in/:help
@ -78,10 +81,18 @@ To get detailed information online, you can access the [/:help](http://wttr.in/:
### Weather Units
By default the USCS units are used for the queries from the USA and the metric system for the rest of the world.
You can override this behavior by adding `?u` or `?m` to a URL like this:
You can override this behavior by adding `?u`, `?m` or `?M` to a URL like this:
$ curl wttr.in/Amsterdam?u
$ curl wttr.in/Amsterdam?m
$ curl wttr.in/Amsterdam?u # USCS (used by default in US)
$ curl wttr.in/Amsterdam?m # metric (SI) (used by default everywhere except US)
$ curl wttr.in/Amsterdam?M # metric (SI), but show wind speed in m/s
If you have several options to pass, write them without delimiters in between for the one-letter options,
and use `&` as a delimiter for the long options with values:
$ curl 'wttr.in/Amsterdam?m2&lang=nl'
It would be a rough equivalent of `-m2 --lang nl` for the GNU CLI syntax.
## Supported output formats and views
@ -133,6 +144,9 @@ You can embed a special wttr.in widget, that displays the weather condition for
## One-line output
One-line output format is convenient to be used to show weather info
in status bar of different programs, such as *tmux*, *weechat*, etc.
For one-line output format, specify additional URL parameter `format`:
```
@ -192,7 +206,10 @@ So, these two calls are the same:
$ curl wttr.in/London?format="%l:+%c+%t\n"
London: ⛅️ +7⁰C
```
Keep in mind, that when using in `tmux.conf`, you have to escape `%` with `%`, i.e. write there `%%` instead of `%`.
### tmux
When using in `tmux.conf`, you have to escape `%` with `%`, i.e. write there `%%` instead of `%`.
The output does not contain new line by default, when the %-notation is used, but it does contain it when preconfigured format (`1`,`2`,`3` etc.)
are used. To have the new line in the output when the %-notation is used, use '\n' and single quotes when doing a query from the shell.
@ -208,6 +225,20 @@ set -g status-right "$WEATHER ..."
```
![wttr.in in tmux status bar](https://wttr.in/files/example-tmux-status-line.png)
### Weechat
To embedded into an IRC ([Weechat](https://github.com/weechat/weechat)) client's status bar:
```
/alias add wttr /exec -pipe "/set plugins.var.python.text_item.wttr all" url:wttr.in/Montreal?format=%l:+%c+%f+%h+%p+%P+%m+%w+%S+%s
/trigger add wttr timer 60000;0;0 "" "" "/wttr"
/eval /set weechat.bar.status.items ${weechat.bar.status.items},wttr
/eval /set weechat.startup.command_after_plugins ${weechat.startup.command_after_plugins};/wttr
```
![wttr.in in weechat status bar](https://i.imgur.com/IyvbxjL.png)
### Emojis support
To see emojis in terminal, you need:
1. Terminal support for emojis (was added to Cairo 1.15.8);
@ -332,7 +363,7 @@ Terminal with inline images protocols support:
| mlterm | X11 | yes | Sixel |
| kitty | X11 | yes | Kitty |
| wezterm | X11 | yes | IIP |
| aminal | X11 | yes | Sixel |
| Darktile | X11 | yes | Sixel |
| Jexer | X11 | yes | Sixel |
| GNOME Terminal | X11 | [in-progress](https://gitlab.gnome.org/GNOME/vte/-/issues/253) | Sixel |
| alacritty | X11 | [in-progress](https://github.com/alacritty/alacritty/issues/910) | Sixel |
@ -497,7 +528,7 @@ The third option is to choose the language using the DNS name used in the query:
wttr.in is currently translated into 54 languages, and the number of supported languages is constantly growing.
See [/:translation](http://wttr.in/:translation) to learn more about the translation process,
See [/:translation](https://wttr.in/:translation) to learn more about the translation process,
to see the list of supported languages and contributors, or to know how you can help to translate wttr.in
in your language.
@ -509,7 +540,7 @@ There are currently two Windows related issues that prevent the examples found o
### Garbage characters in the output
There is a limitation of the current Win32 version of `curl`. Until the [Win32 curl issue](https://github.com/chubin/wttr.in/issues/18#issuecomment-474145551) is resolved and rolled out in a future Windows release, it is recommended that you use Powershells `Invoke-Web-Request` command instead:
- `(Invoke-WebRequest http://wttr.in).Content`
- `(Invoke-WebRequest https://wttr.in).Content`
### Missing or double wide diagonal wind direction characters
The second issue is regarding the width of the diagonal arrow glyphs that some Windows Terminal Applications such as the default `conhost.exe` use. At the time of writing this, `ConEmu.exe`, `ConEmu64.exe` and Terminal Applications built on top of ConEmu such as Cmder (`cmder.exe`) use these double-wide glyphs by default. The result is the same with all of these programs, either a missing character for certain wind directions or a broken table in the output or both. Some third-party Terminal Applications have addressed the wind direction glyph issue but that fix depends on the font and the Terminal Application you are using.

View file

@ -133,7 +133,7 @@ def translate(text, lang):
def _log_unknown_translation(lang, text):
with open(MISSING_TRANSLATION_LOG % lang, "a") as f_missing_translation:
f_missing_translation.write(text)
f_missing_translation.write(text+"\n")
if "," in text:
terms = text.split(",")

View file

@ -14,6 +14,10 @@ import (
func processRequest(r *http.Request) responseWithHeader {
var response responseWithHeader
if response, ok := redirectInsecure(r); ok {
return *response
}
if dontCache(r) {
return get(r)
}
@ -50,7 +54,7 @@ func processRequest(r *http.Request) responseWithHeader {
if !foundInCache {
lruCache.Add(cacheDigest, responseWithHeader{InProgress: true})
response = get(r)
if response.StatusCode == 200 || response.StatusCode == 304 {
if response.StatusCode == 200 || response.StatusCode == 304 || response.StatusCode == 404 {
lruCache.Add(cacheDigest, response)
} else {
log.Printf("REMOVE: %d response for %s from cache\n", response.StatusCode, cacheDigest)
@ -120,8 +124,56 @@ func dontCache(req *http.Request) bool {
// dont cache cyclic requests
loc := strings.Split(req.RequestURI, "?")[0]
if strings.Contains(loc, ":") {
return true
return strings.Contains(loc, ":")
}
// redirectInsecure returns redirection response, and bool value, if redirection was needed,
// if the query comes from a browser, and it is insecure.
//
// Insecure queries are marked by the frontend web server
// with X-Forwarded-Proto header:
//
// proxy_set_header X-Forwarded-Proto $scheme;
//
//
func redirectInsecure(req *http.Request) (*responseWithHeader, bool) {
if isPlainTextAgent(req.Header.Get("User-Agent")) {
return nil, false
}
if strings.ToLower(req.Header.Get("X-Forwarded-Proto")) == "https" {
return nil, false
}
target := "https://" + req.Host + req.URL.Path
if len(req.URL.RawQuery) > 0 {
target += "?" + req.URL.RawQuery
}
body := []byte(fmt.Sprintf(`<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 Moved</TITLE></HEAD><BODY>
<H1>301 Moved</H1>
The document has moved
<A HREF="%s">here</A>.
</BODY></HTML>
`, target))
return &responseWithHeader{
InProgress: false,
Expires: time.Now().Add(time.Duration(randInt(1000, 1500)) * time.Second),
Body: body,
Header: http.Header{"Location": []string{target}},
StatusCode: 301,
}, true
}
// isPlainTextAgent returns true if userAgent is a plain-text agent
func isPlainTextAgent(userAgent string) bool {
userAgentLower := strings.ToLower(userAgent)
for _, signature := range plainTextAgents {
if strings.Contains(userAgentLower, signature) {
return true
}
}
return false
}

View file

@ -2,6 +2,7 @@ package main
import (
"context"
"fmt"
"log"
"net"
"net/http"
@ -10,11 +11,28 @@ import (
lru "github.com/hashicorp/golang-lru"
)
const serverPort = 8083
const uplinkSrvAddr = "127.0.0.1:9002"
const uplinkTimeout = 30
const prefetchInterval = 300
const lruCacheSize = 12800
// plainTextAgents contains signatures of the plain-text agents
var plainTextAgents = []string{
"curl",
"httpie",
"lwp-request",
"wget",
"python-httpx",
"python-requests",
"openbsd ftp",
"powershell",
"fetch",
"aiohttp",
"http_get",
"xh",
}
var lruCache *lru.Cache
type responseWithHeader struct {
@ -65,5 +83,5 @@ func main() {
w.Write(response.Body)
})
log.Fatal(http.ListenAndServe(":8082", nil))
log.Fatal(http.ListenAndServe(fmt.Sprintf(":%d", serverPort), nil))
}

View file

@ -1,40 +1,40 @@
package main
import (
"log"
"sync"
"time"
)
type safeCounter struct {
v map[int]int
mux sync.Mutex
}
func (c *safeCounter) inc(key int) {
c.mux.Lock()
c.v[key]++
c.mux.Unlock()
}
// func (c *safeCounter) val(key int) int {
// c.mux.Lock()
// defer c.mux.Unlock()
// return c.v[key]
// import (
// "log"
// "sync"
// "time"
// )
//
// type safeCounter struct {
// v map[int]int
// mux sync.Mutex
// }
//
// func (c *safeCounter) reset(key int) int {
// func (c *safeCounter) inc(key int) {
// c.mux.Lock()
// defer c.mux.Unlock()
// result := c.v[key]
// c.v[key] = 0
// return result
// c.v[key]++
// c.mux.Unlock()
// }
//
// // func (c *safeCounter) val(key int) int {
// // c.mux.Lock()
// // defer c.mux.Unlock()
// // return c.v[key]
// // }
// //
// // func (c *safeCounter) reset(key int) int {
// // c.mux.Lock()
// // defer c.mux.Unlock()
// // result := c.v[key]
// // c.v[key] = 0
// // return result
// // }
//
// var queriesPerMinute safeCounter
//
// func printStat() {
// _, min, _ := time.Now().Clock()
// queriesPerMinute.inc(min)
// log.Printf("Processed %d requests\n", min)
// }
var queriesPerMinute safeCounter
func printStat() {
_, min, _ := time.Now().Clock()
queriesPerMinute.inc(min)
log.Printf("Processed %d requests\n", min)
}

View file

@ -29,7 +29,7 @@ The map view currently supports three formats:
| mlterm | X11 | yes | Sixel |
| kitty | X11 | yes | Kitty |
| wezterm | X11 | yes | IIP |
| aminal | X11 | yes | Sixel |
| Darktile | X11 | yes | Sixel |
| Jexer | X11 | yes | Sixel |
| GNOME Terminal | X11 | [in-progress](https://gitlab.gnome.org/GNOME/vte/-/issues/253) | Sixel |
| alacritty | X11 | [in-progress](https://github.com/alacritty/alacritty/issues/910) | Sixel |

View file

@ -316,5 +316,5 @@ LOCALE = {
"nn": "nn_NO", "pt": "pt_PT", "pt-br":"pt_BR", "pl": "pl_PL", "ro": "ro_RO",
"ru": "ru_RU", "sv": "sv_SE", "sk": "sk_SK", "sl": "sl_SI", "sr": "sr_RS",
"sr-lat": "sr_RS@latin", "sw": "sw_KE", "th": "th_TH", "tr": "tr_TR", "uk": "uk_UA",
"uz": "uz_UZ", "vi": "vi_VN", "zh": "zh_TW", "zu": "zu_ZA",
"uz": "uz_UZ", "vi": "vi_VN", "zh": "zh_TW", "zu": "zu_ZA", "mg": "mg_MG",
}

View file

@ -5,10 +5,22 @@ to select data source basing on location, or on the user's preferences.
## Possible data sources
* OpenWeatherMap
* AccuWeather
* Windy.com
* yr.no
* [Open weather map](https://openweathermap.org/)
* [Accu weather](https://www.accuweather.com/)
* [Windy](https://www.windy.com/?26.953,75.711,5)
* [Yr](https://www.yr.no/nb)
* [BBC WeatherFeeds](https://support.bbc.co.uk/platform/feeds/WeatherFeeds.htm)
* http://www.bom.gov.au
* https://weather.gc.ca
* [Bom](http://www.bom.gov.au)
* [IMD](https://mausam.imd.gov.in/)
* [darksky](https://darksky.net/forecast/40.7127,-74.0059/us12/en)
* [weather bug](https://www.weatherbug.com/)
* [weather underground](https://www.wunderground.com/)
* [brightsky](https://brightsky.dev/)
## Air Quality sources
* http://aqicn.org/
* https://docs.airnowapi.org/
* https://www2.purpleair.com/community/faq#hc-access-the-json

View file

@ -85,10 +85,13 @@ PLAIN_TEXT_AGENTS = [
"lwp-request",
"wget",
"python-requests",
"python-httpx",
"openbsd ftp",
"powershell",
"fetch",
"aiohttp",
"http_get",
"xh",
]
PLAIN_TEXT_PAGES = [':help', ':bash.function', ':translation', ':iterm2']

View file

@ -334,6 +334,8 @@ def _get_hemisphere(location):
"""
if all(location):
location_string = ", ".join(location)
else:
return True
geolocation = _geolocator(location_string)
if geolocation is None:

View file

@ -5,30 +5,30 @@ Translation of almost everything.
"""
FULL_TRANSLATION = [
"am", "ar", "af", "be", "ca", "da", "de", "el", "et",
"fr", "fa", "hi", "hu", "ia", "id", "it",
"am", "ar", "af", "be", "bn", "ca", "da", "de", "el", "et",
"fr", "fa", "hi", "hu", "ia", "id", "it", "lt", "mg",
"nb", "nl", "oc", "pl", "pt-br", "ro",
"ru", "tr", "th", "uk", "vi", "zh-cn", "zh-tw"
"ru", "ta", "tr", "th", "uk", "vi", "zh-cn", "zh-tw",
]
PARTIAL_TRANSLATION = [
"az", "bg", "bs", "cy", "cs",
"eo", "es", "eu", "fi", "ga", "hi", "hr",
"hy", "is", "ja", "jv", "ka", "kk",
"ko", "ky", "lt", "lv", "mk", "ml", "nl", "fy",
"nn", "pt", "pt-br", "sk", "sl", "sr", "sr-lat",
"sv", "sw", "te", "uz",
"zh", "zu", "he",
"ko", "ky", "lv", "mk", "ml", "mr", "nl", "fy",
"nn", "pt", "pt-br", "sk", "sl", "sr",
"sr-lat", "sv", "sw", "te", "uz", "zh",
"zu", "he",
]
PROXY_LANGS = [
"af", "am", "ar", "az", "be", "bs", "ca",
"af", "am", "ar", "az", "be", "bn", "bs", "ca",
"cy", "de", "el", "eo", "et", "eu", "fa", "fr",
"fy", "ga", "he", "hr", "hu", "hy",
"ia", "id", "is", "it", "ja", "kk",
"lv", "mk", "nb", "nn", "oc", "ro",
"ru", "sl", "th", "pt-br", "uk", "uz",
"vi", "zh-cn", "zh-tw",
"lt", "lv", "mg", "mk", "mr", "nb", "nn", "oc",
"ro", "ru", "sl", "th", "pt-br", "uk",
"uz", "vi", "zh-cn", "zh-tw",
]
SUPPORTED_LANGS = FULL_TRANSLATION + PARTIAL_TRANSLATION
@ -65,6 +65,11 @@ een van die koudste permanent bewoonde plekke op aarde.
Не успяхме да открием вашето местоположение
така че ви доведохме в Оймякон,
едно от най-студените постоянно обитавани места на планетата.
""",
'bn' : u"""
ি, আপন অবস আমর ইনি
, আমর আপন ি এসি ওয়মিকন,
ি তলতম জন-বসতি একটি
""",
'bs': u"""
Nismo mogli pronaći vašu lokaciju,
@ -176,6 +181,11 @@ Ci auguriamo che le condizioni dove lei si trova siano migliori!
지정된 장소를 찾을 없습니다,
대신 오이먀콘의 일기 예보를 표시합니다,
오이먀콘은 지구상에서 가장 추운 곳에 위치한 마을입니다!
""",
'lt': u"""
Mums nepavyko rasti jūsų vietovės,
todėl mes nukreipėme jus į Omjakoną,
vieną šalčiausių nuolatinių gyvenviečių planetoje.
""",
'lv': u"""
Mēs nevarējām atrast jūsu atrašanās vietu tādēļ nogādājām jūs Oimjakonā,
@ -185,6 +195,11 @@ vienā no aukstākajām apdzīvotajām vietām uz planētas.
Неможевме да ја пронајдеме вашата локација,
затоа ве однесовме во Ојмајкон,
еден од најладните трајно населени места на планетата.
""",
'mr': u"""
आमह मच थळ पडल .
हण आम ओयम आणल आह,
ि आपल रहवर सर वसि एक आह.
""",
'nb': u"""
Vi kunne ikke finne din lokasjon,
@ -298,6 +313,15 @@ một trong những nơi lạnh nhất có người sinh sống trên trái đ
我們找不到您的位置
所以我們帶您到奧伊米亞康
這個星球上有人類定居最冷之處
""",
'mg': u"""
Tsy hita ny toerana misy anao koa nentinay tany Oymyakon ianao,
iray amin'ireo toerana mangatsiaka indrindra tsisy mponina eto an-tany.
""",
'ta': u"""
உஙகள இரிடத எஙகள கணிி ியவி
எனவ கள உஙகள ஓமி அழ வந.
ிரகதி ி ிரநதரம வசி இடஙகளி ஒன.
""",
},
@ -308,6 +332,7 @@ một trong những nơi lạnh nhất có người sinh sống trên trái đ
'ar': u'موقع غير معروف',
'be': u'Невядомае месцазнаходжанне',
'bg': u'Неизвестно местоположение',
'bn': u'অজানা অবস্থান',
'bs': u'Nepoznatoja lokacija',
'ca': u'Ubicació desconeguda',
'cs': u'Neznámá poloha',
@ -332,8 +357,10 @@ một trong những nơi lạnh nhất có người sinh sống trên trái đ
'ja': u'未知の場所です',
'ko': u'알 수 없는 장소',
'kk': u'',
'lt': u'Nežinoma vietovė',
'lv': u'Nezināma atrašanās vieta',
'mk': u'Непозната локација',
'mr': u'अज्ञात स्थळ',
'nb': u'Ukjent sted',
'nl': u'Onbekende locatie',
'oc': u'Emplaçament desconegut',
@ -355,6 +382,8 @@ một trong những nơi lạnh nhất có người sinh sống trên trái đ
'zh': u'未知地点',
'vi': u'Địa điểm không xác định',
'zh-tw': u'未知位置',
'mg': u'Toerana tsy fantatra',
'ta': u'தெரியாத இடம்',
},
'LOCATION': {
@ -363,6 +392,7 @@ một trong những nơi lạnh nhất có người sinh sống trên trái đ
'ar': u'الموقع',
'be': u'Месцазнаходжанне',
'bg': u'Местоположение',
'bn': u'অবস্থান',
'bs': u'Lokacija',
'ca': u'Ubicació',
'cs': u'Poloha',
@ -387,8 +417,10 @@ một trong những nơi lạnh nhất có người sinh sống trên trái đ
'ja': u'位置情報',
'ko': u'위치',
'kk': u'',
'lt': u'Vietovė',
'lv': u'Atrašanās vieta',
'mk': u'Локација',
'mr': u'स्थळ',
'nb': u'Sted',
'nl': u'Locatie',
'oc': u'Emplaçament',
@ -409,6 +441,8 @@ một trong những nơi lạnh nhất có người sinh sống trên trái đ
'uk': u'Місцезнаходження',
'vi': u'Địa điểm',
'zh-tw': u'位置',
'mg': u'Toerana',
'ta': u'இடம்',
},
'CAPACITY_LIMIT_REACHED': {
@ -452,6 +486,12 @@ U kan vir https://twitter.com/igor_chubin volg vir opdaterings.
Ето доклад за града по подразбиране (просто да видите как изглежда).
Ще осогурим допълнителни заявки максимално бързо.
Може да последвате https://twitter.com/igor_chubin за обновления.
""",
'bn': u"""
ি, এই আবহওয পরি আম ইর হয আসছ
এখ িফল শহর আবহওয রতিদন রয (এটি খত মন আপন জন)
আমর নত ইর ওয় যবস করছি
আপড জন আপনি https://twitter.com/igor_chubin অনসরণ করত
""",
'bs': u"""
Žao mi je, mi ponestaje upita i vremenska prognoza u ovom trenutku.
@ -557,6 +597,13 @@ Potete seguire https://twitter.com/igor_chubin per gli aggiornamenti.
쿼리 요청이 가능한 빨리 이루어질 있도록 하겠습니다.
업데이트 소식을 원하신다면 https://twitter.com/igor_chubin 팔로우 해주세요.
======================================================================================
""",
'lt': u"""
Atsiprašome, šiuo metu pasiekėme orų prognozės paslaugos užklausų ribą.
Štai orų prognozė numatomam miestui (tam, kad parodytume, kaip ji atrodo).
Naujas užklausas priimsime, kai tik galėsime.
Atnaujinimus galite sekti https://twitter.com/igor_chubin
======================================================================================
""",
'lv': u"""
Atvainojiet, uz doto brīdi mēs esam mazliet noslogoti.
@ -571,6 +618,13 @@ Jūs varat sekot https://twitter.com/igor_chubin lai redzētu visus jaunumus.
Ќе добиеме нови барања најбрзо што можеме.
Следете го https://twitter.com/igor_chubin за известувања
======================================================================================
""",
'mr': u"""
षमस, षण आम हव पर कर शकत .
एक वनिि शहर हव अहव आह (वळ कस िसत खवणकरि).
आम लवकर लवकर करण रयत कर.
अदवत ि https://twitter.com/igor_chubin अनसरण कर शकत.
======================================================================================
""",
'nb': u"""
Beklager, vi kan ikke værtjenesten for øyeblikket.
@ -690,6 +744,18 @@ Bạn có thể theo dõi https://twitter.com/igor_chubin để cập nhật th
我們將盡快取得新的資料
您可以追蹤 https://twitter.com/igor_chubin 以取得更新
======================================================================================
""",
'mg': u"""
Miala tsiny fa misedra olana ny sampan-draharaha momba ny toetrandro amin'izao fotoana izao.
Ity ny tatitra momba ny toetr'andro ho an'ny tanàna mahazatra (mba hampisehoana anao ny endriny).
Haivaly aminao haingana ny fangatahanao.
Azonao atao ny manaraka ny pejy https://twitter.com/igor_chubin.
""",
'ta': u"""
மனிகவ, தற ி ினவலகள எஙகளிடம இல.
இயலி நகரதி ி அறி இத (அத எபபடி இர எனபத உஙகள ிபதற).
ி ிி ி ினவலகள .
ிகள கள https://twitter.com/igor_chubin ஐப ிடரல.
""",
},
@ -704,6 +770,7 @@ Bạn có thể theo dõi https://twitter.com/igor_chubin để cập nhật th
'af': u'Nuwe eienskap: veeltalige name vir liggings \033[92mwttr.in/станция+Восток\033[0m (in UTF-8) en ligging soek \033[92mwttr.in/~Kilimanjaro\033[0m (plaas net ~ vooraan)',
'be': u'Новыя магчымасці: назвы месц на любой мове \033[92mwttr.in/станция+Восток\033[0m (в UTF-8) i пошук месц \033[92mwttr.in/~Kilimanjaro\033[0m (трэба дадаць ~ ў пачатак)',
'bg': u'Нова функционалност: многоезични имена на места\033[92mwttr.in/станция+Восток\033[0m (в UTF-8) и в търсенето \033[92mwttr.in/~Kilimanjaro\033[0m (добавете ~ преди)',
'bn': u'নতুন ফিচার : বহুভাষিক অবস্থানের নাম \ 033 [92mwttr.in/станция+Восток\033 [0m (UTF-8)] এবং অবস্থান অনুসন্ধান \ 033 [92mwttr.in/~Kilimanjaro\033 [0m (শুধু আগে ~ যোগ করুন)',
'bs': u'XXXXXXXXXXXXXXXXXXXX: XXXXXXXXXXXXXXXXXXXXXXXXXXXXX\033[92mwttr.in/станция+Восток\033[0m (XX UTF-8) XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
'ca': u'Noves funcionalitats: noms d\'ubicació multilingües \033[92mwttr.in/станция+Восток\033[0m (en UTF-8) i la ubicació de recerca \033[92mwttr.in/~Kilimanjaro\033[0m (només cal afegir ~ abans)',
'es': u'Nuevas funcionalidades: los nombres de las ubicaciones en varios idiomas \033[92mwttr.in/станция+Восток\033[0m (em UTF-8) y la búsqueda por ubicaciones \033[92mwttr.in/~Kilimanjaro\033[0m (tan solo inserte ~ al principio)',
@ -723,8 +790,10 @@ Bạn có thể theo dõi https://twitter.com/igor_chubin để cập nhật th
'it': u'Nuove funzionalità: nomi delle località multilingue \033[92mwttr.in/станция+Восток\033[0m (in UTF-8) e ricerca della località \033[92mwttr.in/~Kilimanjaro\033[0m (basta premettere ~)',
'ko': u'새로운 기능: 다국어로 대응된 위치 \033[92mwttr.in/서울\033[0m (UTF-8에서) 장소 검색 \033[92mwttr.in/~Kilimanjaro\033[0m (앞에 ~를 붙이세요)',
'kk': u'',
'lt': u'Naujiena: daugiakalbiai vietovių pavadinimai \033[92mwttr.in/станция+Восток\033[0m (UTF-8) ir vietovių paieška \033[92mwttr.in/~Kilimanjaro\033[0m (tiesiog priekyje pridėkite ~)',
'lv': u'Jaunums: Daudzvalodu atrašanās vietu nosaukumi \033[92mwttr.in/станция+Восток\033[0m (in UTF-8) un dabas objektu meklēšana \033[92mwttr.in/~Kilimanjaro\033[0m (tikai priekšā pievieno ~)',
'mk': u'Нова функција: повеќе јазично локациски имиња \033[92mwttr.in/станция+Восток\033[0m (во UTF-8) и локациско пребарување \033[92mwttr.in/~Kilimanjaro\033[0m (just add ~ before)',
'mr': u'नवीन वैशिष्ट्य: स्थळांची बहुभाषिक नावे \033[92mwttr.in/станция+Восток\033[0m (UTF-8 मध्ये) आणि स्थळ शोध \033[92mwttr.in/~Kilimanjaro\033[0m (फक्त आधी ~ जोडा)',
'oc': u'Novèla foncionalitat : nom de lòc multilenga \033[92mwttr.in/станция+Восток\033[0m (en UTF-8) e recèrca de lòc \033[92mwttr.in/~Kilimanjaro\033[0m (solament ajustatz ~ abans)',
'pl': u'Nowa funkcjonalność: wielojęzyczne nazwy lokalizacji \033[92mwttr.in/станция+Восток\033[0m (w UTF-8) i szukanie lokalizacji \033[92mwttr.in/~Kilimanjaro\033[0m (poprzedź zapytanie ~ - znakiem tyldy)',
'pt': u'Nova funcionalidade: nomes de localidades em várias línguas \033[92mwttr.in/станция+Восток\033[0m (em UTF-8) e procura por localidades \033[92mwttr.in/~Kilimanjaro\033[0m (é só colocar ~ antes)',
@ -740,6 +809,8 @@ Bạn có thể theo dõi https://twitter.com/igor_chubin để cập nhật th
'uk': u'Спробуйте: назви місць будь-якою мовою \033[92mwttr.in/станція+Восток\033[0m (в UTF-8) та пошук місць \033[92mwttr.in/~Kilimanjaro\033[0m (потрібно додати ~ спочатку)',
'vi': u'Chức năng mới: tên địa điểm đa ngôn ngữ \033[92mwttr.in/станция+Восток\033[0m (dùng UTF-8) và tìm kiếm địa điểm \033[92mwttr.in/~Kilimanjaro\033[0m (chỉ cần thêm ~ phía trước)',
'zh-tw': u'新功能:多語言地點名稱 \033[92mwttr.in/станция+Восток\033[0m (使用 UTF-8 編碼)與位置搜尋 \033[92mwttr.in/~Kilimanjaro\033[0m (只要在地點前加 ~ 就可以了)',
'mg': u'Fanatsrana vaovao: anarana toerana amin\'ny fiteny maro\033[92mwttr.in/станция+Восток\033[0m (en UTF-8) sy fitadiavana toerana \033[92mwttr.in/~Kilimanjaro\033[0m (ampio ~ fotsiny eo aloha)',
'ta': u'புதிய அம்சம்: பன்மொழி இருப்பிடப் பெயர்கள் \033[92mwttr.in/станция+Восток\033[0m (UTF-8 இல்) மற்றும் இருப்பிடத் தேடல் \033[92mwttr.in/~Kilimanjaro\033[0m (முன் ~ஐச் சேர்க்கவும்)',
},
'FOLLOW_ME': {
@ -749,6 +820,7 @@ Bạn có thể theo dõi https://twitter.com/igor_chubin để cập nhật th
'am': u'ለተጨማሪ wttr.in ዜና እና መረጃ \033[46m\033[30m@igor_chubin\033[0m ን ይከተሉ',
'be': u'Сачыце за \033[46m\033[30m@igor_chubin\033[0m за навінамі wttr.in',
'bg': u'Последвай \033[46m\033[30m@igor_chubin\033[0m за обновления свързани с wttr.in',
'bn': u'wttr.in আপডেটের জন্য \033[46m\033[30m@igor_chubin\033[0m কে অনুসরণ করুন',
'bs': u'XXXXXX \033[46m\033[30m@igor_chubin\033[0m XXXXXXXXXXXXXXXXXXX',
'ca': u'Segueix \033[46m\033[30m@igor_chubin\033[0m per actualitzacions de wttr.in',
'es': u'Sigue a \033[46m\033[30m@igor_chubin\033[0m para enterarte de las novedades de wttr.in',
@ -766,8 +838,10 @@ Bạn có thể theo dõi https://twitter.com/igor_chubin để cập nhật th
'it': u'Seguite \033[46m\033[30m@igor_chubin\033[0m per aggiornamenti a wttr.in',
'ko': u'wttr.in의 업데이트 소식을 원하신다면 \033[46m\033[30m@igor_chubin\033[0m 을 팔로우 해주세요',
'kk': u'',
'lt': u'wttr.in atnaujinimus sekite \033[46m\033[30m@igor_chubin\033[0m',
'lv': u'Seko \033[46m\033[30m@igor_chubin\033[0m , lai uzzinātu wttr.in jaunumus',
'mk': u'Следете \033[46m\033[30m@igor_chubin\033[0m за wttr.in новости',
'mr': u'wttr.in च्या अद्यावत माहितीसाठी \033[46m\033[30m@igor_chubin\033[0m चे अनुसरण करा',
'nb': u'Følg \033[46m\033[30m@igor_chubin\033[0m for wttr.in oppdateringer',
'nl': u'Volg \033[46m\033[30m@igor_chubin\033[0m voor wttr.in updates',
'oc': u'Seguissètz \033[46m\033[30m@igor_Chubin\033[0m per demorar informat sus wttr.in',
@ -786,6 +860,8 @@ Bạn có thể theo dõi https://twitter.com/igor_chubin để cập nhật th
'uk': u'Нові можливості wttr.in публікуються тут: \033[46m\033[30m@igor_chubin\033[0m',
'vi': u'Theo dõi \033[46m\033[30m@igor_chubin\033[0m để cập nhật thông tin về wttr.in',
'zh-tw': u'追蹤 \033[46m\033[30m@igor_chubin\033[0m 以取得更多 wttr.in 的動態',
'mg': u'Araho ao ny pejy \033[46m\033[30m@igor_Chubin\033[0m raha toa ka te hahazo vaovao momban\'ny wttr.in',
'ta': u'wttr.in புதுப்பிப்புகளுக்கு \033[46m\033[30m@igor_chubin\033[0m ஐப் பின்தொடரவும்',
},
}
CAPTION = {
@ -795,6 +871,7 @@ CAPTION = {
"az": u"Hava proqnozu:",
"be": u"Прагноз надвор'я для:",
"bg": u"Прогноза за времето в:",
"bn": u"আবহাওয়ার প্রতিবেদন:",
"bs": u"Vremenske prognoze za:",
"ca": u"Informe del temps per a:",
"cs": u"Předpověď počasí pro:",
@ -831,6 +908,7 @@ CAPTION = {
"lv": u"Laika ziņas:",
"mk": u"Прогноза за времето во:",
"ml": u"കാലാവസ്ഥ റിപ്പോർട്ട്:",
"mr": u"हवामान अहवाल:",
"nb": u"Værmelding for:",
"nl": u"Weerbericht voor:",
"nn": u"Vêrmelding for:",
@ -855,6 +933,8 @@ CAPTION = {
"zh": u"天气预报:",
"zu": u"Isimo sezulu:",
"zh-tw": u"天氣報告:",
"mg": u"Toetr\'andro any :",
"ta": u"வானிலை அறிக்கை:",
}
def get_message(message_name, lang):

View file

@ -13,6 +13,7 @@ V2_TRANSLATION = {
"az": ("Hava proqnozu:", "Hava", "Saat zonası", "İndi", "Şəfəq", "Günəş çıxdı", "Zenit", "Gün batımı", "Toran"),
"be": ("Прагноз надвор'я для:", "Надвор'е", "Часавая зона", "Цяпер", "Світанак", "Усход сонца", "Зеніт", "Захад сонца", "Змярканне"),
"bg": ("Прогноза за времето в:", "", "", "", "", "", "", "", ""),
"bn" : ("আবহাওয়া প্রতিবেদন:", "আবহাওয়া", "টাইমজোন", "এখন", "ভোর", "সূর্যোদয়", "সুবিন্দু", "সূর্যাস্ত", "সন্ধ্যা"),
"bs": ("Vremenske prognoze za:", "", "", "", "", "", "", "", ""),
"ca": ("Informe del temps per a:", "", "", "", "", "", "", "", ""),
"cs": ("Předpověď počasí pro:", "", "", "", "", "", "", "", ""),
@ -28,7 +29,7 @@ V2_TRANSLATION = {
"fi": ("Säätiedotus:", "", "", "", "", "", "", "", ""),
"fr": ("Prévisions météo pour :", "Météo", "Fuseau Horaire", "Heure", "Aube", "Lever du Soleil", "Zénith", "Coucher du Soleil", "Crépuscule"),
"fy": ("Waarberjocht foar:", "", "", "", "", "", "", "", ""),
"ga": ("Réamhaisnéis na haimsire do:", "", "", "", "", "", "", "", ""),
"ga": ("Réamhaisnéis na haimsire do:", "Aimsir", "Crios ama", "Anois", "Breacadh an lae", "Éirí na gréine", "Forar", "Dul faoi na gréine", "Coineascar"),
"he": (":ריוואה גזמ תיזחת", "", "", "", "", "", "", "", ""),
"hi": ("मौसम की जानकारी", "मौसम", "समय मण्डल", "अभी", "उदय", "सूर्योदय", "चरम बिन्दु", "सूर्यास्त", "संध्याकाल"),
"hr": ("Vremenska prognoza za:", "", "", "", "", "", "", "", ""),
@ -44,10 +45,11 @@ V2_TRANSLATION = {
"kk": ("Ауа райы:", "", "", "", "", "", "", "", ""),
"ko": ("일기 예보:", "날씨", "시간대", "현재", "새벽", "일출", "정오", "일몰", "황혼"),
"ky": ("Аба ырайы:", "", "", "", "", "", "", "", ""),
"lt": ("Orų prognozė:", "", "", "", "", "", "", "", ""),
"lt": ("Orų prognozė:", "Orai", "Laiko zona", "Dabar", "Aušra", "Saulėtekis", "Zenitas", "Saulėlydis", "Sutemos"),
"lv": ("Laika ziņas:", "", "", "", "", "", "", "", ""),
"mk": ("Прогноза за времето во:", "", "", "", "", "", "", "", ""),
"ml": ("കാലാവസ്ഥ റിപ്പോർട്ട്:", "", "", "", "", "", "", "", ""),
"ml": ("കാലാവസ്ഥ റിപ്പോർട്ട്:", "കാലാവസ്", "സമയ മേഖല", "ഇപ്പോൾ", "പ്രഭാതത്തെ", "സൂര്യോദയം", "പരമോന്നത", "സൂര്യാസ്തമയം", "സന്ധ്യ"),
"mr": ("हवामान अहवालाचे ठिकाण:", "हवामान", "कालक्षेत्र", "आता", "पहाट", "सूर्योदय", "शिखरबिंदु", "सूर्यास्त", "संध्याकाळ"),
"nb": ("Værmelding for:", "", "", "", "", "", "", "", ""),
"nl": ("Weerbericht voor:", "Weer", "Tijdzone", "Nu", "Dageraad", "Zonsopkomst", "Zenit", "Zonsondergang", "Schemering"),
"nn": ("Vêrmelding for:", "", "", "", "", "", "", "", ""),
@ -63,7 +65,7 @@ V2_TRANSLATION = {
"sr-lat": ("Vremenska prognoza za:", "", "", "", "", "", "", "", ""),
"sv": ("Väderleksprognos för:", "", "", "", "", "", "", "", ""),
"sw": ("Ripoti ya hali ya hewa, jiji la:", "", "", "", "", "", "", "", ""),
"te": ("వాతావరణ సమాచారము:", "", "", "", "", "", "", "", ""),
"te": ("వాతావరణ సమాచారము:", "వాతావరణం", "కాల మండలం", "ప్రస్తుతం", "తెల్లవారుజాము", "సూర్యోదయం", "ఉన్నత స్థానం", "సూర్యాస్తమయం", "సందెచీకటి"),
"th": ("รายงานสภาพอากาศ:", "", "", "", "", "", "", "", ""),
"tr": ("Hava beklentisi:", "Hava Durumu", "Zaman Dilimi", "Şimdi", "Şafak", "Gün Doğumu", "Doruk", "Gün Batımı", "Akşam"),
"uk": ("Прогноз погоди для:", "Погода", "Часовий пояс", "Зараз", "Світанок", "Схід сонця", "Зеніт", "Захід сонця", "Сутінки"),
@ -72,4 +74,6 @@ V2_TRANSLATION = {
"zh": ("天气预报:", "天气", "时区", "当前", "黎明", "日出", "正午", "日落", "黄昏"),
"zh-tw": ("天氣預報:", "天氣", "時區", "目前", "黎明", "日出", "日正當中", "日落", "黃昏"),
"zu": ("Isimo sezulu:", "", "", "", "", "", "", "", ""),
"mg": ("Vinavina toetr'andro hoany :", "Toetr'andro", "Faritra ora", "Ora", "Mangirandratsy", "Maneno akoho", "Mitatao vovonana", "Masoandro milentika", "Crépuscule"),
"ta": ("வானிலை அறிக்கை:", "வானிலை", "நேரம் மண்டலம்", "இப்போது", "விடியல்", "சூரிய உதயம்", "ஜெனித்", "சூரிய அஸ்தமனம்", "அந்தி"),
}

View file

@ -25,7 +25,7 @@ from astral.sun import sun
import pytz
from constants import WWO_CODE, WEATHER_SYMBOL, WIND_DIRECTION, WEATHER_SYMBOL_WIDTH_VTE, WEATHER_SYMBOL_PLAIN
from constants import WWO_CODE, WEATHER_SYMBOL, WEATHER_SYMBOL_WI_NIGHT, WEATHER_SYMBOL_WI_DAY, WIND_DIRECTION, WIND_DIRECTION_WI, WEATHER_SYMBOL_WIDTH_VTE, WEATHER_SYMBOL_PLAIN
from weather_data import get_weather_data
from . import v2
from . import prometheus
@ -80,8 +80,21 @@ def render_condition(data, query):
"""Emoji encoded weather condition (c)
"""
weather_condition = WEATHER_SYMBOL[WWO_CODE[data['weatherCode']]]
spaces = " "*(WEATHER_SYMBOL_WIDTH_VTE.get(weather_condition) - 1)
if query.get("view") == "v2n":
weather_condition = WEATHER_SYMBOL_WI_NIGHT.get(
WWO_CODE.get(
data['weatherCode'], "Unknown"))
spaces = " "
elif query.get("view") == "v2d":
weather_condition = WEATHER_SYMBOL_WI_DAY.get(
WWO_CODE.get(
data['weatherCode'], "Unknown"))
spaces = " "
else:
weather_condition = WEATHER_SYMBOL.get(
WWO_CODE.get(
data['weatherCode'], "Unknown"))
spaces = " "*(3 - WEATHER_SYMBOL_WIDTH_VTE.get(weather_condition, 1))
return weather_condition + spaces
@ -169,7 +182,10 @@ def render_wind(data, query):
degree = ""
if degree:
wind_direction = WIND_DIRECTION[int(((degree+22.5)%360)/45.0)]
if query.get("view") in ["v2n", "v2d"]:
wind_direction = WIND_DIRECTION_WI[int(((degree+22.5)%360)/45.0)]
else:
wind_direction = WIND_DIRECTION[int(((degree+22.5)%360)/45.0)]
else:
wind_direction = ""
@ -358,7 +374,11 @@ def format_weather_data(query, parsed_query, data):
if format_line in PRECONFIGURED_FORMAT:
format_line = PRECONFIGURED_FORMAT[format_line]
if format_line == "j1":
if format_line in ["j1", "j2"]:
# j2 is a lightweight j1, without 'hourly' in 'weather' (weather forecast)
if "weather" in data["data"] and format_line == "j2":
for i in range(len(data["data"]["weather"])):
del data["data"]["weather"][i]["hourly"]
return render_json(data['data'])
if format_line == "p1":
return prometheus.render_prometheus(data['data'])

View file

@ -321,7 +321,7 @@ def draw_emoji(data, config):
weather_symbol = constants.WEATHER_SYMBOL_WI_NIGHT
weather_symbol_width_vte = constants.WEATHER_SYMBOL_WIDTH_VTE_WI
elif config.get("view") == "v2d":
weather_symbol = constants.WEATHER_SYMBOL_WI_NIGHT
weather_symbol = constants.WEATHER_SYMBOL_WI_DAY
weather_symbol_width_vte = constants.WEATHER_SYMBOL_WIDTH_VTE_WI
else:
weather_symbol = constants.WEATHER_SYMBOL
@ -419,13 +419,19 @@ def generate_panel(data_parsed, geo_data, config):
max_width = 72
if config.get("use_imperial"):
feels_like_query = "[.data.weather[] | .hourly[]] | .[].FeelsLikeF"
temp_query = "[.data.weather[] | .hourly[]] | .[].tempF"
wind_speed_query = "[.data.weather[] | .hourly[]] | .[].windspeedMiles"
else:
feels_like_query = "[.data.weather[] | .hourly[]] | .[].FeelsLikeC"
temp_query = "[.data.weather[] | .hourly[]] | .[].tempC"
wind_speed_query = "[.data.weather[] | .hourly[]] | .[].windspeedKmph"
precip_mm_query = "[.data.weather[] | .hourly[]] | .[].precipMM"
precip_chance_query = "[.data.weather[] | .hourly[]] | .[].chanceofrain"
feels_like_query = "[.data.weather[] | .hourly[]] | .[].FeelsLikeC"
temp_query = "[.data.weather[] | .hourly[]] | .[].tempC"
weather_code_query = "[.data.weather[] | .hourly[]] | .[].weatherCode"
wind_direction_query = "[.data.weather[] | .hourly[]] | .[].winddirDegree"
wind_speed_query = "[.data.weather[] | .hourly[]] | .[].windspeedKmph"
output = ""
@ -509,7 +515,7 @@ def textual_information(data_parsed, geo_data, config, html_output=False):
format_line = "%c %C, %t, %h, %w, %P"
current_condition = data_parsed['data']['current_condition'][0]
query = {}
query = config
weather_line = wttr_line.render_line(format_line, current_condition, query)
output.append('Weather: %s' % weather_line)

View file

@ -215,6 +215,8 @@ def _response(parsed_query, query, fast_mode=False):
logging.debug(f'No luck with cache for "{loc}", getting data for real.')
if parsed_query.get("view"):
logging.debug(f'Querying wttr_line: {query}')
if not parsed_query.get("location"):
parsed_query["location"] = loc
output = wttr_line(query, parsed_query)
elif loc == 'moon' or loc.startswith('moon@'):
logging.debug(f'Querying moon')

View file

@ -50,3 +50,4 @@ Kashan : ~Kashan,Iran
Baku : Baku,Az
Rome : Rome, Italia
YYZ : Toronto Pearson Airport
brasilia : Palacio da Alvorada,Brasilia

View file

@ -14,6 +14,7 @@ Translated/improved/corrected by:
* Basque: Iker Sagasti (@isagasti on github)
* Belarusian: Igor Chubin, Anton Zhavoronkov @edogby (on github)
* Bosnian: Ismar Kunc @ismarkunc
* Bengali: Nazia Tasnim (@appledora on github)
* Bulgarian: Vladimir Vitkov @zeridon (on github)
* Brazilian-PT: Tupã Negreiros @TupaNegreiros (on github)
* Catalan: Angel Jarabo @legna29A
@ -43,7 +44,9 @@ Translated/improved/corrected by:
* Kazakh: Akku Tutkusheva, Oleg Tropinin
* Korean: Jeremy Bae @opt9, Jung Winter @res_tin
* Latvian: Gunārs Danovskis
* Lithuanian Juras Rutavičius
* Macedonian: Matej Plavevski @MatejMecka
* Marathi: Sanket Pandit Garade (@sanketgarade on github)
* Norwegian: Fredrik Fjeld @fredrikfjeld
* Nynorsk: Kevin Brubeck Unhammer (https://unhammer.org/k/)
* Occitan: Quentin PAGÈS @Quenty-tolosan (gh)
@ -58,7 +61,10 @@ Translated/improved/corrected by:
* Spanish: Fernando Bitti Loureiro @fbitti (on github)
* Swedish: John Eriksson
* Swahili: Joel Mukuthu
* Turkish: Atabey Kaygun, Yilmaz @edigu, Volkan Tokmak(@volkanto)
* Tamil: Parthiban @parthi1984 (on github)
* Telugu: Pavan Srinivas Mamidala @pavansrinivasmamidala (on github),
Vishal Boddu @bodduv (on github)
* Turkish: Atabey Kaygun, Yilmaz @edigu, Volkan Tokmak(@volkanto), Oğuz Ersen
* Thai: Vatunyoo Suwannapisit @kerlos
* Ukrainian: Igor Chubin, Serhiy @pavse
* Uzbek: Shukhrat Mukimov

View file

@ -0,0 +1,67 @@
ব্যবহার:
$ curl wttr.in # এখন যেখানে আছ
$ curl wttr.in/cdg # প্যারিস - চার্লস ডি গল বিমানবন্দরে আবহাওয়ার পূর্বাভাস
গৃহীত কমান্ডের ধরন:
/paris # শহরের নাম
/~Eiffel+tower # যেকোনো স্থানের নাম
/Москва # ইউনিকোড নাম বা যেকোনো ভাষায় যেকোনো স্থানের নাম
/muc # বিমানবন্দর কোড (3 অক্ষর)
/@stackoverflow.com # ডোমেন নাম
/94107 # জিপ কোড (শুধুমাত্র মার্কিন যুক্তরাষ্ট্রে)
/-78.46,106.79 # জিপিএস স্থানাঙ্ক
বিশেষ কমান্ড:
/moon # চাঁদের পর্যায়গুলি (একই নামের শহরগুলি অ্যাক্সেস করতে যোগ করুন, + US বা, + France)
/moon@2016-10-25 # এই তারিখের জন্য চাঁদের পর্যায়গুলি (@ 2016-10-25)
ইউনিট:
?m # মেট্রিক সিস্টেম (মার্কিন যুক্তরাষ্ট্র ছাড়া সব জায়গায় ডিফল্ট)
?u # USCS (মার্কিন যুক্তরাষ্ট্রের জন্য ডিফল্ট)
?M # বাতাসের গতি m / s তে প্রদর্শন করে
বিকল্প প্রদর্শন :
?0 # শুধুমাত্র আজ
?1 # আজ + আগামীকাল
?2 # আজ + 2 দিন
?n # সংক্ষিপ্ত সংস্করণ (শুধুমাত্র দিন এবং রাত)
?q # নীরব সংস্করণ (কোন "আবহাওয়ার পূর্বাভাস" হেডার নেই)
?Q # অতি-নীরব সংস্করণ (কোন "আবহাওয়ার পূর্বাভাস" হেডার নেই, শহরের নাম নেই)
?T # ডিজেবল্ড টার্মিনালের জন্য এস্কেপ সিকুএন্সে (কোনও রঙ নেই)
বিকল্প PNG:
/paris.png # একটি PNG ফাইল তৈরি করুন
?p # আউটপুটের চারপাশে একটি ফ্রেম যুক্ত করুন
?t # স্বচ্ছতা 150 (স্বচ্ছতা 150)
transparency=... # 0 থেকে 255 পর্যন্ত স্বচ্ছতা (255 = অস্বছ)
বিকল্প একত্রিত করুন:
/Paris?0pq
/Paris?0pq&lang=fr
/Paris_0pq.png # পিএনজি মোডে বিকল্পগুলি _ এর পরে নির্দিষ্ট করা হয়
/Rome_0pq_lang=it.png # দীর্ঘ বিকল্পগুলি আন্ডারস্কোর দ্বারা পৃথক করা হয় _
ভাষান্তর :
$ curl fr.wttr.in/Paris
$ curl wttr.in/paris?lang=fr
$ curl -H "Accept-Language: fr" wttr.in/paris
সাপোরটেড ভাষাসমূহ :
FULL_TRANSLATION (সম্পূর্ণ সাপোর্ট )
PARTIAL_TRANSLATION (অসম্পূর্ণ সাপোর্ট )
বিশেষ ইউআরএলসমূহ:
/:help # এই পেইজটি প্রদর্শন করুন
/:bash.function # রেকমেন্ডেড ব্যাশ ফাংশন wttr ()
/:translation # wttr.in এর অনুবাদ সম্পর্কে তথ্য প্রদর্শন করুন

78
share/translations/bn.txt Normal file
View file

@ -0,0 +1,78 @@
: বজ্রঝড়ের সঙ্গে ভারী বৃষ্টি ও শিলাবৃষ্টি : Heavy rain and hail with thunderstorm
: বজ্রঝড়ের সঙ্গে ভারী বৃষ্টি : Heavy rain with thunderstorm
: বজ্রঝড়ের সঙ্গে হালকা বৃষ্টি ও শিলাবৃষ্টি : Light rain and hail with thunderstorm
: হালকা বৃষ্টি আর তুষারপাত : Light rain and snow shower
: বজ্রবিদ্যুৎ সহ হালকা বৃষ্টি : Light rain with thunderstorm
: হালকা তুষারপাত : Light snow shower
: আংশিক কুয়াশা : Partial fog
: বজ্রবিদ্যুৎ সহ বৃষ্টি ও শিলাবৃষ্টি : Rain and hail with thunderstorm
: বজ্রবিদ্যুৎ সহ বৃষ্টি : Rain with thunderstorm
: অগভীর কুয়াশা : Shallow fog
: ধোঁয়া : Smoke
: আকস্মিক ঝড়ো বাতাস : Squalls
: আশেপাশে বজ্রঝড় : Thunderstorm in vicinity
: তুষার : Snow
: বৃষ্টি : Rain
: হালকা বৃষ্টি, ঝরনা বৃষ্টি : Light Rain, Rain Shower
: মাঝারী বৃষ্টিপাত : Rain Shower
: টুকরো টুকরো কুয়াশা : Patches of fog
: গুঁড়ি গুঁড়ি বৃষ্টি : Drizzle
: হালকা গুঁড়ি গুঁড়ি বৃষ্টি : Light drizzle
: হালকা ভাসমান তুষার : Low drifting snow
: হালকা বৃষ্টি ও তুষারপাত : Light rain and snow
: আশেপাশে বৃষ্টিপাত : Shower in vicinity
: বজ্রবিদ্যুৎ সহ বৃষ্টি : Rain with thunderstorm
: বৃষ্টি ও তুষারপাত : Rain and snow shower
: বজ্রঝড় : Thunderstorm
: গুঁড়ি গুঁড়ি মাঝারী বৃষ্টি : Drizzle and rain
: বজ্রঝড়ের সঙ্গে শিলাবৃষ্টি : Hail with thunderstorm
: কুয়াশা : Haze
: হালকা গুঁড়ি গুঁড়ি বৃষ্টি : Light drizzle and rain
: হালকা বৃষ্টি এবং বজ্রঝড় সহ ছোট শিলাবৃষ্টি/তুষারপাত : Light rain and small hail/snow pallets with thunderstorm
113 : পরিষ্কার : Clear
113 : রৌদ্রজ্জ্বল : Sunny
116 : আংশিক মেঘলা : Partly cloudy
119 : মেঘলা : Cloudy
122 : মেঘাচ্ছন্ন : Overcast
143 : কুয়াশা : Mist
176 : অল্প বৃষ্টি হতে পারে : Patchy rain possible
179 : অল্প তুষারপাত হতে পারে : Patchy snow possible
182 : অল্প শিলাবৃষ্টি হতে পারে : Patchy sleet possible
185 : ঠাণ্ডা হিমশীতল বৃষ্টির সম্ভাবনা : Patchy freezing drizzle possible
200 : বজ্রপাতের প্রাদুর্ভাবের সম্ভাবনা : Thundery outbreaks possible
227 : উড়ন্ত তুষার : Blowing snow
230 : তুষারঝড় : Blizzard
248 : কুয়াশা : Fog
260 : হিমশীতল কুয়াশা : Freezing fog
263 : খণ্ড খণ্ড হালকা গুঁড়ি গুঁড়ি বৃষ্টি : Patchy light drizzle
266 : হালকা গুঁড়ি গুঁড়ি বৃষ্টি : Light drizzle
281 : হিমশীতল গুঁড়ি গুঁড়ি বৃষ্টি : Freezing drizzle
284 : ভারী হিমশীতল গুঁড়ি গুঁড়ি বৃষ্টি : Heavy freezing drizzle
293 : খণ্ড খণ্ড হালকা বৃষ্টি : Patchy light rain
296 : হালকা বৃষ্টি : Light rain
299 : মাঝে মাঝে মাঝারি বৃষ্টি : Moderate rain at times
302 : মাঝারি বৃষ্টি : Moderate rain
305 : মাঝে মাঝে ভারী বৃষ্টি : Heavy rain at times
308 : ভারী বৃষ্টি : Heavy rain
311 : হিমশীতল হালকা বৃষ্টি : Light freezing rain
314 : মাঝারি বা ভারী হিমায়িত বৃষ্টি : Moderate or heavy freezing rain
317 : হালকা শিলা : Light sleet
320 : মাঝারি বা ভারী শিলাবৃষ্টি : Moderate or heavy sleet
323 : খণ্ড খণ্ড হালকা তুষারপাত : Patchy light snow
326 : হালকা তুষারপাত : Light snow
329 : খণ্ড খণ্ড মাঝারি তুষারপাত : Patchy moderate snow
332 : মাঝারি তুষারপাত : Moderate snow
335 : খণ্ড খণ্ড ভারী তুষারপাত : Patchy heavy snow
338 : ভারী তুষারপাত : Heavy snow
350 : বরফ প্যালেট : Ice pellets
353 : হালকা বৃষ্টির ঝরনা : Light rain shower
356 : মাঝারি বা ভারী বৃষ্টির ঝরনা : Moderate or heavy rain shower
359 : মুষলধারে বৃষ্টি : Torrential rain shower
362 : হালকা বরফমিশ্রিত ঝিরঝির বৃষ্টি : Light sleet showers
365 : মাঝারি বা ভারী বরফমিশ্রিত ঝিরঝির বৃষ্টি : Moderate or heavy sleet showers
368 : হাল্কা তুষারপাত : Light snow showers
371 : মাঝারি বা ভারী তুষারপাত : Moderate or heavy snow showers
386 : বজ্রসহ খণ্ড খণ্ড হালকা বৃষ্টি : Patchy light rain with thunder
389 : বজ্রসহ মাঝারি বা ভারী বৃষ্টি : Moderate or heavy rain with thunder
392 : বজ্রপাত সহ খণ্ড খণ্ড হালকা তুষারপাত : Patchy light snow with thunder
395 : মাঝারি বা ভারী তুষারপাত সহ বজ্রপাত : Moderate or heavy snow with thunder

View file

@ -7,6 +7,7 @@
: Regen : Rain
: Leichter Regen : Light Rain
: Regenschauer : Rain Shower
: Shower in vicinity : Regen in der näheren Umgebung
113: Wolkenlos : Clear
113: Sonnig : Sunny
116: Leicht Bewölkt : Partly cloudy

View file

@ -4,7 +4,7 @@
: Pluie légère et averses : Light rain and snow shower
: Pluies légères orageuses : Light rain with thunderstorm
: Chutes de neige légères : Light snow shower
: Nappes de brouillard : Parftial fog
: Nappes de brouillard : Partial fog
: Orage de pluie et de grêle : Rain and hail with thunderstorm
: Pluies orageuses : Rain with thunderstorm
: Brouillard léger : Shallow fog

View file

@ -0,0 +1,69 @@
उपयोग:
    $ curl wttr.in          # वर्तमान स्थान के मौसम की जानकारी 
    $ curl wttr.in/muc      # म्यूनिख हवाई अड्डे का मौसम
समर्थित स्थान प्रकार:
    /paris                  # शहर का नाम
    /~Eiffel+tower          # कोई भी स्थान (एक से अधिक शब्दो को जोड़ने के लिए + का उपयोग करे)
    /Москва                 # किसी भी भाषा में किसी भी स्थान का यूनिकोड नाम
    /muc                    # एयरपोर्ट कोड (3 अक्षर)
    /@stackoverflow.com     # डोमेन नाम
    /94107                  # क्षेत्र कोड
    /-78.46,106.79          # जीपीएस निर्देशांक
चंद्र चरण की जानकारी:
    /moon                   # चंद्रमा चरण (शहरों के लिए +US या, +France जोड़ें)
    /moon@2016-10-25        # तिथि के लिए चंद्र चरण (@2016-10-25)
इकाइयां:
    m                       # मेट्रिक (एसआई) (यूएस को छोड़कर हर जगह डिफ़ॉल्ट रूप से उपयोग किया जाता है)
    u                       # यूएससीएस (यूएस में डिफ़ॉल्ट रूप से प्रयुक्त)
    M                       # हवा की गति मीटर/सेकंड में दिखाएं
विकल्प देखें:
    0                       # केवल वर्तमान मौसम
    1                       # वर्तमान मौसम और आज का पूर्वानुमान
    2                       # वर्तमान मौसम और आज का और कल का पूर्वानुमान
    A                       # युसेर-एजेंट को अनदेखा करें और एएनएसआई आउटपुट (टर्मिनल) को बाध्य करें
    F                       # "फॉलो" लाइन न दिखाएं
    n                       # संकीर्ण संस्करण (केवल दिन और रात के लिये)
    q                       # शांत संस्करण (कोई "मौसम रिपोर्ट" पाठ नहीं)
    Q                       # अति शांत संस्करण ("मौसम की जानकारी" और शहर का नाम नहीं)
    T                       # टर्मिनल अनुक्रम बंद करें (रंगो के बिना)
पीएनजी विकल्प:
    /paris.png              # पीएनजी फ़ाइल जनरेट करें
    p                       # आउटपुट के चारों ओर फ्रेम जोड़ें
    t                       # पारदर्शिता 150
    transparency=...        # पारदर्शिता 0 से 255 तक (255 = पारदर्शी नहीं)
    background=...          # RRGGBB के रूप में पृष्ठभूमि का रंग, जैसे की 00aaaa
विकल्पों को जोड़ा जा सकता है:
    /Paris?0pq
    /Paris?0pq&lang=fr
    /Paris_0pq.png          # पीएनजी में फ़ाइल मोड को "_" के बाद निर्दिष्ट किया जाता है
    /Rome_0pq_lang=it.png   # लंबे विकल्पों को अंडरस्कोर से अलग किया जाता है
स्थानीयकरण:
    $ curl fr.wttr.in/Paris
    $ curl wttr.in/paris?lang=fr
    $ curl -H "Accept-Language: fr" wttr.in/paris
समर्थित भाषाएँ:
    FULL_TRANSLATION (समर्थित)
    PARTIAL_TRANSLATION (प्रगति में)
विशेष यूआरएल:
    /:help                  # इस पेज को दिखाएं
    /:bash.function         # अनुशंसित बैश फ़ंक्शन wttr () दिखाएं
    /:translation           # अनुवादकों के बारे में जानकारी दिखाएं

79
share/translations/hi.txt Normal file
View file

@ -0,0 +1,79 @@
: तेज बारिश और गरज के साथ ओलावृष्टि : Heavy rain and hail with thunderstorm
: गरज के साथ तेज बारिश : Heavy rain with thunderstorm
: गरज के साथ हल्की बारिश और ओलावृष्टि : Light rain and hail with thunderstorm
: हल्की बारिश और बर्फ की बौछार : Light rain and snow shower
: गरज के साथ हल्की बारिश : Light rain with thunderstorm
: हल्की बर्फ़ की बौछार : Light snow shower
: आंशिक कोहरा : Partial fog
: घना कोहरा : Patchy fog
: गरज के साथ बारिश और ओलावृष्टि : Rain and hail with thunderstorm
: गरज के साथ बारिश : Rain with thunderstorm
: उथला कोहरा : Shallow fog
: धुआं : Smoke
: तूफ़ान : Squalls
: आसपास में आंधी : Thunderstorm in vicinity
: हिमपात : Snow
: वर्षा : Rain
: हल्की बारिश, बारिश की बौछार : Light Rain, Rain Shower
: बारिश की बौछार : Rain Shower
: कोहरे के धब्बे : Patches of fog
: बूंदा बांदी : Drizzle
: हल्की बूंदाबांदी : Light drizzle
: कम बहती बर्फ : Low drifting snow
: हल्की बारिश और हिमपात : Light rain and snow
: आस-पास शावर : Shower in vicinity
: गरज के साथ बारिश : Rain with thunderstorm
: बारिश और बर्फ की बौछार : Rain and snow shower
: आंधी तूफान : Thunderstorm
: बूंदा बांदी और बारिश : Drizzle and rain
: गरज के साथ ओलावृष्टि : Hail with thunderstorm
: धुंध : Haze
: हल्की बूंदा बांदी और बारिश : Light drizzle and rain
: गरज के साथ हल्की बारिश और छोटे-छोटे ओले/बर्फ की पट्टियां : Light rain and small hail/snow pallets with thunderstorm
113 : स्पष्ट : Clear
113 : धूपदार : Sunny
116 : आंशिक रूप से बादल छाएंगे : Partly cloudy
119 : बादल : Cloudy
122 : घटाटोप : Overcast
143 : कोहरा : Mist
176 : हल्की बारिश संभव : Patchy rain possible
179 : हल्की बर्फ़बारी संभव : Patchy snow possible
182 : हल्की ओले के साथ वर्षा संभव : Patchy sleet possible
185 : जमने वाली हल्की बूंदाबांदी संभव : Patchy freezing drizzle possible
200 : गरज का प्रकोप संभव : Thundery outbreaks possible
227 : उड़ाने वाली बर्फ : Blowing snow
230 : बर्फानी तूफान : Blizzard
248 : कोहरा : Fog
260 : अत्यधिक ठंडा कोहरा : Freezing fog
263 : हल्की हल्की बूंदा बांदी : Patchy light drizzle
266 : हल्की बूंदाबांदी : Light drizzle
281 : जमा देने वाली हवा : Freezing drizzle
284 : भारी जमने वाली बूंदा बांदी : Heavy freezing drizzle
293 : हल्की हल्की बारिश : Patchy light rain
296 : हलकी बारिश : Light rain
299 : कभी-कभी मध्यम बारिश : Moderate rain at times
302 : औसत दर्जे की वर्षा : Moderate rain
305 : रुक-रुक कर हो रही भारी बारिश : Heavy rain at times
308 : भारी वर्षा : Heavy rain
311 : हल्की जमने वाली बारिश : Light freezing rain
314 : मध्यम या भारी जमने वाली बारिश : Moderate or heavy freezing rain
317 : हल्की ओले के साथ वर्षा : Light sleet
320 : मध्यम या भारी ओले के साथ वर्षा : Moderate or heavy sleet
323 : हल्की हल्की बर्फ : Patchy light snow
326 : हल्की बर्फ : Light snow
329 : हल्की मध्यम हिमपात : Patchy moderate snow
332 : मध्यम हिमपात : Moderate snow
335 : हल्की भारी हिमपात : Patchy heavy snow
338 : भारी हिमपात : Heavy snow
350 : ओले के साथ वर्षा : Ice pellets
353 : हल्की बोछारे : Light rain shower
356 : मध्यम या भारी बारिश की बौछार : Moderate or heavy rain shower
359 : मूसलाधार बारिश की बौछार : Torrential rain shower
362 : हल्की ओले के साथ बौछारें : Light sleet showers
365 : मध्यम से भारी ओले के साथ बौछारें : Moderate or heavy sleet showers
368 : हल्की बर्फ़बारी : Light snow showers
371 : मध्यम या भारी हिमपात की बौछार : Moderate or heavy snow showers
386 : गरज के साथ हल्की बारिश : Patchy light rain with thunder
389 : गरज के साथ मध्यम या भारी बारिश : Moderate or heavy rain with thunder
392 : गरज के साथ हल्की हल्की बर्फ़ : Patchy light snow with thunder
395 : गरज के साथ मध्यम या भारी हिमपात : Moderate or heavy snow with thunder

View file

@ -52,3 +52,4 @@
: Havazás : Snow
: Eső : Rain
: Gyenge eső : Light Rain
: Talajmenti köd : Shallow fog

View file

@ -0,0 +1,69 @@
Naudojimas:
$ curl wttr.in # dabartinė vietovė
$ curl wttr.in/plq # oras Palangos oro uoste
Palaikomos vietovių rūšys:
/panemunė # miesto pavadinimas
/~Eiffel+tower # bet kuri vietovė (+ vietoj tarpų)
/Магілёў # bet kurios vietovės pavadinimas Unikodu
/plq # oro uosto kodas (3 raidės)
/@stackoverflow.com # domeno vardas
/94107 # pašto kodas (tik JAV)
/-78.46,106.79 # GPS koordinatės
Mėnulio fazių informacija:
/moon # Mėnulio fazė (pridėkite ,+US arba +,France šio pavadinimo miestams)
/moon@2016-10-25 # Mėnulio fazė datai (@2016-10-25)
Matai:
?m # metrai (SI) (pagal nutylėjimą, naudojama visu išskyrus JAV)
?u # USCS (pagal nutylėjimą, naudojama JAV)
?M # vėjo greitis m/s
Rodymo parinktys:
?0 # tik faktiniai orai
?1 # faktiniai orai + šiandienos prognozė
?2 # faktiniai orai + šiandienos + rytojaus prognozės
A # ignoruoti naudotojo agentą (User-Agent) ir priverstinai formatuoti išvestį į ANSI (terminale)
F # nerodyti eilutės apie atnaujinimų sekimą
n # siaura versija (tik diena ir naktis)
q # tylesnė versija (be teksto „Orų prognozė“)
Q # labai tyli versija (be teksto „Orų prognozė“ ir be vietovės pavadinimo
T # išjungti terminalo sekas (be spalvų)
PNG parinktys:
/panemunė.png # sukurti PNG failą
p # apvesti išvestį rėmeliu
t # skaidrumas 150
transparency=... # skaidrumas nuo 0 iki 255 (255 = neskaidrus)
background=... # fono spalva RRGGBB forma, pvz., 00aaaa
Parinktis galima jungti:
/Panemunė?0pq
/Panemunė?0pq&lang=lt
/Panemunė_0pq.png # PNG failo pobūdis nurodomas po _
/Rēzekne_0pq_lang=lv.png # ilgavardės parinktys atskiriamos apatiniu brūkšniu
Kalbos:
$ curl lt.wttr.in/Panemunė
$ curl wttr.in/panemunė?lang=lt
$ curl -H "Accept-Language: lt" wttr.in/panemunė
Palaikomos kalbos
FULL_TRANSLATION (išverstos)
PARTIAL_TRANSLATION (tebeverčiamos)
Ypatingi URL:
/:help # rodyti šį puslapį
/:bash.function # rodyti rekomenduojamą bash funkciją wttr()
/:translation # rodyti informaciją apie vertėjus

47
share/translations/lt.txt Normal file
View file

@ -0,0 +1,47 @@
113: Giedra : Clear :
113: Saulėta : Sunny :
116: Nepastoviai debesuota : Partly cloudy :
119: Debesuota su pragiedruliais : Cloudy :
122: Debesuota : Overcast :
143: Migla : Mist :
176: Galimas silpnas lietus : Patchy rain possible :
179: Galimas nedidelis snygis : Patchy snow possible :
182: Galima nedidelė šlapdriba : Patchy sleet possible :
185: Galima nedidelė lijundra : Patchy freezing drizzle possible :
200: Spėjama perkūnija : Thundery outbreaks possible :
227: Pustymas : Blowing snow :
230: Pūga : Blizzard :
248: Rūkas : Fog :
260: Šarma : Freezing fog :
263: Protarpiais dulksna : Patchy light drizzle :
266: Dulksna : Light drizzle :
281: Lijundra : Freezing drizzle :
284: Stipri lijundra : Heavy freezing drizzle :
293: Protarpiais silpnas lietus : Patchy light rain :
296: Silpnas lietus : Light rain :
299: Protarpiais lietus : Moderate rain at times :
302: Lietus : Moderate rain :
305: Protarpiais stiprus lietus : Heavy rain at times :
308: Stiprus lietus : Heavy rain :
311: Silpna lijundra : Light freezing rain :
314: Vidutinė arba stipri lijundra : Moderate or heavy freezing rain :
317: Lengva šlapdriba : Light sleet :
320: Vidutinė arba stipri šlapdriba : Moderate or heavy sleet :
323: Protarpiais lengvas snygis : Patchy light snow :
326: Lengvas snygis : Light snow :
329: Protarpiais vidutinis snygis : Patchy moderate snow :
332: Snygis : Moderate snow :
335: Protarpiais stiprus snygis : Patchy heavy snow :
338: Stiprus snygis : Heavy snow :
350: Kruša : Ice pellets :
353: Nesmarki liūtis : Light rain shower :
356: Vidutinė arba smarki liūtis : Moderate or heavy rain shower :
359: Smarki liūtis : Torrential rain shower :
362: Protarpiais lengva šlapdriba : Light sleet showers :
365: Protarpiais vidutinė/smarki šlapdriba : Moderate or heavy sleet showers :
368: Protarpiais lengvas snygis : Light snow showers :
371: Protarpiais vidutinis/sunkus snygis : Moderate or heavy snow showers :
386: Protarpiais lengvas lietūs su perkūnija : Patchy light rain with thunder :
389: Vidutinis/sunkus lietus su perkūnija : Moderate or heavy rain with thunder :
392: Protarpiais lengvas snygis su perkūija : Patchy light snow with thunder :
395: Vidutinis/sunkus snygis su perkūnija : Moderate or heavy snow with thunder :

View file

@ -0,0 +1,66 @@
Fampiasana azy:
$ curl wttr.in # toetr'andro eo amin'ny toerana misy anao
$ curl wttr.in/antananarivo # totr'andro any Antananarivo
Karazana toerana azo ampesaina:
/fianarantsoa # nom de la ville
/~Eiffel+tower # anaran-toerana rehetra
/Москва # anarana Unikody na anaran-toerana rehetra amin'ny fiteny rehetra
/tnr # kaody ny seranam-piaramanidina (litera 3)
/@stackoverflow.com # anarana domaina (rohy)
/94107 # Kaody postaly (hoan'ny Etazonia iany)
/-78.46,106.79 # coordonnées GPS
Toerana somary miavaka:
/moon # Dignana ny volana(ampio ,+US ou ,+France raha toa ka misy toerana mitondra anio anarana io)
/moon@2016-10-25 # Dignana ny volana hoan'ny daty iray(@2016-10-25)
Refy:
?m # rafitra metrika (fampiasain'ny rehetra afatsy ny Amerika Avaratra)
?u # USCS (Fampiasan'ny Etazonia)
?M # mampiseho ny hafainganam-pandehan'ny rivotra amin'ny metatra isan-segondra
Fomba fampisehoana:
?0 # androany fotsiny
?1 # androany sy rampitso
?2 # androany miampy roa andro
?n # kinova fohy (atoandro sy ariva fotsiny)
?q # kinova tsotra (tsisy "Vinavina ny totrandro androany")
?Q # version super-silencieuse (pas d'en-tête "Prévisions météo pour", pas de nom de la ville)
?T # séquences d'échappement pour terminaux désactivées (pas de couleurs)
Fomba fampisehoana sary PNG:
/antananarivo.png # mamoka sary PNG
?p # manisy kadra manodidina ilay seho mivoaka
?t # transparency 150 (fangaraharana 150)
transparency=... # fangaraharana ao anatin'ny 0 atramin'ny 255 (255 = tsisy fangaraharana)
Manambatra anireo safidy:
/antananarivo?0pq
/antananarivo?0pq&lang=mg
/antananarivo_0pq.png # raha toa ka mampiasa fampisehoana aminn'ny sary PNG dia asina tsipik'ambany `_` manelanelana azy
/Rome_0pq_lang=it.png # ireo safidy lava dia sarahina amin'ny tsipik'ambany `_` ian'ny koa
Toerana:
$ curl fr.wttr.in/antananarivo
$ curl wttr.in/antananarivo?lang=mg
$ curl -H "Accept-Language: mg" wttr.in/paris
Langues supportées:
FULL_TRANSLATION (Voadika teny tanteraka)
PARTIAL_TRANSLATION (Voadika teny ampahany)
URLs particulières:
/:help # mampiseho ito pejy ito
/:bash.function # sosokevitra fonction bash wttr()
/:translation # mampahafantra ny momba ny fandikanteny ao amin'ny wttr.in

77
share/translations/mg.txt Normal file
View file

@ -0,0 +1,77 @@
: Oram-be manavandra sy oram-baratra : Heavy rain and hail with thunderstorm
: Oram-be sy oram-baratra : Heavy rain with thunderstorm
: Oram-baratra malefaka sy manavandra : Light rain and hail with thunderstorm
: Orana malefaka sy ranomandry : Light rain and snow shower
: Oranam-baratra malefaka : Light rain with thunderstorm
: Orana malefaka ranomandry : Light snow shower
: Zavona ampahany : Partial fog
: Oram-baratra manavandra : Rain and hail with thunderstorm
: Zavona malefaka : Shallow fog
: Zavona : Smoke
: Oram-baratra : Squalls
: Orages proches : Thunderstorm in vicinity
: Oram-panala : Snow
: Orana : Rain
: Orana malefaka : Light Rain, Rain Shower
: Ranonorana : Rain Shower
: Vongan-zavona : Patches of fog
: Pitipitik'orana : Drizzle
: Pitipitik'orana : Light drizzle
: Oram-panala mitsoka ambany : Low drifting snow
: Oram-panala malefaka : Light rain and snow
: Oram-be manakaiky : Shower in vicinity
: Oram-baratra : Rain with thunderstorm
: Oram-be sy oram-panala : Rain and snow shower
: Ora-mikija : Thunderstorm
: Pitipitik'orana : Drizzle and rain
: Oram-be manavandra : Hail with thunderstorm
: Zavona : Haze
: Zavona arahin'orana : Light drizzle and rain
: Ora-mikija, orana malefaka et avandra / Oram-panala : Light rain and small hail/snow pallets with thunderstorm
113 : Tsara ny andro : Clear
113 : Masoandro mibalika : Sunny
116 : Rakodrahona ampahany : Partly cloudy
119 : Rakodrahona : Cloudy
122 : Manjombona : Overcast
143 : Zavona : Mist
176 : Mety hanorana matevina : Patchy rain possible
179 : Mety hisy oram-panala matevina : Patchy snow possible
182 : Mety hanerika kely : Patchy sleet possible
185 : Mety hisy zavona mandry sy matevina : Patchy freezing drizzle possible
200 : Mety hisy Ora-mikija : Thundery outbreaks possible
227 : Oram-panala : Blowing snow
230 : Tafiotranorampanala : Blizzard
248 : Zavona : Fog
260 : Zavona mangatsiaka : Freezing fog
263 : Zavona matevina : Patchy light drizzle
266 : Zavona malefakaa : Light drizzle
281 : Zavona mandry : Freezing drizzle
284 : Zavona mangatsika mafy : Heavy freezing drizzle
293 : Orana matevina : Patchy light rain
296 : Orana malefaka : Light rain
299 : Orana malefaka miverimberina : Moderate rain at times
302 : Orana malefaka : Moderate rain
305 : Oram-be miverimberina : Heavy rain at times
308 : Oram-be : Heavy rain
311 : Orana mangatsiaka : Light freezing rain
314 : Orana malefaka na mafy mangatsiaka : Moderate or heavy freezing rain
317 : Tafiotranorampanala maivana : Light sleet
320 : Tafiotranorampanala malefaka na mafy : Moderate or heavy sleet
323 : Oram-panala matevina : Patchy light snow
326 : Oram-panala maivana : Light snow
329 : Oram-panala malefaka : Patchy moderate snow
332 : Latsakoram-panala malefaka : Moderate snow
335 : Oram-panala mavesatra sy matevina : Patchy heavy snow
338 : Oram-panala mafy : Heavy snow
350 : Pitipitika ranomandro : Ice pellets
353 : Oram-be malefaka : Light rain shower
356 : Orana antoniny sy mavesatra : Moderate or heavy rain shower
359 : Oram-be mikija : Torrential rain shower
362 : Pitipitik'oram-panala mikija : Light sleet showers
365 : Pitipitik'oram-panala malefaka na mavesatra : Moderate or heavy sleet showers
368 : Pitipitik'oram-panala maivana : Light snow showers
371 : Rotsak'oram-panala maivana sy mavesatra : Moderate or heavy snow showers
386 : Oram-baratra matevina : Patchy light rain with thunder
389 : Oram-baratra malefaka na mavesatra : Moderate or heavy rain with thunder
392 : Rotsak'oram-panala maivana arahim-baratra : Patchy light snow with thunder
395 : Rotsak'oram-panala malefaka na mavesatra arahim-baratra : Moderate or heavy snow with thunder

View file

@ -0,0 +1,70 @@
वापर:
$ curl wttr.in # वर्तमान स्थळाचे हवामान
$ curl wttr.in/muc # म्युनिक विमानतळावरील हवामान
उपलब्धीत/प्रयोज्य स्थळांचे प्रकार:
/paris # शहराचे नाव
/~Eiffel+tower # कोणत्याही स्थळाचे नाव (रिकाम्या ठिकाणी (स्पेस ऐवजी) +)
/Москва # युनिकोड स्वरूपात कोणत्याही भाषेतील कोणत्याही स्थळाचे नाव
/muc # विमातळाचे संकेत (कोड) (३ अक्षरे)
/@stackoverflow.com # संकेतस्थळाचे डोमेन नाव
/94107 # क्षेत्र कोड
/-78.46,106.79 # जीपीएस सहनिर्देशक (रेखांश, अक्षांश)
चंद्राच्या कलेची माहिती:
/moon # चंद्राची कला (विशिष्ट स्थळासाठी +US, +France इत्यादी जोडा)
/moon@2016-10-25 # विशिष्ट दिनी चंद्राची कला (@2016-10-25)
एकक:
m # दशमान (मेट्रिक/SI) (अमेरिका वगळता सर्वत्र वापरली जाते)
u # USCS (अमेरिकेत वापरली जाते)
M # वाऱ्याचा वेग मीटर प्रति सेकंद (m/s) मध्ये दाखवा
दृश्य पर्याय:
0 # केवळ वर्तमान हवामान
1 # वर्तमान + आजचा हवामान अंदाज
2 # वर्तमान + आजचा + उद्याचा हवामान अंदाज
A # (टर्मिनल मध्ये) युसर-एजन्ट दुर्लक्षित करून एएनएसआय (ANSI) स्वरूप वापरा
F # "अनुसरण करा" (फॉलो) ची ओळ अदृश्य करा
n # अरुंद स्वरूप (फक्त दुपार व रात्र)
q # शांत स्वरूप ("हवामान अंदाज" मजकूर अदृश्य)
Q # अतिशांत स्वरूप ("हवामान अंदाज" मजकूर व शहराचे नाव अदृश्य)
T # टर्मिनल सिक्वेन्स(क्रम) बंद (बेरंगीत)
PNG पर्याय:
/paris.png # PNG फाईल निर्माण करा
p # प्रतिमेभोवती चौकट जोडा
t # 150 पारदर्शकता
transparency=... # 0 ते 255 पारदर्शकता (255 = अपारदर्शक)
background=... # RRGGBB (लाल हिरवा निळा) स्वरूपात पार्श्वभूमीचा रंग, उदा. 00aaaa
पर्याय एकत्र करू शकता:
/Paris?0pq
/Paris?0pq&lang=fr
/Paris_0pq.png # PNG फाईलच्या बाबतीत पर्याय अधोरेखे "_" नंतर लिहिले जातात
/Rome_0pq_lang=it.png # लांब पर्याय हे अधोरेखेने विभाजित केले जातात
भाषांतर:
$ curl fr.wttr.in/Paris
$ curl wttr.in/paris?lang=fr
$ curl -H "Accept-Language: fr" wttr.in/paris
उपलब्ध भाषा:
FULL_TRANSLATION (उपलब्ध)
PARTIAL_TRANSLATION (काम चालू)
विशेष दुवे:
/:help # हे पृष्ठ दाखवा
/:bash.function # शिफारस केलेले बॅश "wttr()" कार्य दाखवा
/:translation # भाषांतर करणाऱ्यांची माहिती दाखवा

78
share/translations/mr.txt Normal file
View file

@ -0,0 +1,78 @@
: मुसळधार पाऊस, गारा व झंझावात : Heavy rain and hail with thunderstorm
: मुसळधार पाऊस व झंझावात : Heavy rain with thunderstorm
: हलका पाऊस, गारा व झंझावात : Light rain and hail with thunderstorm
: हलका पाऊस व हिमवर्षाव : Light rain and snow shower
: हलका पाऊस व झंझावात : Light rain with thunderstorm
: हलका हिमवर्षाव : Light snow shower
: आंशिक दाट धुके : Partial fog
: पाऊस, गारा व झंझावात : Rain and hail with thunderstorm
: पाऊस व झंझावात : Rain with thunderstorm
: उथळ दाट धुके : Shallow fog
: धूर : Smoke
: चंडवात : Squalls
: झंझावात जवळपास : Thunderstorm in vicinity
: हिमवर्षाव : Snow
: पाऊस : Rain
: हलका पाऊस, पावसाच्या सरी : Light Rain, Rain Shower
: पावसाच्या सरी : Rain Shower
: तुरळक दाट धुके : Patches of fog
: रिमझिम : Drizzle
: हलका रिमझिम पाऊस : Light drizzle
: कमी वाहणारे बर्फ : Low drifting snow
: हलका पाऊस आणि बर्फ : Light rain and snow
: पावसाची सर जवळपास : Shower in vicinity
: पाऊस व झंझावात : Rain with thunderstorm
: पाऊस व हिमवर्षाव : Rain and snow shower
: झंझावात : Thunderstorm
: रिमझिम व पाऊस : Drizzle and rain
: गारा व झंझावात : Hail with thunderstorm
: विरळ धुके : Haze
: हलके रिमझिम व पाऊस : Light drizzle and rain
: झंझावात सह हलका पाऊस व लहान गारा : Light rain and small hail/snow pallets with thunderstorm
113 : स्वच्छ : Clear
113 : ऊन : Sunny
116 : काहीसे ढगाळ : Partly cloudy
119 : ढगाळ : Cloudy
122 : मळभ : Overcast
143 : धुके : Mist
176 : तुरळक पावसाची शक्यता : Patchy rain possible
179 : तुरळक बर्फाची शक्यता : Patchy snow possible
182 : तुरळक हिमयुक्त पावसाची शक्यता : Patchy sleet possible
185 : तुरळक थंड रिमझिमची शक्यता : Patchy freezing drizzle possible
200 : झंझावाताची शक्यता : Thundery outbreaks possible
227 : वाहणारा बर्फ : Blowing snow
230 : हिमवादळ : Blizzard
248 : दाट धुके : Fog
260 : थंड दाट धुके : Freezing fog
263 : तुरळक रिमझिम : Patchy light drizzle
266 : हलके रिमझिम : Light drizzle
281 : थंड रिमझिम : Freezing drizzle
284 : अतिथंड रिमझिम : Heavy freezing drizzle
293 : तुरळक हलका पाऊस : Patchy light rain
296 : हलका पाऊस : Light rain
299 : अधूनमधून हलका पाऊस : Moderate rain at times
302 : मध्यम पाऊस : Moderate rain
305 : अधूनमधून मुसळधार पाऊस : Heavy rain at times
308 : मुसळधार पाऊस : Heavy rain
311 : हलका थंड पाऊस : Light freezing rain
314 : मध्यम ते अतिथंड पाऊस : Moderate or heavy freezing rain
317 : हलका हिमयुक्त पाऊस : Light sleet
320 : मध्यम ते अतिथंड हिमयुक्त पाऊस : Moderate or heavy sleet
323 : तुरळक हलका हिमवर्षाव : Patchy light snow
326 : हलका हिमवर्षाव : Light snow
329 : तुरळक मध्यम हिमवर्षाव : Patchy moderate snow
332 : मध्यम हिमवर्षाव : Moderate snow
335 : तुरळक जोरदार हिमवर्षाव : Patchy heavy snow
338 : जोरदार हिमवर्षाव : Heavy snow
350 : मऊ गारा : Ice pellets
353 : पावसाच्या हलक्या सरी : Light rain shower
356 : पावसाच्या मध्यम ते जोरात सरी : Moderate or heavy rain shower
359 : मुसळधार पावसाच्या सरी : Torrential rain shower
362 : हिमयुक्त पावसाच्या हलक्या सरी : Light sleet showers
365 : हिमयुक्त पावसाच्या मध्यम ते जोरात सरी : Moderate or heavy sleet showers
368 : बर्फाच्या हलक्या सरी : Light snow showers
371 : बर्फाच्या मध्यम ते जोरात सरी : Moderate or heavy snow showers
386 : तुरळक हलका पाऊस व गडगडाट : Patchy light rain with thunder
389 : मध्यम ते जोरात पाऊस व गडगडाट : Moderate or heavy rain with thunder
392 : तुरळक हलका बर्फ व गडगडाट : Patchy light snow with thunder
395 : मध्यम ते जोरात बर्फ व गडगडाट : Moderate or heavy snow with thunder

View file

@ -4,7 +4,7 @@
: Lichte regen en sneeuwbui : Light rain and snow shower
: Lichte regen met onweer : Light rain with thunderstorm
: Lichte sneeuwbui : Light snow shower
: Plaatselijke mist : Parftial fog
: Plaatselijke mist : Partial fog
: Regen en hagel met onweer : Rain and hail with thunderstorm
: Regen met onweer : Rain with thunderstorm
: Lichte mist : Shallow fog

View file

@ -29,6 +29,8 @@ Ustawienia wyświetlania:
?0 # Pokaż jedynie aktualną pogodę
?1 # Pokaż pogodę na jutro
?2 # Pokaż pogodę na pojutrze
?A # Zignoruj User-Agent i wymuś format wyjścia ANSI (terminal)
?F # nie pokazuj linii "Subskrybuj"
?n # Wersja kompaktowa (tylko noc i dzień)
?q # Wersja okrojona (bez tekstu 'Pogoda w')
?Q # Wersja bardziej okrojona (bez tekstu 'Pogoda w' i nazwy miasta)
@ -36,10 +38,11 @@ Ustawienia wyświetlania:
Opcje PNG:
/paris.png # generuje plik PNG
?p # dodaje obramowanie do obrazka
/paris.png # Generuje plik PNG
?p # Dodaje obramowanie do obrazka
?t # Przezroczystość 150
transparency=... # Przezroczystość między 0 a 255 (255 = brak przezroczystości)
background=... # Kolor tła w formie RRGGBB
Opcje mogą być ze sobą łączone:

View file

@ -0,0 +1,66 @@
பயன்பாடு:
$ curl wttr.in # தற்போதைய இடம்
$ curl wttr.in/cdg # பாரிஸ் - சார்லஸ் டி கோல் விமான நிலையத்தில் வானிலை முன்னறிவிப்பு
ஏற்றுக்கொள்ளப்பட்ட வகைகள்:
/paris # நகரத்தின் பெயர்
/~Eiffel+tower # எந்த இடம்
/Москва # யூனிகோட் பெயர் அல்லது எந்த மொழியிலும் எந்த இடம்
/muc # விமான நிலைய குறியீடு (3 எழுத்துகள்)
/@stackoverflow.com # டொமைன் பெயர்
/94107 # அஞ்சல் குறியீடு (அமெரிக்காவில் மட்டும்)
/-78.46,106.79 # ஜிபிஎஸ் ஒருங்கிணைப்புகள்
சிறப்பு வகைகள்:
/moon # சந்திரனின் கட்டங்கள் (அதே பெயரில் உள்ள நகரங்களை அணுக, + அமெரிக்கா அல்லது + பிரான்ஸ் சேர்க்கவும்)
/moon@2016-10-25 # இந்த தேதிக்கான சந்திரனின் கட்டங்கள் (@2016-10-25)
அலகுகள்:
?m # மெட்ரிக் அமைப்பு (அமெரிக்காவைத் தவிர எல்லா இடங்களிலும் இயல்புநிலை)
?u # USCS (அமெரிக்க ஐக்கிய நாடுகளுக்கு இயல்புநிலை)
?M # காற்றின் வேகத்தை m/s இல் காட்டுகிறது
காட்சி விருப்பம்:
?0 # இன்று மட்டும்
?1 # இன்று + நாளை
?2 # இன்று + 2 நாட்கள்
?n # குறுகிய பதிப்பு (பகல் மற்றும் இரவு மட்டும்)
?q # சைலண்ட் பதிப்பு ("தலைப்புக்கான வானிலை முன்னறிவிப்பு" இல்லை)
?Q # சூப்பர்-சைலண்ட் பதிப்பு ("வானிலை முன்னறிவிப்பு" தலைப்பு இல்லை, நகரத்தின் பெயர் இல்லை)
?T # முடக்கப்பட்ட டெர்மினல்களுக்கான தப்பிக்கும் காட்சிகள் (வண்ணங்கள் இல்லை)
PNG விருப்பங்கள்:
/paris.png # ஒரு PNG கோப்பை உருவாக்கவும்
?p # வெளியீட்டைச் சுற்றி ஒரு சட்டத்தைச் சேர்க்கவும்
?t # வெளிப்படைத்தன்மை 150
transparency=... # 0 முதல் 255 வரை வெளிப்படைத்தன்மை (255 = வெளிப்படைத்தன்மை இல்லை)
விருப்பங்களை இணைக்கவும்:
/Paris?0pq
/Paris?0pq&lang=fr
/Paris_0pq.png # PNG பயன்முறையில் விருப்பங்கள் _ க்குப் பிறகு குறிப்பிடப்படுகின்றன
/Rome_0pq_lang=it.png # நீண்ட விருப்பங்கள் அடிக்கோடிட்டால் பிரிக்கப்படுகின்றன _
இடம்:
$ curl fr.wttr.in/Paris
$ curl wttr.in/paris?lang=fr
$ curl -H "Accept-Language: fr" wttr.in/paris
ஆதரிக்கப்படும் மொழிகள்:
FULL_TRANSLATION (முழு மொழிபெயர்ப்பு)
PARTIAL_TRANSLATION (முழுமையற்ற மொழிபெயர்ப்பு)
URLs குறிப்பாக:
/:help # இந்தப் பக்கத்தைக் காட்டவும்
/:bash.function # பரிந்துரைக்கப்பட்ட bash செயல்பாடு wttr()
/:translation # மொழிபெயர்ப்பு பற்றிய தகவலைக் காட்டுகிறது wttr.in

78
share/translations/ta.txt Normal file
View file

@ -0,0 +1,78 @@
: இடியுடன் கூடிய கனமழை மற்றும் ஆலங்கட்டி மழை : Heavy rain and hail with thunderstorm
: இடியுடன் கூடிய கனமழை : Heavy rain with thunderstorm
: லேசான மழை மற்றும் இடியுடன் கூடிய ஆலங்கட்டி மழை : Light rain and hail with thunderstorm
: லேசான மழை மற்றும் பனி மழை : Light rain and snow shower
: லேசான மழை மற்றும் இடியுடன் கூடிய மழை : Light rain with thunderstorm
: லேசான பனி மழை : Light snow shower
: பகுதி மூடுபனி : Partial fog
: இடியுடன் கூடிய ஆலங்கட்டி மழை : Rain and hail with thunderstorm
: இடியுடன் கூடிய மழை : Rain with thunderstorm
: லேசான மூடுபனி : Shallow fog
: புகை : Smoke
: பலமான காற்று : Squalls
: இடியுடன் கூடிய மழை அருகில் : Thunderstorm in vicinity
: பனி : Snow
: மழை : Rain
: லேசான மழை, மழை பொழிவு : Light Rain, Rain Shower
: மழை பொழிவு : Rain Shower
: மூடுபனி திட்டுகள் : Patches of fog
: தூறல் : Drizzle
: லேசான தூறல் : Light drizzle
: குறைந்த பனிப்பொழிவு : Low drifting snow
: லேசான மழை மற்றும் பனி : Light rain and snow
: அருகாமையில் மழை : Shower in vicinity
: இடியுடன் கூடிய மழை : Rain with thunderstorm
: மழை மற்றும் பனி மழை : Rain and snow shower
: இடியுடன் கூடிய மழை : Thunderstorm
: தூறல் மற்றும் மழை : Drizzle and rain
: இடியுடன் கூடிய ஆலங்கட்டி மழை : Hail with thunderstorm
: மூட்டம் : Haze
: லேசான தூறல் மற்றும் மழை : Light drizzle and rain
: லேசான தூறல் மற்றும் இடியுடன் கூடிய சிறிய ஆலங்கட்டி மழை/பனிப் பலகைகள் : Light rain and small hail/snow pallets with thunderstorm
113 : தெளிந்த வானம் : Clear
113 : வெயில் : Sunny
116 : ஒரளவு மேகமூட்டம் : Partly cloudy
119 : மேகமூட்டம் : Cloudy
122 : முற்றிலும் மேகமூட்டம் : Overcast
143 : பனி மூட்டம் : Mist
176 : சீரற்ற மழை சாத்தியம் : Patchy rain possible
179 : சீரற்ற பனி சாத்தியம் : Patchy snow possible
182 : பனிப்பொழிவு சாத்தியம் : Patchy sleet possible
185 : உறைபனி தூறல் சாத்தியம் : Patchy freezing drizzle possible
200 : இடியுடன் கூடிய மழை சாத்தியமாகும் : Thundery outbreaks possible
227 : வீசும் பனி : Blowing snow
230 : பனிப்புயல் : Blizzard
248 : மூடுபனி : Fog
260 : உறைபனி மூடுபனி : Freezing fog
263 : மெல்லிய தூறல் : Patchy light drizzle
266 : லேசான தூறல் : Light drizzle
281 : உறையும் தூறல் : Freezing drizzle
284 : கடும் உறைபனி தூறல் : Heavy freezing drizzle
293 : சீரற்ற லேசான மழை : Patchy light rain
296 : லேசான மழை : Light rain
299 : அவ்வப்போது மிதமான மழை பெய்யும் : Moderate rain at times
302 : மிதமான மழை : Moderate rain
305 : அவ்வப்போது பலத்த மழை : Heavy rain at times
308 : பலத்த மழை : Heavy rain
311 : லேசான உறைபனி மழை : Light freezing rain
314 : மிதமான அல்லது கடுமையான உறைபனி மழை : Moderate or heavy freezing rain
317 : லேசான தூறல் : Light sleet
320 : மிதமான அல்லது கடுமையான தூறல் : Moderate or heavy sleet
323 : சீரற்ற லேசான பனி : Patchy light snow
326 : லேசான பனி : Light snow
329 : சீரற்ற மிதமான பனி : Patchy moderate snow
332 : மிதமான பனி : Moderate snow
335 : சீரற்ற கடுமையான பனி : Patchy heavy snow
338 : கடுமையான பனி : Heavy snow
350 : பனி துகள்கள் : Ice pellets
353 : லேசான சாரல் மழை : Light rain shower
356 : மிதமான அல்லது கடுமையான சாரல் மழை : Moderate or heavy rain shower
359 : சாரல் மழை : Torrential rain shower
362 : லேசான தூறல் மழை : Light sleet showers
365 : மிதமான அல்லது கனத்த தூறல் மழை பெய்யும் : Moderate or heavy sleet showers
368 : லேசான பனி மழை : Light snow showers
371 : மிதமான அல்லது கனத்த பனி மழை : Moderate or heavy snow showers
386 : சீரற்ற இடியுடன் கூடிய லேசான மழை : Patchy light rain with thunder
389 : இடியுடன் கூடிய மிதமான அல்லது பலத்த மழை : Moderate or heavy rain with thunder
392 : சீரற்ற இடியுடன் கூடிய லேசான பனி : Patchy light snow with thunder
395 : மிதமான அல்லது கனத்த இடியுடன் கூடிய பனி : Moderate or heavy snow with thunder

View file

@ -0,0 +1,70 @@
వాడుకొనుట:
$ curl wttr.in # ప్రస్తుత స్థానం
$ curl wttr.in/muc # మునిక్ విమానాశ్రయంలో వాతావరణం
నిర్వహించబడిన స్థాన రకాలు:
/paris # పట్టనం పేరు
/~Eiffel+tower # ఏదైనా ప్రదేశం (+ స్పేస్ కోసం)
/Москва # ఏ భాషలోనైనా ఏదైనా స్థానం యొక్క యూనికోడ్ పేరు
/muc # విమానాశ్రయం కోడ్ (3 అక్షరాలు)
/@stackoverflow.com # డొమైన్ పేరు
/94107 # ప్రాంతం సంకేతాలు (ఏరియా కోడ్‌లు)
/-78.46,106.79 # జిపియస్ కోఆర్డినేట్‌లు
చంద్రుని దశ సమాచారం:
/moon # చంద్రుని దశ (,+US లేదా ,+France జోడించు ఈ నగరాల కోసం)
/moon@2016-10-25 # తేదీకి చంద్ర దశ (@2016-10-25)
యూనిట్లు:
m # మెట్రిక్ పద్ధతి
u # USCS (అమెరికా సంయుక్త రాష్ట్రాల్లో అప్రమేయంగా ఉపయోగించబడుతుంది)
M # గాలి వేగం m/sలో
ఎంపికలను వీక్షించండి:
0 # ప్రస్తుత వాతావరణం మాత్రమే
1 # ప్రస్తుత వాతావరణం + నేటి సూచన
2 # ప్రస్తుత వాతావరణం + నేటి మరియు రేపటి సూచన
A # ANSI ఫార్మాట్‌లో అవుట్‌పుట్
F # "ఫాలో" లైన్ చూపించవద్దు
n # చిన్న సంస్కరణ (పగలు మరియు రాత్రి మాత్రమే)
q # చాలా చిన్న సంస్కరణ ("వాతావరణ నివేదిక" వచనం లేదు)
Q # అతి చిన్న సంస్కరణ ("వాతావరణ నివేదిక" లేదు, నగరం పేరు లేదు)
T # క్లోజ్ టెర్మినల్ సీక్వెన్స్ (రంగులు లేకుండా)
PNG ఎంపికలు:
/paris.png # PNG ఫైల్‌ను రూపొందించండి
p # అవుట్‌పుట్ చుట్టూ ఫ్రేమ్‌ని జోడించండి
t # పారదర్శకత 150
transparency=... # పారదర్శకత 0 నుండి 255 వరకు (255 = పారదర్శకం కాదు)
background=... # నేపథ్య రంగు RRGGBB రూపంలో ఉదాహరణకు 00aaaa
ఎంపికలు కలపవచ్చు:
/Paris?0pq
/Paris?0pq&lang=fr
/Paris_0pq.png # PNGలో (ఫైల్ మోడ్‌ను _ తర్వాత పేర్కొనవచ్చు)
/Rome_0pq_lang=it.png # పొడవైన ఎంపికలను అండర్‌స్కోర్‌తో వేరు చేయవచ్చు
స్థానికీకరణ:
$ curl fr.wttr.in/Paris
$ curl wttr.in/paris?lang=fr
$ curl -H "Accept-Language: fr" wttr.in/paris
నిర్వహించబడిన భాషలు:
am ar af be bn ca da de el et fr fa hi hu ia id it lt mg nb nl oc pl pt-br ro ru ta tr th uk vi zh-cn zh-tw (supported)
az bg bs cy cs eo es eu fi ga hi hr hy is ja jv ka kk ko ky lv mk ml mr nl fy nn pt pt-br sk sl sr sr-lat sv sw te uz zh zu he (in progress)
ప్రత్యేక URLs:
/:help # ఈ పేజీని చూపుతుంది
/:bash.function # సిఫార్సు చేయబడిన bash ఫంక్షన్‌ను wttr() చూపుతుంది
/:translation # అనువాదకుల గురించిన సమాచారాన్ని చూపుతుంది

View file

@ -3,45 +3,46 @@ Komut Satırı Kullanımı:
$ curl wttr.in # bulunduğunuz konum
$ curl wttr.in/esb # Esenboğa havalimanında hava durumu
Desteklenen konum tipleri:
Desteklenen konum türleri:
/istanbul # şehir adı
/~Anıtkabir # herhangi bir konum
/Москва # Herhangi bir dilde herhangi bir unicode konum
/~Anıtkabir # herhangi bir konum (boşluk için + kullanın)
/Москва # herhangi bir dildeki herhangi bir konumun Unicode adı
/esb # havalimanı kodu (3 harfli)
/@stackoverflow.com # alan adı
/@stackoverflow.com # etki alanı adı
/06800 # posta kodları
/39.925325,32.836987 # Yer belirleme sistemi (GPS) koordinatları
Özel konumlar:
Ay evresi bilgisi:
/moon # Ay evresi (Şehir veya ülke için +TR veya +İstanbul ekleyin)
/moon # Ay evresi (bu isimdeki şehirler için ,+US veya ,+France ekleyin)
/moon@2016-10-25 # Belirli bir tarih için ay evresi (@2016-10-25)
Ölçü birimleri:
?m # metrik sistem (SI) (ABD dışında her yer için varsayılan)
?u # USCS (ABD için varsayılan)
?M # Rüzgar hızını metre/saniye (m/s) olarak göster
m # metrik sistem (SI) (ABD dışında her yer için varsayılan)
u # USCS (ABD için varsayılan)
M # Rüzgar hızını metre/saniye (m/s) olarak göster
Seçenekleri görüntüle:
?0 # sadece bugün için hava durumu
?1 # Bugün ve 1 gün sonrası için hava durumu
?2 # Bugün ve 2 gün sonrası için hava durumu
?A # Kullanıcı aracısı (User-Agent) bilgilerini göz ardı eder ve terminalde ANSI formatında çıktı için zorlar
?F # "Follow (Takip et)" satırını göstermez
?n # dar görünüm (sadece gece ve gündüz)
?q # sessiz görünüm ("Hava durumu" yazısı yok)
?Q # aşırı sessiz görünüm ("Hava durumu" yazısı ve şehir adı yok)
?T # terminal geçişlerini kapatır (renkler yok)
0 # yalnızca bugün için hava durumu
1 # Bugün ve 1 gün sonrası için hava durumu
2 # Bugün ve 2 gün sonrası için hava durumu
A # Kullanıcı aracısı (User-Agent) bilgilerini göz ardı eder ve terminalde ANSI çıktı biçimini zorlar
F # "Follow (Takip et)" satırını göstermez
n # dar görünüm (yalnızca gece ve gündüz)
q # sessiz görünüm ("Hava durumu" yazısı yok)
Q # aşırı sessiz görünüm ("Hava durumu" yazısı ve şehir adı yok)
T # terminal geçişlerini kapatır (renkler yok)
PNG seçenekleri:
/istanbul.png # bir PNG dosyası üretir
?p # çıktı etrafına bir çerçeve ekler
?t # 150 birim saydamlık
p # çıktı etrafına bir çerçeve ekler
t # 150 birim saydamlık
transparency=... # 0 ila 255 arasında saydamlık (255 = saydam değil)
background=... # KKYYMM biçiminde arka plan rengi, örn. 00aaaa
Seçenekler birleştirilebilir:
@ -64,5 +65,6 @@ Desteklenen diller:
Özel adresler:
/:help # bu sayfayı göster
/:bash.function # önerilen bash fonksiyonu wttr() içeriğini göster
/:bash.function # tavsiye edilen wttr() bash fonksiyonunu göster
/:translation # çevirmenler hakkındaki bilgileri göster

View file

@ -1,81 +1,47 @@
113: 晴朗 : Clear :
113: 陽光充足 : Sunny :
116: 晴時多雲 : Partly cloudy :
119: 多雲 : Cloudy :
122: 陰天 : Overcast :
143: 薄霧 : Mist :
176: 可能下小雨 : Patchy rain possible :
179: 可能下小雪 : Patchy snow possible :
182: 可能有雨夾雪 : Patchy sleet possible :
185: 可能有凍毛毛雨 : Patchy freezing drizzle possible :
200: 可能打雷 : Thundery outbreaks possible :
227: 吹雪 : Blowing snow :
230: 雪暴 : Blizzard :
248: 霧 : Fog :
260: 凍霧 : Freezing fog :
263: 局部毛毛細雨 : Patchy light drizzle :
266: 毛毛細雨 : Light drizzle :
281: 凍毛毛雨 : Freezing drizzle :
284: 重凍毛毛雨 : Heavy freezing drizzle :
293: 局部小雨 : Patchy light rain :
296: 小雨 : Light rain :
299: 有時中雨 : Moderate rain at times :
302: 中雨 : Moderate rain :
305: 有時大雨 : Heavy rain at times :
308: 大雨 : Heavy rain :
311: 小凍雨 : Light freezing rain :
314: 中或大凍雨 : Moderate or heavy freezing rain :
317: 小雨夾雪 : Light sleet :
320: 中或大雨夾雪 : Moderate or heavy sleet :
323: 局部小雪 : Patchy light snow :
326: 小雪 : Light snow :
329: 局部中雪 : Patchy moderate snow :
332: 中雪 : Moderate snow :
335: 局部大雪 : Patchy heavy snow :
338: 大雪 : Heavy snow :
350: 冰珠 : Ice pellets :
353: 小陣雨 : Light rain shower :
356: 中或大陣雨 : Moderate or heavy rain shower :
359: 豪陣雨 : Torrential rain shower :
362: 小陣雨夾雪 : Light sleet showers :
365: 中或大陣雨夾雪 : Moderate or heavy sleet showers :
368: 小陣雪 : Light snow showers :
371: 中或大陣雪 : Moderate or heavy snow showers :
386: 局部小雷雨 : Patchy light rain with thunder :
389: 中或大雷雨 : Moderate or heavy rain with thunder :
392: 可能會打雷的小陣雪 : Patchy light snow with thunder :
395: 可能會打雷的中或大陣雪 : Moderate or heavy snow with thunder :
113: 晴朗 : Clear
113: 陽光充足 : Sunny
116: 晴時多雲 : Partly cloudy
119: 多雲 : Cloudy
122: 陰天 : Overcast
143: 薄霧 : Mist
176: 可能下小雨 : Patchy rain possible
179: 可能下小雪 : Patchy snow possible
182: 可能有雨夾雪 : Patchy sleet possible
185: 可能有凍毛毛雨 : Patchy freezing drizzle possible
200: 可能打雷 : Thundery outbreaks possible
227: 吹雪 : Blowing snow
230: 雪暴 : Blizzard
248: 霧 : Fog
260: 凍霧 : Freezing fog
263: 局部毛毛細雨 : Patchy light drizzle
266: 毛毛細雨 : Light drizzle
281: 凍毛毛雨 : Freezing drizzle
284: 重凍毛毛雨 : Heavy freezing drizzle
293: 局部小雨 : Patchy light rain
296: 小雨 : Light
299: 有時中雨 : Moderate rain at times
302: 中雨 : Moderate rain
305: 有時大雨 : Heavy rain at times
308: 大雨 : Heavy rain
311: 小凍雨 : Light freezing rain
314: 中或大凍雨 : Moderate or heavy freezing rain
317: 小雨夾雪 : Light sleet
320: 中或大雨夾雪 : Moderate or heavy sleet
323: 局部小雪 : Patchy light snow
326: 小雪 : Light snow
329: 局部中雪 : Patchy moderate snow
332: 中雪 : Moderate snow
335: 局部大雪 : Patchy heavy snow
338: 大雪 : Heavy snow
350: 冰珠 : Ice pellets
353: 小陣雨 : Light rain shower
356: 中或大陣雨 : Moderate or heavy rain shower
359: 豪陣雨 : Torrential rain shower
362: 小陣雨夾雪 : Light sleet showers
365: 中或大陣雨夾雪 : Moderate or heavy sleet showers
368: 小陣雪 : Light snow showers
371: 中或大陣雪 : Moderate or heavy snow showers
386: 局部小雷雨 : Patchy light rain with thunder
389: 中或大雷雨 : Moderate or heavy rain with thunder
392: 可能會打雷的小陣雪 : Patchy light snow with thunder
395: 可能會打雷的中或大陣雪 : Moderate or heavy snow with thunder

View file

@ -1,3 +1,9 @@
module github.com/chubin/wttr.in/v2
go 1.15
require (
github.com/klauspost/lctime v0.1.0
github.com/mattn/go-colorable v0.1.11
github.com/mattn/go-runewidth v0.0.13
)

View file

@ -292,11 +292,12 @@ var (
locale = map[string]string{
"af": "af_ZA",
"am": "am_ET",
"am": "am_ET",
"ar": "ar_TN",
"az": "az_AZ",
"be": "be_BY",
"bg": "bg_BG",
"bn": "bn_IN",
"bs": "bs_BA",
"ca": "ca_ES",
"cs": "cs_CZ",
@ -314,6 +315,7 @@ var (
"fy": "fy_NL",
"ga": "ga_IE",
"he": "he_IL",
"hi": "hi_IN",
"hr": "hr_HR",
"hu": "hu_HU",
"hy": "hy_AM",
@ -324,46 +326,50 @@ var (
"ja": "ja_JP",
"jv": "en_US",
"ka": "ka_GE",
"ko": "ko_KR",
"kk": "kk_KZ",
"ko": "ko_KR",
"ky": "ky_KG",
"lt": "lt_LT",
"lv": "lv_LV",
"mg": "mg_MG",
"mk": "mk_MK",
"ml": "ml_IN",
"mr": "mr_IN",
"nb": "nb_NO",
"nl": "nl_NL",
"nn": "nn_NO",
"oc": "oc_FR",
"pt": "pt_PT",
"pt-br": "pt_BR",
"pl": "pl_PL",
"pt-br": "pt_BR",
"pt": "pt_PT",
"ro": "ro_RO",
"ru": "ru_RU",
"sv": "sv_SE",
"sk": "sk_SK",
"sl": "sl_SI",
"sr": "sr_RS",
"sr-lat": "sr_RS@latin",
"sr": "sr_RS",
"sv": "sv_SE",
"sw": "sw_KE",
"ta": "ta_IN",
"th": "th_TH",
"tr": "tr_TR",
"uk": "uk_UA",
"uz": "uz_UZ",
"vi": "vi_VN",
"zu": "zu_ZA",
"zh": "zh_CN",
"zh-cn": "zh_CN",
"zh-tw": "zh_TW",
"zh": "zh_CN",
"zu": "zu_ZA",
}
localizedCaption = map[string]string{
"af": "Weer verslag vir:",
"am": "የአየር ሁኔታ ዘገባ ለ ፥",
"am": "የአየር ሁኔታ ዘገባ ለ ፥",
"ar": "تقرير حالة ألطقس",
"az": "Hava proqnozu:",
"be": "Прагноз надвор'я для:",
"bg": "Прогноза за времето в:",
"bn": "আবহাওয়া সঙ্ক্রান্ত তথ্য",
"bs": "Vremenske prognoze za:",
"ca": "Informe del temps per a:",
"cs": "Předpověď počasí pro:",
@ -381,6 +387,7 @@ var (
"fy": "Waarberjocht foar:",
"ga": "Réamhaisnéis na haimsire do:",
"he": ":ריוואה גזמ תיזחת",
"hi": "मौसम की जानकारी",
"hr": "Vremenska prognoza za:",
"hu": "Időjárás előrejelzés:",
"hy": "Եղանակի տեսություն:",
@ -398,6 +405,7 @@ var (
"lv": "Laika ziņas:",
"mk": "Прогноза за времето во:",
"ml": "കാലാവസ്ഥ റിപ്പോർട്ട്:",
"mr": "हवामानाचा अंदाज:",
"nb": "Værmelding for:",
"nl": "Weerbericht voor:",
"nn": "Vêrmelding for:",
@ -413,6 +421,7 @@ var (
"sr-lat": "Vremenska prognoza za:",
"sv": "Väderleksprognos för:",
"sw": "Ripoti ya hali ya hewa, jiji la:",
"ta": "வானிலை அறிக்கை",
"te": "వాతావరణ సమాచారము:",
"th": "รายงานสภาพอากาศ:",
"tr": "Hava beklentisi:",
@ -423,15 +432,17 @@ var (
"zh": "天气预报:",
"zh-cn": "天气预报:",
"zh-tw": "天氣預報:",
"mg": "Vinavina toetr'andro hoan'ny:",
}
daytimeTranslation = map[string][]string{
"af": {"Oggend", "Middag", "Vroegaand", "Laatnag"},
"am": {"ጠዋት", "ከሰዓት በኋላ", "ምሽት", "ሌሊት"},
"am": {"ጠዋት", "ከሰዓት በኋላ", "ምሽት", "ሌሊት"},
"ar": {"ﺎﻠﻠﻴﻟ", "ﺎﻠﻤﺳﺍﺀ", "ﺎﻠﻈﻫﺭ", "ﺎﻠﺼﺑﺎﺣ"},
"az": {"Səhər", "Gün", "Axşam", "Gecə"},
"be": {"Раніца", "Дзень", "Вечар", "Ноч"},
"bg": {"Сутрин", "Обяд", "Вечер", "Нощ"},
"bn": {"সকাল", "দুপুর", "সন্ধ্যা", "রাত্রি"},
"bs": {"Ujutro", "Dan", "Večer", "Noć"},
"cs": {"Ráno", "Ve dne", "Večer", "V noci"},
"ca": {"Matí", "Dia", "Tarda", "Nit"},
@ -450,6 +461,7 @@ var (
"fy": {"Moarns", "Middeis", "Jûns", "Nachts"},
"ga": {"Maidin", "Nóin", "Tráthnóna", "Oíche"},
"he": {"רקוב", "םוֹיְ", "ברֶעֶ", "הלָיְלַ"},
"hi": {"प्रातःकाल", "दोपहर", "सायंकाल", "रात"},
"hr": {"Jutro", "Dan", "Večer", "Noć"},
"hu": {"Reggel", "Dél", "Este", "Éjszaka"},
"hy": {"Առավոտ", "Կեսօր", "Երեկո", "Գիշեր"},
@ -466,7 +478,8 @@ var (
"lt": {"Rytas", "Diena", "Vakaras", "Naktis"},
"lv": {"Rīts", "Diena", "Vakars", "Nakts"},
"mk": {"Утро", "Пладне", "Вечер", "Ноќ"},
"ml": {"മോണിംഗ്", "മധ്യാഹ്നം", "വൈകുന്നേരം", "രാത്രി"},
"ml": {"രാവിലെ", "മധ്യാഹ്നം", "വൈകുന്നേരം", "രാത്രി"},
"mr": {"सकाळ", "दुपार", "संध्याकाळ", "रात्र"},
"nl": {"'s Ochtends", "'s Middags", "'s Avonds", "'s Nachts"},
"nb": {"Morgen", "Middag", "Kveld", "Natt"},
"nn": {"Morgon", "Middag", "Kveld", "Natt"},
@ -482,6 +495,7 @@ var (
"sr-lat": {"Jutro", "Podne", "Veče", "Noć"},
"sv": {"Morgon", "Eftermiddag", "Kväll", "Natt"},
"sw": {"Asubuhi", "Adhuhuri", "Jioni", "Usiku"},
"ta": {"காலை", "நண்பகல்", "சாயங்காலம்", "இரவு"},
"te": {"ఉదయం", "రోజు", "సాయంత్రం", "రాత్రి"},
"th": {"เช้า", "วัน", "เย็น", "คืน"},
"tr": {"Sabah", "Öğle", "Akşam", "Gece"},
@ -492,6 +506,7 @@ var (
"zh-cn": {"早上", "中午", "傍晚", "夜间"},
"zh-tw": {"早上", "中午", "傍晚", "夜間"},
"zu": {"Morning", "Noon", "Evening", "Night"},
"mg": {"Maraina", "Tolakandro", "Ariva", "Alina"},
}
)
@ -672,22 +687,22 @@ func formatTemp(c cond) string {
explicitPlus1 := false
explicitPlus2 := false
if c.FeelsLikeC != t {
if t > 0 {
explicitPlus1 = true
}
if c.FeelsLikeC > 0 {
explicitPlus2 = true
}
if explicitPlus1 {
explicitPlus2 = false
}
if t > 0 {
explicitPlus1 = true
}
if c.FeelsLikeC > 0 {
explicitPlus2 = true
}
if explicitPlus1 {
explicitPlus2 = false
}
return pad(
fmt.Sprintf("%s(%s) °%s",
color(t, explicitPlus1),
color(c.FeelsLikeC, explicitPlus2),
unitTemp[config.Imperial]),
15)
}
fmt.Sprintf("%s(%s) °%s",
color(t, explicitPlus1),
color(c.FeelsLikeC, explicitPlus2),
unitTemp[config.Imperial]),
15)
}
// if c.FeelsLikeC < t {
// if c.FeelsLikeC < 0 && t > 0 {
// explicitPlus = true