commit
0e276955d1
19 changed files with 892 additions and 99 deletions
|
|
@ -2,15 +2,14 @@ group: travis_latest
|
||||||
language: python
|
language: python
|
||||||
cache: pip
|
cache: pip
|
||||||
python:
|
python:
|
||||||
- 2.7
|
|
||||||
- 3.7
|
- 3.7
|
||||||
install:
|
install:
|
||||||
- pip install flake8 -r requirements.txt
|
- pip install flake8 -r requirements.txt
|
||||||
before_script:
|
before_script:
|
||||||
# stop the build if there are Python syntax errors or undefined names
|
# stop the build if there are Python syntax errors or undefined names
|
||||||
- flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
|
- flake8 bin lib --count --select=E9,F63,F7,F82 --show-source --statistics
|
||||||
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
|
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
|
||||||
- flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
|
- flake8 bin lib --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
|
||||||
script:
|
script:
|
||||||
- true # pytest --capture=sys # add other tests here
|
- true # pytest --capture=sys # add other tests here
|
||||||
notifications:
|
notifications:
|
||||||
|
|
|
||||||
57
README.md
57
README.md
|
|
@ -77,12 +77,13 @@ You can override this behavior by adding `?u` or `?m` to a URL like this:
|
||||||
|
|
||||||
## Supported output formats
|
## Supported output formats
|
||||||
|
|
||||||
wttr.in currently supports three output formats:
|
wttr.in currently supports four output formats:
|
||||||
|
|
||||||
* ANSI for the terminal;
|
* ANSI for the terminal;
|
||||||
* ANSI for the terminal, one-line mode;
|
* ANSI for the terminal, one-line mode;
|
||||||
* HTML for the browser;
|
* HTML for the browser;
|
||||||
* PNG for the graphical viewers.
|
* PNG for the graphical viewers;
|
||||||
|
* JSON for scripts and APIs.
|
||||||
|
|
||||||
The ANSI and HTML formats are selected basing on the User-Agent string.
|
The ANSI and HTML formats are selected basing on the User-Agent string.
|
||||||
The PNG format can be forced by adding `.png` to the end of the query:
|
The PNG format can be forced by adding `.png` to the end of the query:
|
||||||
|
|
@ -112,6 +113,57 @@ In this example:
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
You can embed a special wttr.in widget, that displays the weather condition for the current or a selected location, into a HTML page using the [wttr-switcher](https://github.com/midzer/wttr-switcher). That is how it looks like: [wttr-switcher-example](https://midzer.github.io/wttr-switcher/) or on a real world web site: https://feuerwehr-eisolzried.de/.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## JSON output
|
||||||
|
|
||||||
|
The JSON format is a feature providing access to wttr.in data through an easy-to-parse format, without requiring the user to create a complex script to reinterpret wttr.in's graphical output.
|
||||||
|
|
||||||
|
To fetch information in JSON format, use the following syntax:
|
||||||
|
|
||||||
|
$ curl wttr.in/Detroit?format=j1
|
||||||
|
|
||||||
|
This will fetch information on the Detroit region in JSON format. The j1 format code is used to allow for the use of other layouts for the JSON output.
|
||||||
|
|
||||||
|
The result will look something like the following:
|
||||||
|
|
||||||
|
{
|
||||||
|
"current_condition": [
|
||||||
|
{
|
||||||
|
"FeelsLikeC": "25",
|
||||||
|
"FeelsLikeF": "76",
|
||||||
|
"cloudcover": "100",
|
||||||
|
"humidity": "76",
|
||||||
|
"observation_time": "04:08 PM",
|
||||||
|
"precipMM": "0.2",
|
||||||
|
"pressure": "1019",
|
||||||
|
"temp_C": "22",
|
||||||
|
"temp_F": "72",
|
||||||
|
"uvIndex": 5,
|
||||||
|
"visibility": "16",
|
||||||
|
"weatherCode": "122",
|
||||||
|
"weatherDesc": [
|
||||||
|
{
|
||||||
|
"value": "Overcast"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"weatherIconUrl": [
|
||||||
|
{
|
||||||
|
"value": ""
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"winddir16Point": "NNE",
|
||||||
|
"winddirDegree": "20",
|
||||||
|
"windspeedKmph": "7",
|
||||||
|
"windspeedMiles": "4"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
...
|
||||||
|
|
||||||
|
Most of these values are self-explanatory, aside from `weatherCode`. The `weatherCode` is an enumeration which you can find at either [the WorldWeatherOnline website](https://www.worldweatheronline.com/developer/api/docs/weather-icons.aspx) or [in the wttr.in source code](https://github.com/chubin/wttr.in/blob/master/lib/constants.py).
|
||||||
|
|
||||||
## One-line output
|
## One-line output
|
||||||
|
|
||||||
For one-line output format, specify additional URL parameter `format`:
|
For one-line output format, specify additional URL parameter `format`:
|
||||||
|
|
@ -150,6 +202,7 @@ To specify your own custom output format, use the special `%`-notation:
|
||||||
m Moonphase 🌑🌒🌓🌔🌕🌖🌗🌘,
|
m Moonphase 🌑🌒🌓🌔🌕🌖🌗🌘,
|
||||||
M Moonday,
|
M Moonday,
|
||||||
p precipitation (mm),
|
p precipitation (mm),
|
||||||
|
o Probability of Precipitation,
|
||||||
P pressure (hPa),
|
P pressure (hPa),
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -63,7 +63,6 @@ def load_translations():
|
||||||
return translations
|
return translations
|
||||||
TRANSLATIONS = load_translations()
|
TRANSLATIONS = load_translations()
|
||||||
|
|
||||||
|
|
||||||
def _find_srv_for_query(path, query): # pylint: disable=unused-argument
|
def _find_srv_for_query(path, query): # pylint: disable=unused-argument
|
||||||
return 'http://api.worldweatheronline.com'
|
return 'http://api.worldweatheronline.com'
|
||||||
|
|
||||||
|
|
@ -206,8 +205,8 @@ def proxy(path):
|
||||||
if response:
|
if response:
|
||||||
headers = {}
|
headers = {}
|
||||||
headers['Content-Type'] = response.headers['content-type']
|
headers['Content-Type'] = response.headers['content-type']
|
||||||
|
_save_content_and_headers(path, query_string, response.content, headers)
|
||||||
content = add_translations(response.content, lang)
|
content = add_translations(response.content, lang)
|
||||||
_save_content_and_headers(path, query_string, content, headers)
|
|
||||||
else:
|
else:
|
||||||
content = "{}"
|
content = "{}"
|
||||||
|
|
||||||
|
|
|
||||||
16
lib/spark.py
16
lib/spark.py
|
|
@ -42,7 +42,8 @@ import constants
|
||||||
import translations
|
import translations
|
||||||
import wttr_line
|
import wttr_line
|
||||||
|
|
||||||
reload(sys)
|
if not sys.version_info >= (3, 0):
|
||||||
|
reload(sys) # noqa: F821
|
||||||
sys.setdefaultencoding("utf-8")
|
sys.setdefaultencoding("utf-8")
|
||||||
|
|
||||||
# data processing {{{
|
# data processing {{{
|
||||||
|
|
@ -301,19 +302,6 @@ def draw_wind(data, color_data):
|
||||||
|
|
||||||
def _color_code_for_wind_speed(wind_speed):
|
def _color_code_for_wind_speed(wind_speed):
|
||||||
|
|
||||||
color_codes = [
|
|
||||||
(3, 82), # 82
|
|
||||||
(6, 118), # 118
|
|
||||||
(9, 154), # 154
|
|
||||||
(12, 250), # 190
|
|
||||||
(15, 246), # 226
|
|
||||||
(19, 253), # 220
|
|
||||||
(23, 214),
|
|
||||||
(27, 208),
|
|
||||||
(31, 202),
|
|
||||||
(-1, 196)
|
|
||||||
]
|
|
||||||
|
|
||||||
color_codes = [
|
color_codes = [
|
||||||
(3, 241), # 82
|
(3, 241), # 82
|
||||||
(6, 242), # 118
|
(6, 242), # 118
|
||||||
|
|
|
||||||
|
|
@ -5,19 +5,19 @@ Translation of almost everything.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
FULL_TRANSLATION = [
|
FULL_TRANSLATION = [
|
||||||
"af", "da", "de", "el", "et",
|
"af", "be", "ca", "da", "de", "el", "et",
|
||||||
"fr", "fa", "hu", "id", "it",
|
"fr", "fa", "hu", "id", "it",
|
||||||
"nb", "nl", "pl", "pt-br", "ro",
|
"nb", "nl", "pl", "pt-br", "ro",
|
||||||
"ru", "tr", "uk", "vi"
|
"ru", "tr", "th", "uk", "vi", "zh-cn", "zh-tw"
|
||||||
]
|
]
|
||||||
|
|
||||||
PARTIAL_TRANSLATION = [
|
PARTIAL_TRANSLATION = [
|
||||||
"az", "be", "bg", "bs", "ca", "cy", "cs",
|
"az", "bg", "bs", "cy", "cs",
|
||||||
"eo", "es", "fi", "ga", "hi", "hr",
|
"eo", "es", "fi", "ga", "hi", "hr",
|
||||||
"hy", "is", "ja", "jv", "ka", "kk",
|
"hy", "is", "ja", "jv", "ka", "kk",
|
||||||
"ko", "ky", "lt", "lv", "mk", "ml", "nl", "fy",
|
"ko", "ky", "lt", "lv", "mk", "ml", "nl", "fy",
|
||||||
"nn", "pt", "pt-br", "sk", "sl", "sr", "sr-lat",
|
"nn", "pt", "pt-br", "sk", "sl", "sr", "sr-lat",
|
||||||
"sv", "sw", "th", "te", "uz",
|
"sv", "sw", "te", "uz",
|
||||||
"zh", "zu", "he",
|
"zh", "zu", "he",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
@ -27,8 +27,8 @@ PROXY_LANGS = [
|
||||||
"fy", "he", "hr", "hu", "hy",
|
"fy", "he", "hr", "hu", "hy",
|
||||||
"id", "is", "it", "ja", "kk",
|
"id", "is", "it", "ja", "kk",
|
||||||
"lv", "mk", "nb", "nn", "ro",
|
"lv", "mk", "nb", "nn", "ro",
|
||||||
"ru", "sl", "pt-br", "uk", "uz",
|
"ru", "sl", "th", "pt-br", "uk", "uz",
|
||||||
"vi",
|
"vi", "zh-cn", "zh-tw",
|
||||||
]
|
]
|
||||||
|
|
||||||
SUPPORTED_LANGS = FULL_TRANSLATION + PARTIAL_TRANSLATION
|
SUPPORTED_LANGS = FULL_TRANSLATION + PARTIAL_TRANSLATION
|
||||||
|
|
@ -96,7 +96,7 @@ asi que hemos decidido enseñarte el tiempo en Oymyakon,
|
||||||
uno de los sitios más fríos y permanentemente deshabitados del planeta.
|
uno de los sitios más fríos y permanentemente deshabitados del planeta.
|
||||||
""",
|
""",
|
||||||
'fa': u"""
|
'fa': u"""
|
||||||
ما نتونستیم مکان شما رو پیدا کنیم. به همین خاطر شما رو به om بردیم
|
ما نتونستیم مکان شما رو پیدا کنیم. به همین خاطر شما رو به اویمیاکن بردیم
|
||||||
، یکی از سردترین مکان های روی زمین که اصلا قابل سکونت نیست!
|
، یکی از سردترین مکان های روی زمین که اصلا قابل سکونت نیست!
|
||||||
""",
|
""",
|
||||||
'fi': u"""
|
'fi': u"""
|
||||||
|
|
@ -224,6 +224,9 @@ Umarız sizin olduğunuz yerde havalar daha iyidir!
|
||||||
మేము మీ స్థానాన్ని కనుగొనలేకపోయాము
|
మేము మీ స్థానాన్ని కనుగొనలేకపోయాము
|
||||||
కనుక మనం "ఓమాయకాన్కు" తీసుకొని వచ్చాము,
|
కనుక మనం "ఓమాయకాన్కు" తీసుకొని వచ్చాము,
|
||||||
భూమిపై అత్యల్ప శాశ్వతంగా నివసించే స్థానిక ప్రదేశాలలో ఒకటి.
|
భూమిపై అత్యల్ప శాశ్వతంగా నివసించే స్థానిక ప్రదేశాలలో ఒకటి.
|
||||||
|
""",
|
||||||
|
'th': u"""
|
||||||
|
เราไม่สามารถหาตำแหน่งของคุณได้เราจึงนำคุณไปสู่ Oymyakon หมู่บ้านที่หนาวที่สุดในโลก!
|
||||||
""",
|
""",
|
||||||
'uk': u"""
|
'uk': u"""
|
||||||
Ми не змогли визначити Ваше місцезнаходження,
|
Ми не змогли визначити Ваше місцезнаходження,
|
||||||
|
|
@ -254,6 +257,11 @@ mis on üks kõige külmemaid püsivalt asustatud paiku planeedil.
|
||||||
Chúng tôi không tìm thấy địa điểm của bạn
|
Chúng tôi không tìm thấy địa điểm của bạn
|
||||||
vì vậy chúng tôi đưa bạn đến Oymyakon,
|
vì vậy chúng tôi đưa bạn đến Oymyakon,
|
||||||
một trong những nơi lạnh nhất có người sinh sống trên trái đất.
|
một trong những nơi lạnh nhất có người sinh sống trên trái đất.
|
||||||
|
""",
|
||||||
|
'zh-tw': u"""
|
||||||
|
我們找不到您的位置
|
||||||
|
所以我們帶您到奧伊米亞康,
|
||||||
|
這個星球上有人類定居最冷之處。
|
||||||
""",
|
""",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
@ -298,10 +306,12 @@ một trong những nơi lạnh nhất có người sinh sống trên trái đ
|
||||||
'sv': u'Okänd plats',
|
'sv': u'Okänd plats',
|
||||||
'te': u'తెలియని ప్రదేశం',
|
'te': u'తెలియని ప్రదేశం',
|
||||||
'tr': u'Bilinmeyen konum',
|
'tr': u'Bilinmeyen konum',
|
||||||
|
'th': u'ไม่สามารถระบุตำแหน่งได้',
|
||||||
'uk': u'Невідоме місце',
|
'uk': u'Невідоме місце',
|
||||||
'uz': u'Аникланмаган худуд',
|
'uz': u'Аникланмаган худуд',
|
||||||
'zh': u'未知地点',
|
'zh': u'未知地点',
|
||||||
'vi': u'Địa điểm không xác định',
|
'vi': u'Địa điểm không xác định',
|
||||||
|
'zh-tw': u'未知位置',
|
||||||
},
|
},
|
||||||
|
|
||||||
'LOCATION': {
|
'LOCATION': {
|
||||||
|
|
@ -346,8 +356,10 @@ một trong những nơi lạnh nhất có người sinh sống trên trái đ
|
||||||
'zh': u'地点',
|
'zh': u'地点',
|
||||||
'te': u'స్థానము',
|
'te': u'స్థానము',
|
||||||
'tr': u'Konum',
|
'tr': u'Konum',
|
||||||
|
'th': u'ตำแหน่ง',
|
||||||
'uk': u'Місцезнаходження',
|
'uk': u'Місцезнаходження',
|
||||||
'vi': u'Địa điểm',
|
'vi': u'Địa điểm',
|
||||||
|
'zh-tw': u'位置',
|
||||||
},
|
},
|
||||||
|
|
||||||
'CAPACITY_LIMIT_REACHED': {
|
'CAPACITY_LIMIT_REACHED': {
|
||||||
|
|
@ -394,7 +406,7 @@ Pots seguir https://twitter.com/igor_chubin per noves actualitzacions.
|
||||||
""",
|
""",
|
||||||
'de': u"""
|
'de': u"""
|
||||||
Entschuldigung, wir können momentan den Wetterdienst nicht erreichen.
|
Entschuldigung, wir können momentan den Wetterdienst nicht erreichen.
|
||||||
Dafür zeigen wir Ihnen das Wetter an einem Beispielort, damit Sie sehen wie die Seite das Wetter anzeigt.
|
Dafür zeigen wir Ihnen das Wetter an einem Beispielort, damit Sie sehen, wie die Seite das Wetter anzeigt.
|
||||||
Wir werden versuchen das Problem so schnell wie möglich zu beheben.
|
Wir werden versuchen das Problem so schnell wie möglich zu beheben.
|
||||||
Folgen Sie https://twitter.com/igor_chubin für Updates.
|
Folgen Sie https://twitter.com/igor_chubin für Updates.
|
||||||
======================================================================================
|
======================================================================================
|
||||||
|
|
@ -408,7 +420,7 @@ Gellir dilyn https://twitter.com/igor_chubin i gael newyddion pellach.
|
||||||
""",
|
""",
|
||||||
'es': u"""
|
'es': u"""
|
||||||
Lo siento, hemos alcanzado el límite de peticiones al servicio de previsión del tiempo en este momento.
|
Lo siento, hemos alcanzado el límite de peticiones al servicio de previsión del tiempo en este momento.
|
||||||
A continuación, la previsión del tiempo para una ciudad estándar (solo para que puedas ver que aspecto tiene el informe).
|
A continuación, la previsión del tiempo para una ciudad estándar (solo para que puedas ver el formato del reporte).
|
||||||
Muy pronto volveremos a tener acceso a las peticiones.
|
Muy pronto volveremos a tener acceso a las peticiones.
|
||||||
Puedes seguir https://twitter.com/igor_chubin para estar al tanto de la situación.
|
Puedes seguir https://twitter.com/igor_chubin para estar al tanto de la situación.
|
||||||
======================================================================================
|
======================================================================================
|
||||||
|
|
@ -545,6 +557,13 @@ Varsayılan şehir için hava durumu bilgisini görüyorsunuz (neye benzediğini
|
||||||
Mümkün olan en kısa sürede servise yeniden sorgu yapmaya başlayacağız.
|
Mümkün olan en kısa sürede servise yeniden sorgu yapmaya başlayacağız.
|
||||||
Gelişmeler için https://twitter.com/igor_chubin adresini takip edebilirsiniz.
|
Gelişmeler için https://twitter.com/igor_chubin adresini takip edebilirsiniz.
|
||||||
======================================================================================
|
======================================================================================
|
||||||
|
""",
|
||||||
|
'th': u"""
|
||||||
|
ขออภัย การเรียกค้นหาระบบสภาพอากาศของเราหมดชั่วคราว
|
||||||
|
เราจึงแสดงข้อมูลของเมืองตัวอย่าง (เพื่อที่จะแสดงให้คุณเห็นว่าหน้าตาเป็นยังไง)
|
||||||
|
เราจะเรียกค้นหาใหม่โดยเร็วที่สุด
|
||||||
|
คุณสามารถติดตามการอัพเดทได้ที่ https://twitter.com/igor_chubin
|
||||||
|
======================================================================================
|
||||||
""",
|
""",
|
||||||
'da': u"""
|
'da': u"""
|
||||||
Beklager, men vi er ved at løbe tør for forespørgsler til vejr-servicen lige nu.
|
Beklager, men vi er ved at løbe tør for forespørgsler til vejr-servicen lige nu.
|
||||||
|
|
@ -573,6 +592,13 @@ Xin lỗi, hiện tại chúng tôi đã hết lượt yêu cầu thông tin th
|
||||||
Chung tôi sẽ có thêm lượt truy vấn sớm nhất có thể
|
Chung tôi sẽ có thêm lượt truy vấn sớm nhất có thể
|
||||||
Bạn có thể theo dõi https://twitter.com/igor_chubin để cập nhật thông tin mới nhất.
|
Bạn có thể theo dõi https://twitter.com/igor_chubin để cập nhật thông tin mới nhất.
|
||||||
======================================================================================
|
======================================================================================
|
||||||
|
""",
|
||||||
|
'zh-tw': u"""
|
||||||
|
抱歉,目前天氣服務的查詢請求太多了。
|
||||||
|
這裡是預設城市的天氣報告(只是為您展示它的外觀)。
|
||||||
|
我們將盡快取得新的資料。
|
||||||
|
您可以追蹤 https://twitter.com/igor_chubin 以取得更新。
|
||||||
|
======================================================================================
|
||||||
""",
|
""",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
@ -587,7 +613,7 @@ Bạn có thể theo dõi https://twitter.com/igor_chubin để cập nhật th
|
||||||
'bg': u'Нова функционалност: многоезични имена на места\033[92mwttr.in/станция+Восток\033[0m (в UTF-8) и в търсенето \033[92mwttr.in/~Kilimanjaro\033[0m (добавете ~ преди)',
|
'bg': 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',
|
'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)',
|
'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 vários idiomas \033[92mwttr.in/станция+Восток\033[0m (em UTF-8) y la búsqueda por ubicaciones \033[92mwttr.in/~Kilimanjaro\033[0m (tan solo inserte ~ en frente)',
|
'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 ~ en frente)',
|
||||||
'fa': u'قابلیت جدید: پشتیبانی از نام چند زبانه مکانها \033[92mwttr.in/станция+Восток\033[0m (در فرمت UTF-8) و جسجتوی مکان ها \033[92mwttr.in/~Kilimanjaro\033[0m (فقط قبل از اون ~ اضافه کنید)',
|
'fa': u'قابلیت جدید: پشتیبانی از نام چند زبانه مکانها \033[92mwttr.in/станция+Восток\033[0m (در فرمت UTF-8) و جسجتوی مکان ها \033[92mwttr.in/~Kilimanjaro\033[0m (فقط قبل از اون ~ اضافه کنید)',
|
||||||
'fr': u'Nouvelles fonctionnalités: noms d\'emplacements multilingues \033[92mwttr.in/станция+Восток\033[0m (en UTF-8) et recherche d\'emplacement \033[92mwttr.in/~Kilimanjaro\033[0m (ajouter ~ devant)',
|
'fr': u'Nouvelles fonctionnalités: noms d\'emplacements multilingues \033[92mwttr.in/станция+Восток\033[0m (en UTF-8) et recherche d\'emplacement \033[92mwttr.in/~Kilimanjaro\033[0m (ajouter ~ devant)',
|
||||||
'mk': u'Нова функција: повеќе јазично локациски имиња \033[92mwttr.in/станция+Восток\033[0m (во UTF-8) и локациско пребарување \033[92mwttr.in/~Kilimanjaro\033[0m (just add ~ before)',
|
'mk': u'Нова функција: повеќе јазично локациски имиња \033[92mwttr.in/станция+Восток\033[0m (во UTF-8) и локациско пребарување \033[92mwttr.in/~Kilimanjaro\033[0m (just add ~ before)',
|
||||||
|
|
@ -612,10 +638,12 @@ Bạn có thể theo dõi https://twitter.com/igor_chubin để cập nhật th
|
||||||
'zh': u'新功能:多语言地点名称 \033[92mwttr.in/станция+Восток\033[0m (in UTF-8) 及地点搜索\033[92mwttr.in/~Kilimanjaro\033[0m (只需在名称前加~)',
|
'zh': u'新功能:多语言地点名称 \033[92mwttr.in/станция+Восток\033[0m (in UTF-8) 及地点搜索\033[92mwttr.in/~Kilimanjaro\033[0m (只需在名称前加~)',
|
||||||
'tr': u'Yeni özellik: çok dilli konum isimleri \033[92mwttr.in/станция+Восток\033[0m (UTF-8 ile) ve konum arama \033[92mwttr.in/~Kilimanjaro\033[0m (sadece önüne ~ ekleyin)',
|
'tr': u'Yeni özellik: çok dilli konum isimleri \033[92mwttr.in/станция+Восток\033[0m (UTF-8 ile) ve konum arama \033[92mwttr.in/~Kilimanjaro\033[0m (sadece önüne ~ ekleyin)',
|
||||||
'te': u'క్రొత్త లక్షణం: బహుభాషా స్థాన పేర్లు \ 033 [92mwttr.in/stancelя+Vostок\033 [0 U (UTF-8 లో) మరియు స్థానం శోధన \ 033 [92mwttr.in/~kilimanjaro\033 [0m (కేవలం ~ ముందుకి జోడించండి)',
|
'te': u'క్రొత్త లక్షణం: బహుభాషా స్థాన పేర్లు \ 033 [92mwttr.in/stancelя+Vostок\033 [0 U (UTF-8 లో) మరియు స్థానం శోధన \ 033 [92mwttr.in/~kilimanjaro\033 [0m (కేవలం ~ ముందుకి జోడించండి)',
|
||||||
|
'th': u'ฟีเจอร์ใหม่: แสดงที่ตั้งได้หลายภาษา \033[92mwttr.in/станция+Восток\033[0m (ใน UTF-8) และการค้นหาที่ตั้ง \033[92mwttr.in/~Kilimanjaro\033[0m (เพียงเพิ่ม ~ ข้างหน้า)',
|
||||||
'da': u'Ny funktion: flersprogede lokationsnavne \033[92mwttr.in/станция+Восток\033[0m (som UTF-8) og lokations søgning \033[92mwttr.in/~Kilimanjaro\033[0m (bare tilføj ~ inden)',
|
'da': u'Ny funktion: flersprogede lokationsnavne \033[92mwttr.in/станция+Восток\033[0m (som UTF-8) og lokations søgning \033[92mwttr.in/~Kilimanjaro\033[0m (bare tilføj ~ inden)',
|
||||||
'et': u'Uus funktsioon: mitmekeelsed asukohanimed \033[92mwttr.in/станция+Восток\033[0m (UTF-8 vormingus) ja asukoha otsing \033[92mwttr.in/~Kilimanjaro\033[0m (lisa ~ enne)',
|
'et': u'Uus funktsioon: mitmekeelsed asukohanimed \033[92mwttr.in/станция+Восток\033[0m (UTF-8 vormingus) ja asukoha otsing \033[92mwttr.in/~Kilimanjaro\033[0m (lisa ~ enne)',
|
||||||
'uk': u'Спробуйте: назви місць будь-якою мовою \033[92mwttr.in/станція+Восток\033[0m (в UTF-8) та пошук місць \033[92mwttr.in/~Kilimanjaro\033[0m (потрібно додати ~ спочатку)',
|
'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)',
|
'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 (只要在地點前加 ~ 就可以了)',
|
||||||
},
|
},
|
||||||
|
|
||||||
'FOLLOW_ME': {
|
'FOLLOW_ME': {
|
||||||
|
|
@ -649,10 +677,12 @@ Bạn có thể theo dõi https://twitter.com/igor_chubin để cập nhật th
|
||||||
'zh': u'关注 \033[46m\033[30m@igor_chubin\033[0m 获取 wttr.in 动态',
|
'zh': u'关注 \033[46m\033[30m@igor_chubin\033[0m 获取 wttr.in 动态',
|
||||||
'te': u'అనుసరించండి \ 033 [46m \ 033 [30m @ igor_chubin \ 033 [wttr.in నవీకరణలను కోసం',
|
'te': u'అనుసరించండి \ 033 [46m \ 033 [30m @ igor_chubin \ 033 [wttr.in నవీకరణలను కోసం',
|
||||||
'tr': u'wttr.in ile ilgili gelişmeler için \033[46m\033[30m@igor_chubin\033[0m adresini takip edin',
|
'tr': u'wttr.in ile ilgili gelişmeler için \033[46m\033[30m@igor_chubin\033[0m adresini takip edin',
|
||||||
|
'th': u'ติดตาม \033[46m\033[30m@igor_chubin\033[0m สำหรับการอัพเดท wttr.in',
|
||||||
'da': u'Følg \033[46m\033[30m@igor_chubin\033[0m for at få wttr.in opdateringer',
|
'da': u'Følg \033[46m\033[30m@igor_chubin\033[0m for at få wttr.in opdateringer',
|
||||||
'et': u'Jälgi \033[46m\033[30m@igor_chubin\033[0m wttr.in uudiste tarbeks',
|
'et': u'Jälgi \033[46m\033[30m@igor_chubin\033[0m wttr.in uudiste tarbeks',
|
||||||
'uk': u'Нові можливості wttr.in публікуються тут: \033[46m\033[30m@igor_chubin\033[0m',
|
'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',
|
'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 的動態',
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -671,9 +701,9 @@ CAPTION = {
|
||||||
"el": u"Πρόγνωση καιρού για:",
|
"el": u"Πρόγνωση καιρού για:",
|
||||||
"en": u"weather report for:",
|
"en": u"weather report for:",
|
||||||
"eo": u"Veterprognozo por:",
|
"eo": u"Veterprognozo por:",
|
||||||
"es": u"El tiempo en:",
|
"es": u"El reporte del tiempo en:",
|
||||||
"et": u"Ilmaprognoos:",
|
"et": u"Ilmaprognoos:",
|
||||||
"fa": u"ﺍﻮﻫ ﻭ ﺏﺁ ﺕیﻊﺿﻭ ﺵﺭﺍﺯگ",
|
"fa": u"گزارش آب و هئا برای شما:",
|
||||||
"fi": u"Säätiedotus:",
|
"fi": u"Säätiedotus:",
|
||||||
"fr": u"Prévisions météo pour:",
|
"fr": u"Prévisions météo pour:",
|
||||||
"fy": u"Waarberjocht foar:",
|
"fy": u"Waarberjocht foar:",
|
||||||
|
|
@ -715,11 +745,14 @@ CAPTION = {
|
||||||
"uk": u"Прогноз погоди для:",
|
"uk": u"Прогноз погоди для:",
|
||||||
"uz": u"Ob-havo bashorati:",
|
"uz": u"Ob-havo bashorati:",
|
||||||
"vi": u"Báo cáo thời tiết:",
|
"vi": u"Báo cáo thời tiết:",
|
||||||
"zh": u"天氣預報:",
|
"zh": u"天气预报:",
|
||||||
"zu": u"Isimo sezulu:",
|
"zu": u"Isimo sezulu:",
|
||||||
|
"zh-tw": u"天氣報告:",
|
||||||
}
|
}
|
||||||
|
|
||||||
def get_message(message_name, lang):
|
def get_message(message_name, lang):
|
||||||
|
if lang == 'zh-cn':
|
||||||
|
lang = 'zh'
|
||||||
if message_name not in MESSAGE:
|
if message_name not in MESSAGE:
|
||||||
return ''
|
return ''
|
||||||
message_dict = MESSAGE[message_name]
|
message_dict = MESSAGE[message_name]
|
||||||
|
|
|
||||||
70
lib/translations_v2.py
Normal file
70
lib/translations_v2.py
Normal file
|
|
@ -0,0 +1,70 @@
|
||||||
|
# vim: fileencoding=utf-8
|
||||||
|
|
||||||
|
"""
|
||||||
|
Translation of v2
|
||||||
|
"""
|
||||||
|
|
||||||
|
# pylint: disable=line-too-long,bad-whitespace
|
||||||
|
V2_TRANSLATION = {
|
||||||
|
"en": ("Weather report for:", "Weather", "Timezone", "Now", "Dawn", "Sunrise", "Zenith", "Sunset", "Dusk"),
|
||||||
|
"af": ("Weer verslag vir:", "", "", "", "", "", "", "", ""),
|
||||||
|
"ar": ("تقرير حالة ألطقس", "", "", "", "", "", "", "", ""),
|
||||||
|
"az": ("Hava proqnozu:", "", "", "", "", "", "", "", ""),
|
||||||
|
"be": ("Прагноз надвор'я для:", "", "", "", "", "", "", "", ""),
|
||||||
|
"bg": ("Прогноза за времето в:", "", "", "", "", "", "", "", ""),
|
||||||
|
"bs": ("Vremenske prognoze za:", "", "", "", "", "", "", "", ""),
|
||||||
|
"ca": ("Informe del temps per a:", "", "", "", "", "", "", "", ""),
|
||||||
|
"cs": ("Předpověď počasí pro:", "", "", "", "", "", "", "", ""),
|
||||||
|
"cy": ("Adroddiad tywydd ar gyfer:", "", "", "", "", "", "", "", ""),
|
||||||
|
"da": ("Vejret i:", "", "", "", "", "", "", "", ""),
|
||||||
|
"de": ("Wetterbericht für:", "Wetter", "Zeitzone", "Jetzt", "Morgendämmerung", "Sonnenaufgang","Zenit", "Sonnenuntergang", "Abenddämmerung"),
|
||||||
|
"el": ("Πρόγνωση καιρού για:", "", "", "", "", "", "", "", ""),
|
||||||
|
"eo": ("Veterprognozo por:", "Vetero", "Horzono", "Nun", "Tagiĝo", "Sunleviĝo", "Zenito", "Sunsubiro", "Krepusko"),
|
||||||
|
"es": ("El tiempo en:", "", "", "", "", "", "", "", ""),
|
||||||
|
"et": ("Ilmaprognoos:", "", "", "", "", "", "", "", ""),
|
||||||
|
"fa": ("اوه و بآ تیعضو شرازگ", "", "", "", "", "", "", "", ""),
|
||||||
|
"fi": ("Säätiedotus:", "", "", "", "", "", "", "", ""),
|
||||||
|
"fr": ("Prévisions météo pour:", "", "", "", "", "", "", "", ""),
|
||||||
|
"fy": ("Waarberjocht foar:", "", "", "", "", "", "", "", ""),
|
||||||
|
"ga": ("Réamhaisnéis na haimsire do:", "", "", "", "", "", "", "", ""),
|
||||||
|
"he": (":ריוואה גזמ תיזחת", "", "", "", "", "", "", "", ""),
|
||||||
|
"hr": ("Vremenska prognoza za:", "", "", "", "", "", "", "", ""),
|
||||||
|
"hu": ("Időjárás előrejelzés:", "", "", "", "", "", "", "", ""),
|
||||||
|
"hy": ("Եղանակի տեսություն:", "", "", "", "", "", "", "", ""),
|
||||||
|
"id": ("Prakiraan cuaca:", "", "", "", "", "", "", "", ""),
|
||||||
|
"it": ("Previsioni meteo:", "", "", "", "", "", "", "", ""),
|
||||||
|
"is": ("Veðurskýrsla fyrir:", "", "", "", "", "", "", "", ""),
|
||||||
|
"ja": ("天気予報:", "天気", "タイムゾーン", "今", "夜明け", "日の出", "天頂", "日の入", "日暮れ"),
|
||||||
|
"jv": ("Weather forecast for:", "", "", "", "", "", "", "", ""),
|
||||||
|
"ka": ("ამინდის პროგნოზი:", "", "", "", "", "", "", "", ""),
|
||||||
|
"kk": ("Ауа райы:", "", "", "", "", "", "", "", ""),
|
||||||
|
"ko": ("일기 예보:", "", "", "", "", "", "", "", ""),
|
||||||
|
"ky": ("Аба ырайы:", "", "", "", "", "", "", "", ""),
|
||||||
|
"lt": ("Orų prognozė:", "", "", "", "", "", "", "", ""),
|
||||||
|
"lv": ("Laika ziņas:", "", "", "", "", "", "", "", ""),
|
||||||
|
"mk": ("Прогноза за времето во:", "", "", "", "", "", "", "", ""),
|
||||||
|
"ml": ("കാലാവസ്ഥ റിപ്പോർട്ട്:", "", "", "", "", "", "", "", ""),
|
||||||
|
"nb": ("Værmelding for:", "", "", "", "", "", "", "", ""),
|
||||||
|
"nl": ("Weerbericht voor:", "Weer", "Tijdzone", "Nu", "Dageraad", "Zonsopkomst", "Zenit", "Zonsondergang", "Schemering"),
|
||||||
|
"nn": ("Vêrmelding for:", "", "", "", "", "", "", "", ""),
|
||||||
|
"pl": ("Pogoda w:", "", "", "", "", "", "", "", ""),
|
||||||
|
"pt": ("Previsão do tempo para:", "Tempo", "Fuso horário", "Agora", "Alvorada", "Nascer do sol", "Zénite", "Pôr do sol", "Crepúsculo"),
|
||||||
|
"pt-br": ("Previsão do tempo para:", "Tempo", "Fuso horário", "Agora", "Alvorada", "Nascer do sol", "Zénite", "Pôr do sol", "Crepúsculo"),
|
||||||
|
"ro": ("Prognoza meteo pentru:", "", "", "", "", "", "", "", ""),
|
||||||
|
"ru": ("Прогноз погоды:", "Погода", "Часовой пояс", "Сейчас", "Рассвет", "Восход", "Зенит", "Закат", "Сумерки"),
|
||||||
|
"sk": ("Predpoveď počasia pre:", "", "", "", "", "", "", "", ""),
|
||||||
|
"sl": ("Vremenska napoved za", "", "", "", "", "", "", "", ""),
|
||||||
|
"sr": ("Временска прогноза за:", "", "", "", "", "", "", "", ""),
|
||||||
|
"sr-lat": ("Vremenska prognoza za:", "", "", "", "", "", "", "", ""),
|
||||||
|
"sv": ("Väderleksprognos för:", "", "", "", "", "", "", "", ""),
|
||||||
|
"sw": ("Ripoti ya hali ya hewa, jiji la:", "", "", "", "", "", "", "", ""),
|
||||||
|
"te": ("వాతావరణ సమాచారము:", "", "", "", "", "", "", "", ""),
|
||||||
|
"th": ("รายงานสภาพอากาศ:", "", "", "", "", "", "", "", ""),
|
||||||
|
"tr": ("Hava beklentisi:", "", "", "", "", "", "", "", ""),
|
||||||
|
"uk": ("Прогноз погоди для:", "Погода", "Часовий пояс", "Зараз", "Світанок", "Схід сонця", "Зеніт", "Захід сонця", "Сутінки"),
|
||||||
|
"uz": ("Ob-havo bashorati:", "", "", "", "", "", "", "", ""),
|
||||||
|
"vi": ("Báo cáo thời tiết:", "", "", "", "", "", "", "", ""),
|
||||||
|
"zh": ("天气预报:", "天气", "时区", "当前", "黎明", "日出", "正午", "日落", "黄昏"),
|
||||||
|
"zh-tw": ("天氣預報:", "天氣", "時區", "目前", "黎明", "日出", "日正當中", "日落", "黃昏"),
|
||||||
|
"zu": ("Isimo sezulu:", "", "", "", "", "", "", "", ""),
|
||||||
|
}
|
||||||
|
|
@ -101,6 +101,16 @@ def render_precipitation(data, query):
|
||||||
answer += 'mm'
|
answer += 'mm'
|
||||||
return answer
|
return answer
|
||||||
|
|
||||||
|
def render_precipitation_chance(data, query):
|
||||||
|
"""
|
||||||
|
precipitation chance (o)
|
||||||
|
"""
|
||||||
|
|
||||||
|
answer = data.get('chanceofrain', '')
|
||||||
|
if answer:
|
||||||
|
answer += '%'
|
||||||
|
return answer
|
||||||
|
|
||||||
def render_pressure(data, query):
|
def render_pressure(data, query):
|
||||||
"""
|
"""
|
||||||
pressure (P)
|
pressure (P)
|
||||||
|
|
@ -189,6 +199,7 @@ FORMAT_SYMBOL = {
|
||||||
'M': render_moonday,
|
'M': render_moonday,
|
||||||
's': render_sunset,
|
's': render_sunset,
|
||||||
'p': render_precipitation,
|
'p': render_precipitation,
|
||||||
|
'o': render_precipitation_chance,
|
||||||
'P': render_pressure,
|
'P': render_pressure,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -301,14 +301,14 @@ def wttr(location, request):
|
||||||
|
|
||||||
return _wrap_response(output, html_output)
|
return _wrap_response(output, html_output)
|
||||||
|
|
||||||
except RuntimeError as exception:
|
except Exception as exception:
|
||||||
if 'Malformed response' in str(exception) \
|
# if 'Malformed response' in str(exception) \
|
||||||
or 'API key has reached calls per day allowed limit' in str(exception):
|
# or 'API key has reached calls per day allowed limit' in str(exception):
|
||||||
if html_output:
|
if html_output:
|
||||||
return _wrap_response(MALFORMED_RESPONSE_HTML_PAGE, html_output)
|
return _wrap_response(MALFORMED_RESPONSE_HTML_PAGE, html_output)
|
||||||
return _wrap_response(get_message('CAPACITY_LIMIT_REACHED', lang).encode('utf-8'), html_output)
|
return _wrap_response(get_message('CAPACITY_LIMIT_REACHED', lang).encode('utf-8'), html_output)
|
||||||
logging.error("Exception has occured", exc_info=1)
|
# logging.error("Exception has occured", exc_info=1)
|
||||||
return "ERROR"
|
# return "ERROR"
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
import doctest
|
import doctest
|
||||||
|
|
|
||||||
|
|
@ -5,29 +5,33 @@ wttr.in is translated in NUMBER_OF_LANGUAGES languages:
|
||||||
Translated/improved/corrected by:
|
Translated/improved/corrected by:
|
||||||
|
|
||||||
* Afrikaans: Casper Labuschage @casperl (on github)
|
* Afrikaans: Casper Labuschage @casperl (on github)
|
||||||
* Armenian: Aram Bayadyan @aramix, Mikayel Ghazaryan @mkdotam, Grigor Khachatryan @grigortw
|
* Armenian: Aram Bayadyan @aramix, Mikayel Ghazaryan @mkdotam,
|
||||||
|
Grigor Khachatryan @grigortw
|
||||||
* Azerbaijani: Dmytro Nikitiuk, Elsevar Abbasov
|
* Azerbaijani: Dmytro Nikitiuk, Elsevar Abbasov
|
||||||
* Belarusian: Igor Chubin, Anton Zhavoronkov @edogby (on github)
|
* Belarusian: Igor Chubin, Anton Zhavoronkov @edogby (on github)
|
||||||
* Bosnian: Ismar Kunc @ismarkunc
|
* Bosnian: Ismar Kunc @ismarkunc
|
||||||
* Bulgarian: Vladimir Vitkov @zeridon (on github)
|
* Bulgarian: Vladimir Vitkov @zeridon (on github)
|
||||||
* Brazilian-PT: Tupã Negreiros @TupaNegreiros (on github)
|
* Brazilian-PT: Tupã Negreiros @TupaNegreiros (on github)
|
||||||
* Catalan: Angel Jarabo @legna29A
|
* Catalan: Angel Jarabo @legna29A
|
||||||
|
* Chinese(Traditional): Jeff Huang
|
||||||
|
* Chinese(Simplified): YouthLin Chen(@YouthLin on github), Junhan (@junhan-z on github),
|
||||||
|
Felix Wong (@gnowxilef on github)
|
||||||
* Croatian: Siniša Kusić @ku5ic
|
* Croatian: Siniša Kusić @ku5ic
|
||||||
* Czech: Juraj Kakody
|
* Czech: Juraj Kakody
|
||||||
* Danish: Kim Schulz @kimusan (on github)
|
* Danish: Kim Schulz @kimusan (on github)
|
||||||
* Dutch: Youri Claes
|
* Dutch: Youri Claes
|
||||||
* Frisian: Anne Douwe Bouma @anned20 (on github)
|
|
||||||
* Esperanto: Igor Chubin
|
* Esperanto: Igor Chubin
|
||||||
* Estonian: Jaan Jänesmäe @janesmae (on github)
|
* Estonian: Jaan Jänesmäe @janesmae (on github)
|
||||||
* Finnish: @Maxifi
|
* Finnish: @Maxifi
|
||||||
* French: Igor Chubin, @daftaupe
|
* French: Igor Chubin, @daftaupe, @iago-lito
|
||||||
|
* Frisian: Anne Douwe Bouma @anned20 (on github)
|
||||||
* German: Igor Chubin, @MAGICC (https://kthx.at)
|
* German: Igor Chubin, @MAGICC (https://kthx.at)
|
||||||
* Greek: Panayotis Vryonis and @Petewg (on github)
|
* Greek: Panayotis Vryonis and @Petewg (on github)
|
||||||
* Hebrew: E.R.
|
* Hebrew: E.R.
|
||||||
* Hungarian: Mark Petruska
|
* Hungarian: Mark Petruska
|
||||||
* Italian: Diego Maniacco
|
|
||||||
* Icelandic: Óli G. @dvergur, Skúli Arnlaugsson @Arnlaugsson
|
* Icelandic: Óli G. @dvergur, Skúli Arnlaugsson @Arnlaugsson
|
||||||
* Indonesian: Andria Arisal @andria009
|
* Indonesian: Andria Arisal @andria009
|
||||||
|
* Italian: Diego Maniacco
|
||||||
* Japanese: @ryunix
|
* Japanese: @ryunix
|
||||||
* Kazakh: Akku Tutkusheva, Oleg Tropinin
|
* Kazakh: Akku Tutkusheva, Oleg Tropinin
|
||||||
* Korean: Jeremy Bae @opt9, Jung Winter @res_tin
|
* Korean: Jeremy Bae @opt9, Jung Winter @res_tin
|
||||||
|
|
@ -40,17 +44,18 @@ Translated/improved/corrected by:
|
||||||
* Portuguese: Fernando Bitti Loureiro @fbitti (on github)
|
* Portuguese: Fernando Bitti Loureiro @fbitti (on github)
|
||||||
* Romanian: Gabriel Moruz
|
* Romanian: Gabriel Moruz
|
||||||
* Russian: Igor Chubin
|
* Russian: Igor Chubin
|
||||||
* Spanish: Fernando Bitti Loureiro @fbitti (on github)
|
* Serbian: Milan Stevanović @FathVader
|
||||||
* Slovak: Juraj Kakody
|
* Slovak: Juraj Kakody
|
||||||
* Slovenian: B.S.
|
* Slovenian: B.S.
|
||||||
|
* Spanish: Fernando Bitti Loureiro @fbitti (on github)
|
||||||
* Swedish: John Eriksson
|
* Swedish: John Eriksson
|
||||||
* Serbian: Milan Stevanović @FathVader
|
|
||||||
* Swahili: Joel Mukuthu
|
* Swahili: Joel Mukuthu
|
||||||
* Turkish: Atabey Kaygun, Yilmaz @edigu, Volkan Tokmak(@volkanto)
|
* Turkish: Atabey Kaygun, Yilmaz @edigu, Volkan Tokmak(@volkanto)
|
||||||
|
* Thai: Vatunyoo Suwannapisit @kerlos
|
||||||
* Ukrainian: Igor Chubin, Serhiy @pavse
|
* Ukrainian: Igor Chubin, Serhiy @pavse
|
||||||
* Uzbek: Shukhrat Mukimov
|
* Uzbek: Shukhrat Mukimov
|
||||||
* Welsh: Daniel Thomas
|
|
||||||
* Vietnamese: Lưu Vĩnh Phúc @phuclv90 (on github)
|
* Vietnamese: Lưu Vĩnh Phúc @phuclv90 (on github)
|
||||||
|
* Welsh: Daniel Thomas
|
||||||
|
|
||||||
and many many others.
|
and many many others.
|
||||||
|
|
||||||
|
|
|
||||||
69
share/translations/be-help.txt
Normal file
69
share/translations/be-help.txt
Normal file
|
|
@ -0,0 +1,69 @@
|
||||||
|
Выкарыстанне:
|
||||||
|
|
||||||
|
$ curl wttr.in # надвор'е ў вашым месцы
|
||||||
|
$ curl wttr.in/msq # надвор'е ў аэрапорце Мінск
|
||||||
|
|
||||||
|
Магчымыя тыпы месцазнаходжання:
|
||||||
|
|
||||||
|
/novaja-mysz # населены пункт
|
||||||
|
/~dipgorodok # якое-небудзь месца
|
||||||
|
/жабінка # назва якога-небудзь месца юнікодам на нейкай мове
|
||||||
|
/gme # трохлітарны код аэрапорта
|
||||||
|
/@osm.by # даменнае імя
|
||||||
|
/220121 # паштовы індэкс
|
||||||
|
/53.953994,27.537774 # каардынаты GPS
|
||||||
|
|
||||||
|
Адмысловыя месцазнаходжанні:
|
||||||
|
|
||||||
|
/moon # Фаза месяца (дадайце ,+US або ,+France для горада Moon у ЗША або ў Францыі)
|
||||||
|
/moon@2016-10-25 # Фаза Месяца для гэтай даты (@2016-10-25)
|
||||||
|
|
||||||
|
Адзінкі вымярэння:
|
||||||
|
|
||||||
|
m # метрычная (СІ) (звычайна ўжываецца паўсюль акрамя ЗША)
|
||||||
|
u # USCS (ўжываецца ў ЗША)
|
||||||
|
M # паказваць хуткасць ветру ў м/с
|
||||||
|
|
||||||
|
Опцыі прагляду:
|
||||||
|
|
||||||
|
0 # толькі надвор'е цяпер
|
||||||
|
1 # надвор'е цяпер + 1 дзень
|
||||||
|
2 # надвор'е цяпер + 2 дні
|
||||||
|
A # не зважаць на User-Agent і мусова ўжываць фармат вываду ANSI (як у тэрмінале)
|
||||||
|
F # не паказваць радок "Сачыце за навінамі"
|
||||||
|
n # вузкая версія (толькі дзень і ноч)
|
||||||
|
q # ціхая версія (без тэксту "Прагноз надвор'я для")
|
||||||
|
Q # надта ціхая версія (без "Прагноз надвор'я для", без назвы месца)
|
||||||
|
T # выключыць паслядоўнасці тэрміналу (без колераў)
|
||||||
|
|
||||||
|
Опцыі PNG:
|
||||||
|
|
||||||
|
/szklow.png # выдаць файл PNG
|
||||||
|
p # дадаць рамку вакол
|
||||||
|
t # празрыстасць 150
|
||||||
|
transparency=... # празрыстасць ад 0 да 255 (255 = непразрыста)
|
||||||
|
|
||||||
|
Опцыі можна спалучаць:
|
||||||
|
|
||||||
|
/iuje?pq
|
||||||
|
/dzvinsk?0pq&lang=be
|
||||||
|
/bielastok_0pq.png # для PNG опцыі падаюцца пасля знаку _
|
||||||
|
/turau_0pq_lang=be.png # доўгія опцыі адасабляюцца знакам _
|
||||||
|
|
||||||
|
Лакалізацыя:
|
||||||
|
|
||||||
|
$ curl be.wttr.in/Minsk
|
||||||
|
$ curl wttr.in/minsk?lang=be
|
||||||
|
$ curl -H "Accept-Language: be" wttr.in/minsk
|
||||||
|
|
||||||
|
Даступныя мовы:
|
||||||
|
|
||||||
|
FULL_TRANSLATION (падтрымліваюцца)
|
||||||
|
PARTIAL_TRANSLATION (не цалкам)
|
||||||
|
|
||||||
|
Адмысловыя адрасы:
|
||||||
|
|
||||||
|
/:help # паказаць гэтую старонку
|
||||||
|
/:bash.function # паказаць рэкамендаваную функцыю bash wttr()
|
||||||
|
/:translation # паказаць спіс перакладаў
|
||||||
|
|
||||||
|
|
@ -7,24 +7,24 @@
|
||||||
176: Месцамі дождж : Patchy rain possible :
|
176: Месцамі дождж : Patchy rain possible :
|
||||||
179: Месцамі снег : Patchy snow possible :
|
179: Месцамі снег : Patchy snow possible :
|
||||||
182: Месцамі дождж са снегам : Patchy sleet possible :
|
182: Месцамі дождж са снегам : Patchy sleet possible :
|
||||||
185: Месцамі студзёная імжа : Patchy freezing drizzle possible :
|
185: Месцамі сцюдзёная імжа : Patchy freezing drizzle possible :
|
||||||
200: Месцамі навальніцы : Thundery outbreaks possible :
|
200: Месцамі навальніцы : Thundery outbreaks possible :
|
||||||
227: Нізавая завіруха : Blowing snow :
|
227: Нізавая завіруха : Blowing snow :
|
||||||
230: Мяцеліца : Blizzard :
|
230: Мяцеліца : Blizzard :
|
||||||
248: Туман : Fog :
|
248: Туман : Fog :
|
||||||
260: Студзёны туман : Freezing fog :
|
260: Сцюдзёны туман : Freezing fog :
|
||||||
263: Месцамі невялікая імжа : Patchy light drizzle :
|
263: Месцамі невялікая імжа : Patchy light drizzle :
|
||||||
266: Невялікая імжа : Light drizzle :
|
266: Невялікая імжа : Light drizzle :
|
||||||
281: Студзёная імжа : Freezing drizzle :
|
281: Сцюдзёная імжа : Freezing drizzle :
|
||||||
284: Моцная студзёная імжа : Heavy freezing drizzle :
|
284: Моцная сцюдзёная імжа : Heavy freezing drizzle :
|
||||||
293: Месцамі невялікі дождж : Patchy light rain :
|
293: Месцамі невялікі дождж : Patchy light rain :
|
||||||
296: Невялікі дождж : Light rain :
|
296: Невялікі дождж : Light rain :
|
||||||
299: Часам умераны дождж : Moderate rain at times :
|
299: Часам умераны дождж : Moderate rain at times :
|
||||||
302: Умераны дождж : Moderate rain :
|
302: Умераны дождж : Moderate rain :
|
||||||
305: Часам моцны дождж : Heavy rain at times :
|
305: Часам моцны дождж : Heavy rain at times :
|
||||||
308: Моцны дождж : Heavy rain :
|
308: Моцны дождж : Heavy rain :
|
||||||
311: Невялікі студзёны дождж : Light freezing rain :
|
311: Невялікі сцюдзёны дождж : Light freezing rain :
|
||||||
314: Умераны ці моцны студзёны дождж : Moderate or heavy freezing rain :
|
314: Умераны ці моцны сцюдзёны дождж : Moderate or heavy freezing rain :
|
||||||
317: Невялікі дождж са снегам : Light sleet :
|
317: Невялікі дождж са снегам : Light sleet :
|
||||||
320: Умераны ці моцны дождж са снегам : Moderate or heavy sleet :
|
320: Умераны ці моцны дождж са снегам : Moderate or heavy sleet :
|
||||||
323: Месцамі невялікі снег : Patchy light snow :
|
323: Месцамі невялікі снег : Patchy light snow :
|
||||||
|
|
|
||||||
66
share/translations/ca-help.txt
Normal file
66
share/translations/ca-help.txt
Normal file
|
|
@ -0,0 +1,66 @@
|
||||||
|
Instruccions:
|
||||||
|
|
||||||
|
$ curl wttr.in # el clima de la ubicació actual
|
||||||
|
$ curl wttr.in/muc # el clima de l'aeroport de Múnich
|
||||||
|
|
||||||
|
Tipus d'ubicacions suportades:
|
||||||
|
|
||||||
|
/paris # el nom d'una ciutat
|
||||||
|
/~Eiffel+tower # el nom de qualsevol lloc famós
|
||||||
|
/Москва # el nom Unicode de qualsevol lloc en qualsevol idioma
|
||||||
|
/muc # el codi d'un aeroport (3 lletres)
|
||||||
|
/@stackoverflow.com # el nom d'un domini web
|
||||||
|
/94107 # un codi d'àrea
|
||||||
|
/-78.46,106.79 # coordenades de GPS
|
||||||
|
|
||||||
|
Llocs especials:
|
||||||
|
|
||||||
|
/moon # la fase de la lluna (afegeix ,+US o ,+France per a aquests països)
|
||||||
|
/moon@2016-10-25 # la fase de la lluna en una data especfica (@2016-10-25)
|
||||||
|
|
||||||
|
Unitats:
|
||||||
|
|
||||||
|
?m # mètriques (SI) (l'estàndard a tots els llocs excepte als EEUU)
|
||||||
|
?u # Sistema Unificat de Classificació del Sòl o USCS (l'estàndard als EEUU)
|
||||||
|
?M # mostrar la velocitat del vent en m/s
|
||||||
|
|
||||||
|
Opcions de visualització:
|
||||||
|
|
||||||
|
?0 # noms el clima actual
|
||||||
|
?1 # el clima actual + la previsió d'1 dia
|
||||||
|
?2 # el clima actual + la previsió de 2 dies
|
||||||
|
?n # versió curta (només el dia i la nit)
|
||||||
|
?q # versió silenciosa (sense el text de "El temps a")
|
||||||
|
?Q # versió supersilenciosa (ni "El temps a" ni el nom de la ciutat)
|
||||||
|
?T # desactiva les seqüències del terminal (sense colors)
|
||||||
|
|
||||||
|
Opcions de PNG:
|
||||||
|
|
||||||
|
/paris.png # genera una imatge PNG
|
||||||
|
?p # afegeix una vora al voltant de la imatge
|
||||||
|
?t # transparència 150
|
||||||
|
transparency=... # transparència de 0 a 255 (255 = sense transparència)
|
||||||
|
|
||||||
|
Les opcions es poden utilitzar conjuntament:
|
||||||
|
|
||||||
|
/Paris?0pq
|
||||||
|
/Paris?0pq&lang=fr
|
||||||
|
/Paris_0pq.png # amb PNG les opcions s'especifiquen després del caràcter _
|
||||||
|
/Rome_0pq_lang=it.png # una llarga seqüència d'opcions es poden separar amb el caràcter _
|
||||||
|
|
||||||
|
Ubicació:
|
||||||
|
|
||||||
|
$ curl fr.wttr.in/Paris
|
||||||
|
$ curl wttr.in/paris?lang=fr
|
||||||
|
$ curl -H "Accept-Language: fr" wttr.in/paris
|
||||||
|
|
||||||
|
Idiomes suportats:
|
||||||
|
|
||||||
|
FULL_TRANSLATION (soportados)
|
||||||
|
PARTIAL_TRANSLATION (en progreso)
|
||||||
|
|
||||||
|
URLs especials:
|
||||||
|
|
||||||
|
/:help # mostra aquesta pàgina
|
||||||
|
/:bash.function # suggereix una funció wttr() en bash
|
||||||
|
/:translation # mostra informació sobre els traductors
|
||||||
50
share/translations/fr.txt
Normal file
50
share/translations/fr.txt
Normal file
|
|
@ -0,0 +1,50 @@
|
||||||
|
: Pluie : Rain
|
||||||
|
: Pluie légère, Averses : Light Rain, Rain Shower
|
||||||
|
: Averses : Rain Shower
|
||||||
|
113 : Temps clair : Clear
|
||||||
|
113 : Ensoleillé : Sunny
|
||||||
|
116 : Partiellement couvert : Partly cloudy
|
||||||
|
119 : Nuageux : Cloudy
|
||||||
|
122 : Couvert : Overcast
|
||||||
|
143 : Brumeux : Mist
|
||||||
|
176 : Pluies éparses possibles : Patchy rain possible
|
||||||
|
179 : Chutes de neige éparses possibles : Patchy snow possible
|
||||||
|
182 : Chutes éparses de neige fondue possibles : Patchy sleet possible
|
||||||
|
185 : Bruines givrantes éparses possibles : Patchy freezing drizzle possible
|
||||||
|
200 : Orages possibles : Thundery outbreaks possible
|
||||||
|
227 : Poudrerie : Blowing snow
|
||||||
|
230 : Blizzard : Blizzard
|
||||||
|
248 : Brouillard : Fog
|
||||||
|
260 : Brouillard givrant : Freezing fog
|
||||||
|
263 : Bruines éparses et légères : Patchy light drizzle
|
||||||
|
266 : Bruine légère : Light drizzle
|
||||||
|
281 : Bruine givrante : Freezing drizzle
|
||||||
|
284 : Forte bruine givrante : Heavy freezing drizzle
|
||||||
|
293 : Pluies éparses et légères : Patchy light rain
|
||||||
|
296 : Pluie légère : Light rain
|
||||||
|
299 : Pluie modérée intermittente : Moderate rain at times
|
||||||
|
302 : Pluie modérée : Moderate rain
|
||||||
|
305 : Forte pluie intermittente : Heavy rain at times
|
||||||
|
308 : Forte pluie : Heavy rain
|
||||||
|
311 : Pluie verglaçante légère : Light freezing rain
|
||||||
|
314 : Pluie verglaçante modérée à forte : Moderate or heavy freezing rain
|
||||||
|
317 : Chutes légères de neige fondue : Light sleet
|
||||||
|
320 : Chutes de neige fondue modérées à fortes : Moderate or heavy sleet
|
||||||
|
323 : Chutes de neige éparses et légères : Patchy light snow
|
||||||
|
326 : Chutes de neige légères : Light snow
|
||||||
|
329 : Chutes de neige éparses et modérées : Patchy moderate snow
|
||||||
|
332 : Chutes de neige modérées : Moderate snow
|
||||||
|
335 : Fortes chutes de neige éparses : Patchy heavy snow
|
||||||
|
338 : Fortes chutes de neige : Heavy snow
|
||||||
|
350 : Grésil : Ice pellets
|
||||||
|
353 : Averses légères : Light rain shower
|
||||||
|
356 : Averses modérées à fortes : Moderate or heavy rain shower
|
||||||
|
359 : Averses torrentielles : Torrential rain shower
|
||||||
|
362 : Averses légères de neige fondue : Light sleet showers
|
||||||
|
365 : Averses de neige fondue modérées à fortes : Moderate or heavy sleet showers
|
||||||
|
368 : Averses de neige légères : Light snow showers
|
||||||
|
371 : Averses de neige modérées à fortes : Moderate or heavy snow showers
|
||||||
|
386 : Pluies orageuses légères et éparses : Patchy light rain with thunder
|
||||||
|
389 : Pluies orageuses modérées à fortes : Moderate or heavy rain with thunder
|
||||||
|
392 : Chutes de neige orageuses légères et éparses : Patchy light snow with thunder
|
||||||
|
395 : Chutes de neige orageuses modérées à fortes : Moderate or heavy snow with thunder
|
||||||
69
share/translations/th-help.txt
Normal file
69
share/translations/th-help.txt
Normal file
|
|
@ -0,0 +1,69 @@
|
||||||
|
วิธีใช้:
|
||||||
|
|
||||||
|
$ curl wttr.in # ตำแหน่งปัจจุบัน
|
||||||
|
$ curl wttr.in/muc # สภาพอากาศที่สนามบินมิวนิค
|
||||||
|
|
||||||
|
รองรับสถานที่หลายรูปแบบ:
|
||||||
|
|
||||||
|
/paris # ชื่อเมือง
|
||||||
|
/~Eiffel+tower # สถานที่ใดก็ได้
|
||||||
|
/Москва # ชื่อ Unicode ของสถานที่และภาษาใดก็ได้
|
||||||
|
/muc # รหัสสนามบิน (3 ตัวอักษร)
|
||||||
|
/@stackoverflow.com # โดเมนเนม
|
||||||
|
/94107 # รหัสพื้นที่
|
||||||
|
/-78.46,106.79 # ตำแหน่ง GPS
|
||||||
|
|
||||||
|
สถานที่พิเศษ:
|
||||||
|
|
||||||
|
/moon # จันทรคติ (เพิ่ม ,+US หรือ ,+France สำหรับเมือง)
|
||||||
|
/moon@2016-10-25 # จันทรคติ สำหรับวันที่ (@2016-10-25)
|
||||||
|
|
||||||
|
หน่วย:
|
||||||
|
|
||||||
|
m # เมตริก (SI) (ใช้กับทุกที่ยกเว้นประเทศอเมริกา)
|
||||||
|
u # USCS (ใช้ในประเทศอเมริกา)
|
||||||
|
M # แสดงความเร็วลม เมตร/วินาที
|
||||||
|
|
||||||
|
ดูตัวเลือก:
|
||||||
|
|
||||||
|
0 # เฉพาะสภาพอากาศปัจจุบัน
|
||||||
|
1 # สภาพอากาศของวันพรุ่งนี้
|
||||||
|
2 # สภาพอากาศของวันมะรืน
|
||||||
|
A # ไม่สนใจ User-Agent และบังคับใช้ฟอร์แมต ANSI (terminal)
|
||||||
|
F # ไม่แสดงบรรทัดติดตาม
|
||||||
|
n # แสดงผลแบบแคบ (เฉพาะตอนเช้าและค่ำ)
|
||||||
|
q # แสดงผลแบบเงียบ (ไม่แสดงรายงานสภาพอากาศ)
|
||||||
|
Q # แสดงผลแบบเงียบที่สุด (ไม่แสดงรายงานสภาพอากาศและชื่อเมือง)
|
||||||
|
T # ปิดการทำงาน terminal sequences (ไม่มีสี)
|
||||||
|
|
||||||
|
ตัวเลือก 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 (อยู่ระหว่างการแปล)
|
||||||
|
|
||||||
|
URL พิเศษ:
|
||||||
|
|
||||||
|
/:help # แสดงหน้านี้
|
||||||
|
/:bash.function # แสดงคำแนะนำ bash function wttr()
|
||||||
|
/:translation # แสดงข้อมูลของผู้ร่วมแปล
|
||||||
|
|
||||||
81
share/translations/th.txt
Normal file
81
share/translations/th.txt
Normal file
|
|
@ -0,0 +1,81 @@
|
||||||
|
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 :
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
69
share/translations/zh-cn-help.txt
Normal file
69
share/translations/zh-cn-help.txt
Normal file
|
|
@ -0,0 +1,69 @@
|
||||||
|
用法:
|
||||||
|
|
||||||
|
$ curl wttr.in # 当前位置
|
||||||
|
$ curl wttr.in/pek # 机场三字码
|
||||||
|
|
||||||
|
支持的位置类型:
|
||||||
|
|
||||||
|
/paris # 城市名称
|
||||||
|
/~Eiffel+tower # 任意地点
|
||||||
|
/北京 # 任意语言的任意地点
|
||||||
|
/PEK # 机场三字码
|
||||||
|
/@stackoverflow.com # 域名
|
||||||
|
/94107 # 区域代码
|
||||||
|
/-78.46,106.79 # GPS 坐标
|
||||||
|
|
||||||
|
特殊位置:
|
||||||
|
|
||||||
|
/moon # 月相(加上 ,+US 或 ,+France 以察看特定城市的月相)
|
||||||
|
/moon@2016-10-25 # 特定日期的月相(@2016-10-25)
|
||||||
|
|
||||||
|
单位:
|
||||||
|
|
||||||
|
m # 公制(国际单位制)(除美国外该单位制为默认值)
|
||||||
|
u # USCS(美国默认单位制)
|
||||||
|
M # 以米/秒为单位显示风速
|
||||||
|
|
||||||
|
查看选项:
|
||||||
|
|
||||||
|
0 # 仅当前天气
|
||||||
|
1 # 当前天气 + 未来 1 天
|
||||||
|
2 # 当前天气 + 未来 2 天
|
||||||
|
A # 忽略代理(User-Agent)并强制使用 ANSI 输出格式(终端模式)
|
||||||
|
F # 不显示「关注」(Follow)那行
|
||||||
|
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 (supported)
|
||||||
|
PARTIAL_TRANSLATION (in progress)
|
||||||
|
|
||||||
|
特殊 URL:
|
||||||
|
|
||||||
|
/:help # 显示此页面
|
||||||
|
/:bash.function # 显示建议的 bash 函数 wttr()
|
||||||
|
/:translation # 显示翻译者信息
|
||||||
|
|
||||||
81
share/translations/zh-cn.txt
Normal file
81
share/translations/zh-cn.txt
Normal file
|
|
@ -0,0 +1,81 @@
|
||||||
|
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
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
69
share/translations/zh-tw-help.txt
Normal file
69
share/translations/zh-tw-help.txt
Normal file
|
|
@ -0,0 +1,69 @@
|
||||||
|
使用方法
|
||||||
|
|
||||||
|
$ curl wttr.in # 目前位置
|
||||||
|
$ curl wttr.in/muc # 慕尼黑機場的天氣
|
||||||
|
|
||||||
|
支援的位置類型:
|
||||||
|
|
||||||
|
/paris # 城市名稱
|
||||||
|
/~Eiffel+tower # 任意地點
|
||||||
|
/Москва # 任意地點在任何語言的 Unicode 名稱
|
||||||
|
/muc # 機場代碼(3個字母)
|
||||||
|
/@stackoverflow.com # 網域名稱
|
||||||
|
/94107 # 區域代碼
|
||||||
|
/-78.46,106.79 # GPS 座標
|
||||||
|
|
||||||
|
特殊位置:
|
||||||
|
|
||||||
|
/moon # 月相(加入 ,+US 或 ,+France 來觀看這些地方的月相)
|
||||||
|
/moon@2016-10-25 # 特定日期的月相 (@2016-10-25)
|
||||||
|
|
||||||
|
單位:
|
||||||
|
|
||||||
|
m # 公制(國際單位制)(除了美國以外的地方皆預設使用此單位置)
|
||||||
|
u # USCS(美國預設使用)
|
||||||
|
M # 以公尺/秒為單位顯示風速
|
||||||
|
|
||||||
|
檢視選項:
|
||||||
|
|
||||||
|
0 # 僅目前的天氣
|
||||||
|
1 # 目前的天氣+未來1天
|
||||||
|
2 # 目前的天氣+未來2天
|
||||||
|
A # 忽略使用者代理字串並強制使用 ANSI 輸出格式(終端機)
|
||||||
|
F # 不要顯示「追蹤」那行
|
||||||
|
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 (supported)
|
||||||
|
PARTIAL_TRANSLATION (in progress)
|
||||||
|
|
||||||
|
特殊 URL:
|
||||||
|
|
||||||
|
/:help # 顯示此頁面
|
||||||
|
/:bash.function # 顯示建議的 bash 函式 wttr()
|
||||||
|
/:translation # 顯示關於譯者的資訊
|
||||||
|
|
||||||
81
share/translations/zh-tw.txt
Normal file
81
share/translations/zh-tw.txt
Normal file
|
|
@ -0,0 +1,81 @@
|
||||||
|
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 :
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Loading…
Add table
Reference in a new issue