>From 8e1cb8158dee5d7b65a2e04748fb0e47a7023cb2 Mon Sep 17 00:00:00 2001 From: Ivan Kanis Date: Sun, 23 Jun 2013 18:44:40 +0200 Subject: [PATCH 2/3] 'w' key launches external browser for current page url --- emacs/gnus/eww.el | 20 ++++++++++++++++++++ 1 files changed, 20 insertions(+), 0 deletions(-) diff --git a/emacs/gnus/eww.el b/emacs/gnus/eww.el index 4fc9fe0..1b028b1 100644 --- a/emacs/gnus/eww.el +++ b/emacs/gnus/eww.el @@ -48,6 +48,12 @@ :group 'eww :type 'string) +(defcustom eww-external-browser 'browse-url-firefox + "Function called to launch external browser. +It will be used when emacs runs on neither Windows or Mac." + :group 'eww + :type 'function) + (defface eww-form-submit '((((type x w32 ns) (class color)) ; Like default mode line :box (:line-width 2 :style released-button) @@ -313,6 +319,7 @@ (define-key map "p" 'eww-previous-url) (define-key map "u" 'eww-up-url) (define-key map "t" 'eww-top-url) + (define-key map "w" 'eww-browse-with-external-browser) map)) (define-derived-mode eww-mode nil "eww" @@ -819,6 +826,19 @@ appears in a or tag." "?" (mm-url-encode-www-form-urlencoded values)))))) +(defun eww-browse-with-external-browser () + "Browse URL with external browser. +It support Windows and Mac then calls the function specified in + `eww-external-browser'." + (interactive) + (let ((url eww-current-url)) + (cond ((eq system-type 'windows-nt) + (browse-url-default-windows-browser url)) + ((eq system-type 'darwin) + (browse-url-default-macosx-browser url)) + (t + (funcall eww-external-browser url))))) + (provide 'eww) ;;; eww.el ends here -- 1.7.1