A feature I've missed in Edwin is the ability to easily browse a URL
at point, especially when reading email. With the following Edwin
command bound to a key, things are much nicer:
(define-command browse-url-at-point
"Open the thing at point in an external web browser.
The thing at point must be a valid HTTP URI."
()
(lambda ()
(let* ((url-candidate (thing-at-point)))
(if (not (http-request-uri? (->uri url-candidate)))
(error "Thing at point is not a valid HTTP request URI: "
url-candidate)
(let* ((browser (if (string=?
microcode-id/operating-system-variant
"OS X")
"open -a Firefox"
"firefox"))
(browser-command (string-append browser " " url-candidate)))
(run-shell-command browser-command))))))
The browser check is not robust, but I only use Firefox on OS X and
Linux. Edit to suit. This should probably be a variable set by the
user from Edwin.
Hope someone finds it useful.
(Note: This command uses THING-AT-POINT, which is defined in an
earlier message to this list with the subject "Edwin command to
quickly view source of a Scheme procedure".)
_______________________________________________
MIT-Scheme-users mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/mit-scheme-users