Biểu trưng OpenStreetMap OpenStreetMap

Enriching OpenStreetMap.org website with Tempermonkey

Do DavidKarlas đăng vào 09 tháng 11 năm 2023 bằng English.

Tampermonkey is web browser extension that allows adding JavaScript to any website in your browser and manipulate content of that website. It sounds scary and probably should, first you need to trust extension itself and then scripts that you install. Since extension itself has huge community and history, millions of installs across Chrome/Edge/Firefox extensions stores, 5 stars… Let’s assume we can trust it…

I wrote some time ago script that I want to share with everyone, it adds few buttons to OpenStreetMap.org website. Here is example how it looks like: Image showing new buttons added to OpenStreetMap.org website

On example of New York above buttons would take you to following websites:

  • PeWu nice and simple history view of changes on nodes, ways or relations
  • DeepHistory another history viewer, but in tabular view
  • Relation Analyzer helpful website for validating/analyzing relations
  • Overpass Opens Overpass at same viewport as currently seen on OSM website

It also adds different set of buttons linking to Achavi, OSMHV, OSMCha and OSM Lab websites when viewing changeset on website: Shows enriched OSM website

To install this extension in your browser go to https://www.tampermonkey.net/ and follow instructions…

Once you have it installed… You will want to install script that I wrote to do that:

Now go to OpenStreetMap.org or some changeset/node/way or relation and new buttons should show up.

You can give suggestions or report bugs either here or at https://gist.github.com/DavidKarlas/81b684dc6853f489b233715d157c145b

Happy mapping,

David

Biểu tượng thư điện tử Biểu tượng Bluesky Biểu tượng Facebook Biểu tượng LinkedIn Biểu tượng Mastodon Biểu tượng Telegram Biểu tượng X

Thảo luận

Bình luận của gileri vào 10 tháng 11 năm 2023 lúc 20:41

Hi, thank you for the script, it’s pretty useful !

Bình luận của JesseFTW vào 11 tháng 11 năm 2023 lúc 23:27

This looks delightful, I plan to install it soon. Thank you for writing it.

Bình luận của barefootstache vào 18 tháng 11 năm 2023 lúc 04:54

I would suggest sharing your code also with https://openuserjs.org/. This will ease the installing process for users and will make it extension independent meaning that users can choose between TamperMonkey and GreaseMonkey.

Bình luận của danilax86 vào 19 tháng 11 năm 2023 lúc 12:50

Thank you!

Bình luận của 快乐的老鼠宝宝 vào 20 tháng 11 năm 2023 lúc 13:31

Have you considered uploading your code to Greasyfork? Because for TamperMonkey users, the js script ecology of this website is more concentrated.

Bình luận của dadavid vào 20 tháng 11 năm 2023 lúc 22:39

started using it yesterday after reading about it on weeklyosm, already sure i cant use osm.org without it anymore! :D

i’d love the addition of an osmcha link on a users profile with the filter pre-applied, like you are doing for changesets already.

But yeah, amazing work, thank you very much

Bình luận của dadavid vào 21 tháng 11 năm 2023 lúc 16:37

thank you again for the script, i edited to add an osmcha-filter-link on a users page.

Just add this after line 85 (a little ugly because of url encoding):

addButton("OSMCha", "https://osmcha.org/?filters=%7B%22date__gte%22%3A%5B%7B%22label%22%3A%22%22%2C%22value%22%3A%22%22%7D%5D%2C%22users%22%3A%5B%7B%22label%22%3A%22" + regexResult[2] + "%22%2C%22value%22%3A%22" + regexResult[2] + "%22%7D%5D%7D");

Bình luận của DavidKarlas vào 24 tháng 11 năm 2023 lúc 09:52

Hi all, thank you for kind words… There was recent change on OSM website that shifted buttons a bit, hence I published new 0.3.1 version to address that. I also added @dadavid suggestion to add OSMCha for users…

I didn’t get around to checking out publishing on https://openuserjs.org/ or https://greasyfork.org/… Will get to that at some point :P

Bình luận của ayxis vào 22 tháng 8 năm 2024 lúc 12:53

Hi!
This script is amazing. I am not exaggerating when I say that I use it everyday. It saves me so much element-ID-copying-pain :)

May I request a Button for the level0-Editor when viewing a way/node/relation?

function updateThings() {  
...
addButton("level0", "https://level0.osmz.ru/?url="+ type + id);
...
}

Bình luận của DavidKarlas vào 16 tháng 2 năm 2025 lúc 12:57

@ayxis, sorry it took this long, but today OSM website changed which broke a bit UI with this script, hence I updated and I also added level0 link.

Best regards, David

Bình luận của JesseFTW vào 16 tháng 2 năm 2025 lúc 16:26

Thanks for the update – looks great!

Bình luận của ayxis vào 21 tháng 2 năm 2025 lúc 10:23

@DavidKarlas Thank you so much!

Đăng nhập để nhận xét