While I’ve used my Raycast Timezone Converter daily and have been happy with it, there’s always been a major missing feature: support for time ranges. While it’s great to convert a start time, I end up manually adding end times, which, let’s be honest, is downright silly when we have computers.
Well, I’ve fixed that, while keeping the base functionality and ease of use. In fact, I levelled it up considerably.
Before this process, I had no idea that there are over 600 combinations of time zones and cities in the database used by the apps we rely on. For example, Chicago, Belize, Mexico City, Saskatchewan, and the Galapagos Islands have the same offset from Greenwich (-6) and are included in the comprehensive list.
That said, there are gaps. For example, my hometown of Austin is absent, as are many other large cities. So the extension supports a bunch of aliases.
To the heart of the change: you can now specify a time range with natural language:
1pm - 3pm
1pm to 3pm
11pm through 1am
2pm until 4pm.
next Friday 1pm - 3pm
Thursday 9am to 11am
The extension continues to support two output formats (inline and list). For example, you could enter 1pm - 3pm for the time and Austin, London, Sydney for the locations and have it output as either:
1:00 PM - 3:00 PM Austin / 9:00 PM - 11:00 PM London / 6:00 AM - 8:00 AM Sydney
• 1:00 PM - 3:00 PM Austin
• 9:00 PM - 11:00 PM London
• 6:00 AM - 8:00 AM Sydney
(I use the bullet character (•) for appearance, but to ensure support in plaintext, it doen't paste as a proper list in apps like Gmail or Word.)
Working with global teams sometimes results in dealing with different days, not just different hours. So, when a time range crosses midnight in any output timezone, or when the input includes an explicit date, the extension will include day labels :
A range that stays within the same day gets one label after the end time. One that crosses midnight gets a label on each side.
As noted above, the extension now uses the JavaScript Intl API, which covers roughly 600 IANA timezones. That means that most city, country, and region names work out of the box.
There's also a curated list to handle what the native API misses, including standard abbreviations, airport codes (NYC, LAX, SFO, LHR, CDG, DXB, NRT, among many others), and informal names (howdy ATX!).
There are now over 350 abbreviations.
EAT → East Africa Time (Nairobi)
SAST → South Africa Standard Time (Johannesburg)
CAT → Central Africa Time (Harare)
WAT → West Africa Time (Lagos)
JNB / SOUTH AFRICA / CPT / CAPE TOWN / DUR / DURBAN → Johannesburg
NBO / KENYA / MBA / MOMBASA → Nairobi
CAI / EGYPT → Cairo
LOS / NIGERIA → Lagos
ACC / GHANA → Accra
CMN / MOROCCO → Casablanca
ADD / ADDIS ABABA / ETHIOPIA → Addis Ababa
DAR ES SALAAM / TANZANIA → Dar es Salaam
ALG / ALGERIA → Algiers
TIP / LIBYA → Tripoli
KRT / SUDAN → Khartoum
ABJ / IVORY COAST → Abidjan
DKR / SENEGAL → Dakar
UGANDA → Kampala
ZIMBABWE → Harare
ZAMBIA → Lusaka
TUNISIA → Tunis
IST / INDIA → India Standard Time (Kolkata)
JST → Japan Standard Time (Tokyo)
KST → Korea Standard Time (Seoul)
CST-CN → China Standard Time (Shanghai)
HKT → Hong Kong Time
SGT → Singapore Time
PHT → Philippine Time (Manila)
ICT → Indochina Time (Bangkok)
WIB → Western Indonesia Time (Jakarta)
GST → Gulf Standard Time (Dubai)
PKT → Pakistan Standard Time (Karachi)
BDT → Bangladesh Standard Time (Dhaka)
NPT → Nepal Time (Kathmandu)
MMT → Myanmar Time (Yangon)
NRT / HND / JAPAN / OSAKA → Tokyo
ICN / KOREA → Seoul
PVG / PEK / BEIJING / CHINA → Shanghai
HKG / HONG KONG → Hong Kong
SIN → Singapore
BOM / MUMBAI / DEL / DELHI / NEW DELHI → Kolkata
BLR / BANGALORE / MAA / CHENNAI / MADRAS → Kolkata
HYD / HYDERABAD / COK → Kolkata
MNL / PHILIPPINES → Manila
BKK / THAILAND / HAN / HANOI → Bangkok
CGK / INDONESIA → Jakarta
KUL / MALAYSIA → Kuala Lumpur
DXB / UAE / AUH / ABU DHABI → Dubai
DOH / DOHA / QATAR → Qatar
RUH / SAUDI ARABIA / JED / JEDDAH → Riyadh
TLV / TEL AVIV / ISRAEL → Jerusalem
KHI / PAKISTAN / ISB / ISLAMABAD / LHE / LAHORE → Karachi
DAC / BANGLADESH → Dhaka
KTM / NEPAL → Kathmandu
CMB / SRI LANKA → Colombo
RGN / MYANMAR → Yangon
SGN / SAIGON / VIETNAM → Ho Chi Minh City
PNH / CAMBODIA → Phnom Penh
VTE / LAOS → Vientiane
GMT / BST → London
UTC → UTC
WET / WEST → Lisbon
CET / CEST → Central European Time (Paris)
EET / EEST → Eastern European Time (Helsinki)
MSK → Moscow Time
IST → India Standard Time (Kolkata) — see Asia section
IST-IE → Irish Standard Time (Dublin)
IST-EU → Turkey Time (Istanbul)
LHR / LGW / UK / ENGLAND → London
BHX / BIRMINGHAM / MAN / MANCHESTER → London
CDG / FRANCE → Paris
FRA / GERMANY / HAM / HAMBURG / MUC / MUNICH → Berlin
AMS / NETHERLANDS → Amsterdam
MAD / SPAIN / BCN / BARCELONA → Madrid
AGP / MALAGA / VLC / VALENCIA / SEVILLA / SEVILLE → Madrid
FCO / ITALY / MXP / MILAN → Rome
ZRH / SWITZERLAND / GVA / GENEVA / BERN → Zurich
VIE / AUSTRIA → Vienna
ARN / SWEDEN → Stockholm
OSL / NORWAY → Oslo
CPH / DENMARK → Copenhagen
HEL / FINLAND → Helsinki
WAW / POLAND → Warsaw
PRG → Prague
BUD → Budapest
ATH / GREECE → Athens
LIS / PORTUGAL → Lisbon
BRU / BELGIUM → Brussels
SVO / RUSSIA / LED / SAINT PETERSBURG / ST PETERSBURG → Moscow
TURKEY → Istanbul
IRELAND → Dublin
KBP / KIEV / UKRAINE → Kyiv
EST / EDT / ET / EASTERN → Eastern Time
CST / CDT / CT / CENTRAL → Central Time
MST / MDT / MT / MOUNTAIN → Mountain Time
PST / PDT / PT / PACIFIC → Pacific Time
AKST / AKDT → Alaska Time
HST → Hawaii Time
AST / ADT → Atlantic Time (Halifax)
NST / NDT → Newfoundland Time
NYC / NEW YORK / NEW YORK CITY / BOS / BOSTON → Eastern (New York)
ATL / ATLANTA / MIA / MIAMI → Eastern (New York)
PHL / PHILADELPHIA / PHILLY / CLT / CHARLOTTE → Eastern (New York)
JAX / JACKSONVILLE / CMH / COLUMBUS → Eastern (New York)
DC / WASHINGTON / WASHINGTON DC → Eastern (New York)
DTW → Eastern (Detroit)
IND → Eastern (Indianapolis)
LAX / LOS ANGELES / LA / SFO / SAN FRANCISCO / SF → Pacific (Los Angeles)
SEA / SEATTLE / SAN / SAN DIEGO → Pacific (Los Angeles)
SJC / SAN JOSE / PDX / PORTLAND → Pacific (Los Angeles)
LAS / LAS VEGAS → Pacific (Los Angeles)
ORD / CHI → Central (Chicago)
DFW / DALLAS / ATX / AUS / AUSTIN → Central (Chicago)
HOU / HOUSTON / SAT / SAN ANTONIO → Central (Chicago)
MSP / MINNEAPOLIS / BNA / NASHVILLE → Central (Chicago)
OKC / OKLAHOMA CITY / FORT WORTH → Central (Chicago)
DEN → Mountain (Denver)
SLC / SALT LAKE CITY → Mountain (Denver)
PHX / ARIZONA → Mountain (Phoenix)
YYZ → Eastern (Toronto)
YUL / MONTREAL → Eastern (Montreal)
YVR / YYJ / VICTORIA → Pacific (Vancouver)
YYC / CALGARY / YEG → Mountain (Edmonton)
MEX / MEXICO → Central (Mexico City)
HAV / CUBA → Cuba Time (Havana)
AEST / AEDT → Australian Eastern Time (Sydney)
ACST → Australian Central Standard Time (Darwin)
ACDT → Australian Central Daylight Time (Adelaide)
AWST → Australian Western Time (Perth)
NZST / NZDT → New Zealand Time (Auckland)
SYD / AUSTRALIA / CBR / CANBERRA → Sydney
MEL → Melbourne
BNE → Brisbane
PER → Perth
ADL → Adelaide
AKL / NEW ZEALAND / NZ / WLG / WELLINGTON / CHC / CHRISTCHURCH → Auckland
FIJI → Fiji
HAWAII → Honolulu
GRU / SAO PAULO / BRAZIL / GIG / RIO / RIO DE JANEIRO → São Paulo
EZE / BUENOS AIRES / ARGENTINA → Buenos Aires
SCL / CHILE → Santiago
BOG / COLOMBIA → Bogotá
LIM / PERU → Lima
UIO / QUITO / ECUADOR → Guayaquil
CCS / CARACAS / VENEZUELA → Caracas
MVD / URUGUAY → Montevideo
Let me know if you have questions or ideas!
]]>China takes energy security seriously. The enormous effort it has made to build low-carbon capacity—solar, wind, and nuclear—has to be understood as part of a broader motivation to make the country dependent on energy sources within its borders. Beijing is trying to mitigate the pain if it ever loses access to sea-lanes that deliver its oil. That is also why, in 2023, China added twenty times more coal-burning capacity than the rest of the world put together. It is serious about addressing issues in climate change, yes. But Beijing is not turning its back on its rich coal reserves. That also explains why China is so enthusiastic about electrifying the auto fleet: It would rather burn domestic coal than Middle East oil to power its cars. Dan Wang in BreakneckDan Wang - Breakneck ]]>
in reality, prediction markets produce the opposite of accurate, unbiased information. They encourage anyone with an informational edge to use their knowledge for personal financial gain. In this way, prediction markets are the perfect technology for a low-trust society, simultaneously exploiting and reifying an environment in which believing the motives behind any person or action becomes harder. Charlie Warzel in The Central Lie of Prediction MarketsCharlie Warzel - The Central Lie of Prediction Markets ]]>