branch: externals/osm commit 63426c9c032ef5bce406646de683205f2b851685 Author: Daniel Mendler <m...@daniel-mendler.de> Commit: Daniel Mendler <m...@daniel-mendler.de>
osm-ol: Use geo url scheme by default (Fix #31) --- README.org | 12 ++++++------ osm-ol.el | 16 ++++++++++++---- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/README.org b/README.org index d4a7987b09..3ce2eabf1c 100644 --- a/README.org +++ b/README.org @@ -80,12 +80,12 @@ buffers in Emacs. Furthermore you can open Org links in arbitrary buffers with ~org-open-at-point-global~. I recommend binding this command to a key, e.g., ~C-c o~. #+begin_example - [[osm:41.869560826994544,12.45849609375;z=6;s=opentopomap][Italia, 41.87° 12.46° OpenTopoMap]] - [[osm:51.48950698022105,-0.144195556640625;z=11][London, England, 51.49° -0.14°]] - [[osm:55.686875255964424,12.569732666015625;z=12;s=cyclosm][København, Danmark, 55.69° 12.57° CyclOSM]] - [[osm:40.72956780913898,-73.97918701171875;z=12;s=stamen-watercolor][New York, United States, 40.73° -73.98° Stamen Watercolor]] - [[osm:27.961656050984658,86.89224243164062;z=13;s=opentopomap][Mount Everest, 27.96° 86.89° OpenTopoMap]] - <osm:Tour Eiffel, Av. Gustave Eiffel, Paris> (Address link) + [[geo:41.869560826994544,12.45849609375;z=6;s=opentopomap][Italia, 41.87° 12.46° OpenTopoMap]] + [[geo:51.48950698022105,-0.144195556640625;z=11][London, England, 51.49° -0.14°]] + [[geo:55.686875255964424,12.569732666015625;z=12;s=cyclosm][København, Danmark, 55.69° 12.57° CyclOSM]] + [[geo:40.72956780913898,-73.97918701171875;z=12;s=stamen-watercolor][New York, United States, 40.73° -73.98° Stamen Watercolor]] + [[geo:27.961656050984658,86.89224243164062;z=13;s=opentopomap][Mount Everest, 27.96° 86.89° OpenTopoMap]] + <geo:Tour Eiffel, Av. Gustave Eiffel, Paris> (Address link) #+end_example **** Elisp link examples diff --git a/osm-ol.el b/osm-ol.el index 1c531c9d09..67ed30f353 100644 --- a/osm-ol.el +++ b/osm-ol.el @@ -25,13 +25,20 @@ (require 'ol) +(defcustom osm-ol-type "geo" + "URL scheme used for OSM links. +The scheme defaults to `geo:' (RFC 5870), but if desired you can +also configure the old scheme `osm:'." + :type 'string + :group 'osm) + ;; Only load osm on demand (autoload 'osm--goto "osm") (autoload 'osm-search "osm") (declare-function osm--org-link-data "osm") (org-link-set-parameters - "osm" + osm-ol-type :follow #'osm-ol-open :store #'osm-ol-store) @@ -57,10 +64,11 @@ (when (derived-mode-p 'osm-mode) (pcase-let ((`(,lat ,lon ,zoom ,server ,desc) (osm--org-link-data))) (org-link-store-props - :type "osm" + :type osm-ol-type :description desc - :link (format "osm:%.6f,%.6f;z=%s%s" - lat lon zoom (if server (format ";s=%s" server) "")))))) + :link (format "%s:%.6f,%.6f;z=%s%s" + osm-ol-type lat lon zoom + (if server (format ";s=%s" server) "")))))) (provide 'osm-ol) ;;; osm-ol.el ends here