カーソル位置のURLをブラウザで開く
(bounds-of-thing-at-point THING)
という便利な関数があります。
カーソル位置の文字列が、URLなのかメールアドレスなのか、などを判定してくれる。
例えば
(bounds-of-thing-at-point 'url)
は、カーソルがURLの上にあればそのURLの頭とおしりの位置をコンスセルの形で返してくれます。
カーソルがURLの上になかったらnilが返ります。
これを使うと、カーソル位置のURLをブラウザで開く関数が簡単に書けます。
(defun browse-url-at-point () (interactive) (let ((url-region (bounds-of-thing-at-point 'url))) (when url-region (browse-url (buffer-substring-no-properties (car url-region) (cdr url-region)))))) (global-set-key "\C-c\C-o" 'browse-url-at-point)