Greasy Fork is available in English.

OpenStreetMap IP Geolocation

Overrides the "Show My Location" button to provide location from IP geolocation

// ==UserScript==
// @name        OpenStreetMap IP Geolocation
// @namespace   Violentmonkey Scripts
// @match       *://www.openstreetmap.org/*
// @grant       GM.xmlhttpRequest
// @connect     ip-api.com
// @version     1.1
// @author      CyrilSLi
// @description Overrides the "Show My Location" button to provide location from IP geolocation
// @license     MIT
// ==/UserScript==

GM.xmlhttpRequest({
  method: "GET",
  url: "http://ip-api.com/json/",
  onload: function(response) {
    ipJSON = JSON.parse(response.responseText);
    geoButton = document.getElementsByClassName("icon geolocate")[0].parentElement;
    geoButton.parentNode.replaceChild(geoButton.cloneNode(true), geoButton);
    tooltips = document.getElementsByClassName("tooltip-inner");
    while(tooltips[0]) {
      container = tooltips[0].parentNode;
      container.parentNode.removeChild(container);
    }
    geoButton = document.getElementsByClassName("icon geolocate")[0].parentElement;
    geoButton.addEventListener("click", ev => {
      console.log(ipJSON);
      location.href = `#map=12/${ipJSON["lat"]}/${ipJSON["lon"]}`;
      location.reload(true);
    })
  }
})