YSK about the Geo URI scheme, a standard way to link to a location so that users can open it in any map application or website

22 days ago by Otter to c/youshouldknow

For each example in this post, I will be linking to the sea otter pools at the Vancouver aquarium. That location has the coordinates of 49.30063,-123.13149

To link to it, you would use 'geo:49.30063,-123.13149'.

Depending on your web browser, pasting that into the search bar might prompt you to select which map website you want to use to view that location. For me in Firefox, it asked me to pick between Google Maps and OpenStreetMaps. It's even more convenient on mobile, where it asks me which map app I want to open it with. Both CoMaps and Google Maps handled it correctly.

If you are writing a post or comment on Lemmy/Piefed/etc., you can place it in the second part of the markdown link format: [Sea Otter Pools](geo:49.30063,-123.13149). This would output like this: Sea Otter Pools

The linked OpenStreetMap wiki page has a good summary of how well various apps support this scheme. A lot of people here are active in the open source space, so please consider following up with the apps that are currently missing support or have partial support for this: https://wiki.openstreetmap.org/wiki/Geo_URI_scheme


EDIT: I forgot to mention, you can also use apps like this one to convert maps links between each other

https://github.com/jakubvalenta/GeoShare

https://f-droid.org/packages/page.ooooo.geoshare/

https://apt.izzysoft.de/...

abbadon420 67 points 22 days ago

This is neat

path: 0 25921958, hotness: undefined, score: 67, children: 0
squirrel 56 points 22 days ago

Sadly it doesn't work sharing a geo link in Signal, and they don't want to implement it. GitHub Issue

path: 0 25922029, hotness: undefined, score: 56, children: 3
unexposedhazard 40 points 22 days ago

Same with element. They used to support it but dropped it. Really stupid excuse in that github issue. If adding support for sonething so simple adds lots of complexity then your codebase is garbage. This is why we cant have nice things.

path: 0 25922029 25922105, hotness: undefined, score: 40, children: 1
Ghoelian 6 points 21 days ago

Lol the pr is only 2 files, one of which is a test class. I do wonder why they wrote their own parser, does javas url handler not support the geo scheme either or something?

path: 0 25922029 25922105 25935168, hotness: undefined, score: 6, children: 0
zekas 2 points 19 days ago

Gotta marvel at the logic at work. No one supports it, neither should we. Great way to ensure nothing ever happens.

path: 0 25922029 25970224, hotness: undefined, score: 2, children: 0
lawks 39 points 22 days ago

It has abysmal support. All the places you'd need it to work without anything special, like link recognition in messaging apps and email clients, it rarely does. Even apps that could make good use of specific locations for inputs often don't register a handler for the scheme. It's been that way for years, and I don't expect it to get a whole lot better.

path: 0 25923629, hotness: undefined, score: 39, children: 4
sik0fewl 26 points 22 days ago

The link does not even render in Voyager, unfortunately.

path: 0 25923629 25924615, hotness: undefined, score: 26, children: 1
greatwhitebuffalo41 6 points 22 days ago

Yeah I noticed that was well

path: 0 25923629 25924615 25924713, hotness: undefined, score: 6, children: 0
grue 18 points 22 days ago

That's exactly why YSK (especially if you're a developer)!

path: 0 25923629 25926945, hotness: undefined, score: 18, children: 0
SlurpingPus 3 points 21 days ago

Pro tip: on Android, the Automate app can receive text shared to it and do custom things — such as getting coordinates, slapping 'geo:' on them, and opening in a map app. This can alleviate some of the pains by the user selecting and sharing the coords by hand. The app is paid and requires some programming chops, but is hella useful for custom automation.

path: 0 25923629 25945161, hotness: undefined, score: 3, children: 0
Viking_Hippie 30 points 22 days ago

I will be linking to the sea otter pools at the Vancouver aquarium

checks username

Party at your place?

path: 0 25926062, hotness: undefined, score: 30, children: 2
otter 32 points 22 days ago

You don't need to bring clams, but it's polite to do so

path: 0 25926062 25926335, hotness: undefined, score: 32, children: 1
LastYearsIrritant 11 points 22 days ago

BYOOR

Bring Your Oyster Opening Rock

path: 0 25926062 25926335 25927123, hotness: undefined, score: 11, children: 0
DougPiranha42 18 points 22 days ago

This sounds nice. On iphone, nothing happens when I click your link. When I paste it in safari, it searches for it, and the ddg results are coordinates finder websites, not related to the specific location.

path: 0 25922122, hotness: undefined, score: 18, children: 1
CombatWombat 6 points 22 days ago

This is only true if you don't have an app installed to handle the link schema. When I click the link, it opens Organic Maps

path: 0 25922122 25924729, hotness: undefined, score: 6, children: 0
logi 16 points 22 days ago

Tapping that little NK on my android phone That seems to work.

path: 0 25922018, hotness: undefined, score: 16, children: 0
naught101 13 points 22 days ago

Link doesn't work in voyager. Does in Firefox though!

path: 0 25924159, hotness: undefined, score: 13, children: 3
bampop 1 point 21 days ago

For me in Firefox it just takes me to my search engine, which proposes a bunch of sites to convert gps coordinates, top item is a front end for google maps. No OpenStreetMaps to be seen. Doesn't look like it's a universally supported thing. Also none of the position links in this thread are clickable

path: 0 25924159 25935377, hotness: undefined, score: 1, children: 2
naught101 1 point 21 days ago

I'm on a phone, haven't tried it on a PC yet

path: 0 25924159 25935377 25937909, hotness: undefined, score: 1, children: 1
bampop 1 point 21 days ago

That's probably what makes the difference

path: 0 25924159 25935377 25937909 25938512, hotness: undefined, score: 1, children: 0
Outdated4134 12 points 22 days ago

For me, there is no link. I copied it and pasted it (geo:49.30063, -123.13149) several different things and none of them worked correctly.

path: 0 25923727, hotness: undefined, score: 12, children: 7
otter 1 point 22 days ago

Which app/frontend are you using? It looks like some of the Lemmy/Piefed clients don't support it properly.

path: 0 25923727 25923898, hotness: undefined, score: 1, children: 5
Outdated4134 4 points 21 days ago

Voyager

path: 0 25923727 25923898 25939260, hotness: undefined, score: 4, children: 1
hanrahan 4 points 21 days ago

FYI Works with Summit

path: 0 25923727 25923898 25939260 25940187, hotness: undefined, score: 4, children: 0
titanicx -1 points 22 days ago

I don't see how which app on Lemmy would matter as far as geo-coordinates because all you're linking there is literally a latitude and longitude of coordinates. And if they paste it into a web browser, it wouldn't matter what lemmy client they use.

path: 0 25923727 25923898 25924350, hotness: undefined, score: -1, children: 2
SkaveRat 6 points 22 days ago

Frontend apps need to recognize the markdown as a valid url scheme and parse it accordingly

Voyager does not, for example

path: 0 25923727 25923898 25924350 25927161, hotness: undefined, score: 6, children: 0
otter 3 points 22 days ago

Some apps display/handle links in weird ways. It's the same reason why the OSM link above lists information about support on different messaging apps. I assume some of it comes down to sanitizing inputs, or whether a specific library an app is using has support for it, or if an app offloads the task to the system share sheet

For example, the links work for me in Boost for Lemmy and Summit, but not in Voyager. Another user mentioned submitting an issue to the developer of their particular app

path: 0 25923727 25923898 25924350 25925408, hotness: undefined, score: 3, children: 0
ech -3 points 22 days ago

You have a space after the comma which is ruining the formatting. Try it without.

path: 0 25923727 25924860, hotness: undefined, score: -3, children: 0
deltapi 11 points 22 days ago

Very cool, this was the result for me, so at least on android it seems to work as advertised. A picture of an app choice dialog after checking on a 'geo' link showing several map/location apps to choose from

path: 0 25927307, hotness: undefined, score: 11, children: 0
chunes 7 points 22 days ago

Depending on your web browser, pasting that into the search bar might prompt you to select which map website you want to use to view that location. For me in Firefox, it asked me to pick between Google Maps and OpenStreetMaps.

I'm on Firefox and all it did was initiate a web search that found one result: this thread. If it's a hyperlink, all it does is open a blank page.

path: 0 25925048, hotness: undefined, score: 7, children: 0
otter 7 points 22 days ago

An unnecessary complicated example where I use an image in the first part of the markdown notation:

[![A computer icon of a map location pinpoint with geographic context.](https://thumb.wikimedia.org/wikipedia/commons/thumb/e/e2/Pin_location_context.svg/330px-Pin_location_context.svg.png)](geo:49.30063,-123.13149)

Which renders as:

A computer icon of a map location pinpoint with geographic context.


Also, no, I do not live at this location. Not currently.

path: 0 25921749, hotness: undefined, score: 7, children: 1
Zachariah 17 points 22 days ago

Also, no, I do not live at this location. Not currently.

You otter consider it though. Free food. Swim any time you want. That’s the life.

Also: Unfortunately, in Voyager, the geo link is rendered just as the link description and isn’t clickable. And on iOS, I tried Firefox Focus and Safari and both just took me to a web search for longitude and latitude. I really wish it worked because it’s a great feature.

path: 0 25921749 25921970, hotness: undefined, score: 17, children: 0
friend_of_satan 7 points 22 days ago

I wonder if it would make sense to have a URL scheme for that instead, like geo://49.30063,-123.13149

path: 0 25932498, hotness: undefined, score: 7, children: 4
filcuk 6 points 21 days ago

What about tel:, or mailto:, sms:, callto:

path: 0 25932498 25938076, hotness: undefined, score: 6, children: 1
friend_of_satan 2 points 21 days ago

I'm trying to say "great job pointing that out" without soundling like an LLM. But seriously, I'm happy you pointed that out. I completely forgot about those syntaxes. After you mentioned them, I went and browsed RFC3986 and found these sample URIs, which include news, mailto, ftp, and more, which covers both // style and non-// style. https://www.rfc-editor.org/...

It's too late for me to claim that I fully grok the nuances, so that'll have to wait for anther day, but I appreciate your comment. TIL some cool stuff.

path: 0 25932498 25938076 25948862, hotness: undefined, score: 2, children: 0
AA5B 2 points 21 days ago

It’s hard not to immediately want to extend this to astronomy

path: 0 25932498 25939747, hotness: undefined, score: 2, children: 1
friend_of_satan 2 points 21 days ago

maybe geo:earth.surface/lat,lon?date=date or geo:mars.sky?lat=lat,lon=lon,date=date or something? I'm sure there could be a stanard syntax for but I'm pretty ignorant about how that could work well.

path: 0 25932498 25939747 25948905, hotness: undefined, score: 2, children: 0
smeenz 6 points 21 days ago

Doesn't work on the moon.

path: 0 25938347, hotness: undefined, score: 6, children: 9
MimicJar 8 points 21 days ago path: 0 25938347 25942495, hotness: undefined, score: 8, children: 1
smeenz 3 points 21 days ago

Nice !

path: 0 25938347 25942495 25944690, hotness: undefined, score: 3, children: 0
Goodlucksil 3 points 21 days ago

Geo means earth. Of course it won't work outside of the Earth

path: 0 25938347 25938777, hotness: undefined, score: 3, children: 6
smeenz 2 points 21 days ago

Ah, my mistake, there is no geography, geology, or geometry on the moon.

path: 0 25938347 25938777 25944681, hotness: undefined, score: 2, children: 4
gwl 2 points 16 days ago

Well yeah, it's lunography, lunology and lunometry

path: 0 25938347 25938777 25944681 26023185, hotness: undefined, score: 2, children: 2
smeenz 1 point 16 days ago

That's just lunacy

path: 0 25938347 25938777 25944681 26023185 26023899, hotness: undefined, score: 1, children: 1
Goodlucksil 1 point 21 days ago

People who named them like so didn't think that there would be geometry, geology or geography on the moon. Or they just interpreted it as land.

path: 0 25938347 25938777 25944681 25945138, hotness: undefined, score: 1, children: 0
potter2010 0 points 21 days ago

Well, most places people go to are outside the earth. (Just barely outside.)

path: 0 25938347 25938777 25940101, hotness: undefined, score: 0, children: 0
kn33 6 points 22 days ago

I zoomed in on bumfuck, Kansas to try this out. Let's see.

path: 0 25924675, hotness: undefined, score: 6, children: 5
ech 2 points 22 days ago

Remove the space

Like this.

*Downvotes for helping someone is a new one. Strange.

path: 0 25924675 25924840, hotness: undefined, score: 2, children: 1
kn33 3 points 22 days ago

Ah, neat. Works now.

path: 0 25924675 25924840 25925442, hotness: undefined, score: 3, children: 0
pelespirit 2 points 22 days ago

You need the ! to start it off.

![Let’s see](geo:37.1213785, -98.9773100)

Edit: Not working

Edit 2, trying again:

![Let’s see](geo:37.1213785 -98.9773100)

Edit 3: no worky

Edit 4: Now it works as a link, thanks to the other posters, but it doesn't really do anything. Maybe Ublock Origin?

Let’s see

path: 0 25924675 25924733, hotness: undefined, score: 2, children: 2
some_kind_of_guy 5 points 22 days ago

It's the whitespace

path: 0 25924675 25924733 25924965, hotness: undefined, score: 5, children: 0
otter 4 points 22 days ago

The exclamation mark is for images, yours isn't working because of the space in the coordinates

path: 0 25924675 25924733 25925429, hotness: undefined, score: 4, children: 0
RollingZeppelin 6 points 22 days ago

On my Maps for Android, it only zooms to the Aquarium, there's no pointer for the Sea Otter Pools.

path: 0 25922097, hotness: undefined, score: 6, children: 1
otter 3 points 22 days ago

It seems that google maps is a bit hit or miss, maybe locations that have more details work better?

Google maps does not have anywhere near the level of detail openstreetmaps does for that location

path: 0 25922097 25922265, hotness: undefined, score: 3, children: 0
aim4harmony 6 points 22 days ago

I got the correct area on Fennec -> CoMaps (app) on /e/OS. ☺️ The website alone resulted in a blank page.

path: 0 25922860, hotness: undefined, score: 6, children: 0
anotherandrew 5 points 22 days ago

Heh, on my iPhone it wants to open an NFC reading app for the sea otter geo: link

path: 0 25924710, hotness: undefined, score: 5, children: 1
otter 1 point 22 days ago

How odd 😄

path: 0 25924710 25925430, hotness: undefined, score: 1, children: 0
GTG3000 5 points 21 days ago

Doesn't do anything as far as I can tell? Or is this android specific?

Also the links don't work in discord.

path: 0 25942342, hotness: undefined, score: 5, children: 2
gwl 5 points 21 days ago

It's what's known as a "Protocol URI", which the OS and/or browser have to choose what to do with that

Sounds like you have an OS or Browser that haven't implemented the protocol

path: 0 25942342 25942615, hotness: undefined, score: 5, children: 1
WhyJiffie 5 points 21 days ago

not only that. some clients including voyager don't recognize geo uris as openable links

path: 0 25942342 25942615 25943300, hotness: undefined, score: 5, children: 0
Wizard_Pope 4 points 21 days ago

The link just does nothing for me on jerboa

path: 0 25935608, hotness: undefined, score: 4, children: 3
arschfidel 8 points 21 days ago

For me it does work when I hold press the link and then choose "Open in external" in the popup that opens. But yes, simply tapping does nothing.

path: 0 25935608 25935987, hotness: undefined, score: 8, children: 1
Quexotic 1 point 21 days ago

For me it fails when I do that.

path: 0 25935608 25935987 25939915, hotness: undefined, score: 1, children: 0
hanrahan 1 point 21 days ago

FYI does using Summit

path: 0 25935608 25940235, hotness: undefined, score: 1, children: 0
ArchEngel 4 points 22 days ago

Does not seem to open via Thunder. Can confirm that copying and pasting it into CoMaps or Waterfox works great though.

I have submitted a feature request to Thunder.

path: 0 25923686, hotness: undefined, score: 4, children: 0
scytale 4 points 22 days ago

Can the commercial map apps spit out that format when sharing a location? I met up with a random person last week to buy a used item off of marketplace and they sent me an Apple maps pin of the exact apartment building they were in. I didn’t have apple maps installed.

path: 0 25923812, hotness: undefined, score: 4, children: 1
otter 5 points 22 days ago path: 0 25923812 25923876, hotness: undefined, score: 5, children: 0
roomy 4 points 21 days ago

I opened this in CoMaps and now i have a permanent map pointer to it hah

path: 0 25936092, hotness: undefined, score: 4, children: 2
Hupf 2 points 21 days ago

Permanent sea otters? I'd count that as a win.

path: 0 25936092 25939165, hotness: undefined, score: 2, children: 0
otter 1 point 21 days ago

Oops 😄

I think if you clear the cache it might go away. Mine doesn't show it anymore

path: 0 25936092 25936492, hotness: undefined, score: 1, children: 0
TheRiskiestBiscuit 3 points 21 days ago

Could be just my configuration, but does not work in Brave, does not work in Safari, DOES work in Orion.

path: 0 25943248, hotness: undefined, score: 3, children: 0
cloudsurfer 3 points 21 days ago

Does anyone know, why GitHub of all places does not support geo links in their readme or issue markdown files?

path: 0 25940072, hotness: undefined, score: 3, children: 2
filcuk 2 points 21 days ago

Mailto is explicitly allowed in the sanitizer they use, other such uri schemes aren't.
This is relatively standard, likely due to the mixed support.
Geo is not well supported, and ones like sms are platform-dependent.
It's just a pain noone wants to deal with.

path: 0 25940072 25941883, hotness: undefined, score: 2, children: 0
gwl 1 point 21 days ago

Edit: oops replied to the wrong person

path: 0 25940072 25942516, hotness: undefined, score: 1, children: 0
Nurgus 3 points 21 days ago

Is this better than What Three Words which also has a URL scheme? And is more memorable.

path: 0 25935477, hotness: undefined, score: 3, children: 3
teolan 7 points 21 days ago

The geo URL scheme works even for non English speakers and it won't give you a location on the other side of the world if you lake a typo or pronounce it bad.

path: 0 25935477 25935520, hotness: undefined, score: 7, children: 1
Blackmist 2 points 21 days ago

I mean, that's kind of on purpose with W3W.

A slight error should make the recipient go "Wait, what? That's in Venezuela!" rather than sending an ambulance crew to a location like 20 miles away from you.

path: 0 25935477 25935520 25940279, hotness: undefined, score: 2, children: 0
otter 5 points 21 days ago

Since WhatThreeWords is proprietary, it likely won't be as easy to get it implemented in everything. I think the difficulty with coordinates can be solved by having an easy way to copy the Geo URI from various map apps

path: 0 25935477 25935536, hotness: undefined, score: 5, children: 0
phar 3 points 22 days ago

When I pasted mine into duck duck go it didn't work. I deleted Geo and typed location, and now it works

Edit: spelling

path: 0 25923401, hotness: undefined, score: 3, children: 1
GreyEyedGhost 1 point 22 days ago

It doesn't work in Voyager, so I pasted it into ddg and I got a list of relevant apps to open it with.

path: 0 25923401 25923869, hotness: undefined, score: 1, children: 0
anon_8675309 3 points 22 days ago

Can’t get to work on iPhone. Apple fuckery?

path: 0 25927785, hotness: undefined, score: 3, children: 0
ddplf 3 points 22 days ago

Does Goo*le maps support it? Because they usually don't give a flying fuck about anything that would make it possible to share data with open-source solutions.

path: 0 25922704, hotness: undefined, score: 3, children: 2
9point6 5 points 22 days ago

Of course it does, they're not gonna miss an opportunity to get you into their app from somewhere else

path: 0 25922704 25923189, hotness: undefined, score: 5, children: 1
ddplf 1 point 22 days ago

Well they don't consume GPX files, which is pretty abhorrent in itself

path: 0 25922704 25923189 25923717, hotness: undefined, score: 1, children: 0
seadoo 2 points 22 days ago

What about coordinate projections? No crs in that format.

path: 0 25924041, hotness: undefined, score: 2, children: 0
fdnomad 2 points 21 days ago

Neat, works well for me on Boost / Android

path: 0 25937998, hotness: undefined, score: 2, children: 0
OldChicoAle 2 points 22 days ago

Cool stuff, but don't use this for your business. You want actual links that will always work regardless of browser support for Geo. You want your customers to easily retrieve information so you gain their business.

path: 0 25925049, hotness: undefined, score: 2, children: 1
otter 1 point 22 days ago

Definitely, IMO a business should link to multiple options to catch the most customers

I believe both google and apple maps support generic links with coordinates, although I don't know the exact structure

path: 0 25925049 25925453, hotness: undefined, score: 1, children: 0
gwl 2 points 21 days ago path: 0 25942563, hotness: undefined, score: 2, children: 2
AdrianTheFrog 2 points 21 days ago

test link

I guess yours isn't working because there's a space in it

path: 0 25942563 25942760, hotness: undefined, score: 2, children: 1
gwl 2 points 21 days ago

Ooh okay, I expected it to ignore the space, nice!

Yep, works with the default lemmy frontend and Waterfox then

path: 0 25942563 25942760 25942833, hotness: undefined, score: 2, children: 0
youshouldknow
youshouldknow

@lemmy.world

login for more options
47865
779
4106

YSK - for all the things that can make your life easier!

The rules for posting and commenting, besides the rules defined here for lemmy.world, are as follows:

Rules (interactive)


Rule 1- All posts must begin with YSK.

All posts must begin with YSK. If you're a Mastodon user, then include YSK after @youshouldknow. This is a community to share tips and tricks that will help you improve your life.



Rule 2- Your post body text must include the reason **WHY** YSK:

In your post's text body, you must include the reason "Why" YSK: It’s helpful for readability, and informs readers about the importance of the content.



Rule 3- Do not seek mental, medical and professional help here.

Do not seek mental, medical and professional help here. Breaking this rule will not get you or your post removed, but it will put you at risk, and possibly in danger.



Rule 4- No self promotion or upvote-farming of any kind.

That's it.



Rule 5- No baiting or sealioning or promoting an agenda.

Posts and comments which, instead of being of an innocuous nature, are specifically intended (based on reports and in the opinion of our crack moderation team) to bait users into ideological wars on charged political topics will be removed and the authors warned - or banned - depending on severity.



Rule 6- Regarding non-YSK posts.

Provided it is about the community itself, you may post non-YSK posts using the [META] tag on your post title.



Rule 7- You can't harass or disturb other members.

If you harass or discriminate against any individual member, you will be removed.

If you are a member, sympathizer or a resemblant of a movement that is known to largely hate, mock, discriminate against, and/or want to take lives of a group of people and you were provably vocal about your hate, then you will be banned on sight.

For further explanation, clarification and feedback about this rule, you may follow this link.



Rule 8- All comments should try to stay relevant to their parent content.

Rule 9- Reposts from other platforms are not allowed.

Let everyone have their own content.



Rule 10- The majority of bots aren't allowed to participate here.

Unless included in our Whitelist for Bots, your bot will not be allowed to participate in this community. To have your bot whitelisted, please contact the moderators for a short review.



Rule 11- Posts must actually be true:

Disinformation, trolling, and being misleading will not be tolerated. Repeated or egregious attempts will earn you a ban. This also applies to filing reports: If you continually file false reports YOU WILL BE BANNED! We can see who reports what, and shenanigans will not be tolerated. We are not here to ban people who said something you don't like.



Rule 12- Linking directly to a video as a source is not acceptable.

Video only posts are responsible for an outsized portion of rules violations. Your post must contain text and meet the requirements of the previous rules.



Rule 13- If you file a report, include what specific rule is being violated and how.

Partnered Communities:

You can view our partnered communities list by following this link. To partner with our community and be included, you are free to message the moderators or comment on a pinned post.

Community Moderation

For inquiry on becoming a moderator of this community, you may comment on the pinned post of the time, or simply shoot a message to the current moderators.

Credits

Our icon(masterpiece) was made by @clen15!

go to feed...