diff options
Diffstat (limited to 'lisp/net/browse-url.el')
| -rw-r--r-- | lisp/net/browse-url.el | 154 |
1 files changed, 51 insertions, 103 deletions
diff --git a/lisp/net/browse-url.el b/lisp/net/browse-url.el index b44bb71c046..c4ed2332aba 100644 --- a/lisp/net/browse-url.el +++ b/lisp/net/browse-url.el @@ -31,90 +31,33 @@ ;; different methods of remote control so there is one function for ;; each supported browser. If the chosen browser is not running, it ;; is started. Currently there is support for the following browsers, -;; some of them probably now obsolete: +;; as well as some other obsolete ones: ;; Function Browser Earliest version ;; browse-url-mozilla Mozilla Don't know ;; browse-url-firefox Firefox Don't know (tried with 1.0.1) ;; browse-url-chromium Chromium 3.0 -;; browse-url-galeon Galeon Don't know ;; browse-url-epiphany Epiphany Don't know -;; browse-url-netscape Netscape 1.1b1 -;; browse-url-mosaic XMosaic/mMosaic <= 2.4 -;; browse-url-cci XMosaic 2.5 ;; browse-url-conkeror Conkeror Don't know ;; browse-url-w3 w3 0 -;; browse-url-w3-gnudoit w3 remotely ;; browse-url-text-* Any text browser 0 ;; browse-url-generic arbitrary ;; browse-url-default-windows-browser MS-Windows browser ;; browse-url-default-macosx-browser Mac OS X browser ;; browse-url-xdg-open Free Desktop xdg-open on Gnome, KDE, Xfce4, LXDE -;; browse-url-gnome-moz GNOME interface to Mozilla ;; browse-url-kde KDE konqueror (kfm) ;; browse-url-elinks Elinks Don't know (tried with 0.12.GIT) -;; [A version of the Netscape browser is now free software -;; <URL:http://www.mozilla.org/>, albeit not GPLed, so it is -;; reasonable to have that as the default.] - -;; Note that versions of Netscape before 1.1b1 did not have remote -;; control. <URL:http://www.netscape.com/newsref/std/x-remote.html>. - ;; Browsers can cache Web pages so it may be necessary to tell them to ;; reload the current page if it has changed (e.g., if you have edited ;; it). There is currently no perfect automatic solution to this. -;; Netscape allows you to specify the id of the window you want to -;; control but which window DO you want to control and how do you -;; discover its id? - -;; William M. Perry's excellent "w3" WWW browser for -;; Emacs <URL:ftp://cs.indiana.edu/pub/elisp/w3/> -;; has a function w3-follow-url-at-point, but that -;; doesn't let you edit the URL like browse-url. -;; The `gnuserv' package that can be used to control it in another -;; Emacs process is available from -;; <URL:ftp://ftp.splode.com/pub/users/friedman/packages/>. - -;; Lynx is now distributed by the FSF. See also -;; <URL:http://lynx.browser.org/>. - -;; Free graphical browsers that could be used by `browse-url-generic' -;; include Chimera <URL:ftp://ftp.cs.unlv.edu/pub/chimera> and -;; <URL:http://www.unlv.edu/chimera/>, Arena -;; <URL:ftp://ftp.yggdrasil.com/pub/dist/web/arena> and Amaya -;; <URL:ftp://ftp.w3.org/pub/amaya>. mMosaic -;; <URL:ftp://ftp.enst.fr/pub/mbone/mMosaic/>, -;; <URL:http://www.enst.fr/~dauphin/mMosaic/> (with development -;; support for Java applets and multicast) can be used like Mosaic by -;; setting `browse-url-mosaic-program' appropriately. - -;; I [Denis Howe, not Dave Love] recommend Nelson Minar -;; <nelson@santafe.edu>'s excellent html-helper-mode.el for editing -;; HTML and thank Nelson for his many useful comments on this code. -;; <URL:http://www.santafe.edu/%7Enelson/hhm-beta/> - -;; See also hm--html-menus <URL:http://www.tnt.uni-hannover.de/%7Emuenkel/ -;; software/own/hm--html-menus/>. For composing correct HTML see also -;; PSGML the general SGML structure editor package -;; <URL:ftp://ftp.lysator.liu.se/pub/sgml>; hm--html-menus can be used -;; with this. - ;; This package generalizes function html-previewer-process in Marc ;; Andreessen's html-mode (LCD modes/html-mode.el.Z). See also the ;; ffap.el package. The huge hyperbole package also contains similar ;; functions. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; Help! - -;; Can you write and test some code for the Macintrash and Windoze -;; Netscape remote control APIs? (See the URL above). - -;; Do any other browsers have remote control? - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Usage ;; To display the URL at or before point: @@ -170,34 +113,9 @@ ;; To always save modified buffers before displaying the file in a browser: ;; (setq browse-url-save-file t) -;; To get round the Netscape caching problem, you could EITHER have -;; write-file in html-helper-mode make Netscape reload the document: -;; -;; (autoload 'browse-url-netscape-reload "browse-url" -;; "Ask a WWW browser to redisplay the current file." t) -;; (add-hook 'html-helper-mode-hook -;; (lambda () -;; (add-hook 'local-write-file-hooks -;; (lambda () -;; (let ((local-write-file-hooks)) -;; (save-buffer)) -;; (browse-url-netscape-reload) -;; t) ; => file written by hook -;; t))) ; append to l-w-f-hooks -;; -;; OR have browse-url-of-file ask Netscape to load and then reload the -;; file: -;; -;; (add-hook 'browse-url-of-file-hook 'browse-url-netscape-reload) - -;; You may also want to customize browse-url-netscape-arguments, e.g. -;; (setq browse-url-netscape-arguments '("-install")) -;; -;; or similarly for the other browsers. - ;; To invoke different browsers for different URLs: ;; (setq browse-url-browser-function '(("^mailto:" . browse-url-mail) -;; ("." . browse-url-netscape))) +;; ("." . browse-url-firefox))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Code: @@ -226,17 +144,11 @@ function is passed the URL and any other args of `browse-url'. The last regexp should probably be \".\" to specify a default browser." :type '(choice (function-item :tag "Emacs W3" :value browse-url-w3) - (function-item :tag "W3 in another Emacs via `gnudoit'" - :value browse-url-w3-gnudoit) (function-item :tag "eww" :value eww-browse-url) (function-item :tag "Mozilla" :value browse-url-mozilla) (function-item :tag "Firefox" :value browse-url-firefox) (function-item :tag "Chromium" :value browse-url-chromium) - (function-item :tag "Galeon" :value browse-url-galeon) (function-item :tag "Epiphany" :value browse-url-epiphany) - (function-item :tag "Netscape" :value browse-url-netscape) - (function-item :tag "Mosaic" :value browse-url-mosaic) - (function-item :tag "Mosaic using CCI" :value browse-url-cci) (function-item :tag "Conkeror" :value browse-url-conkeror) (function-item :tag "Text browser in an xterm window" :value browse-url-text-xterm) @@ -250,8 +162,6 @@ regexp should probably be \".\" to specify a default browser." :value browse-url-default-windows-browser) (function-item :tag "Default Mac OS X browser" :value browse-url-default-macosx-browser) - (function-item :tag "GNOME invoking Mozilla" - :value browse-url-gnome-moz) (function-item :tag "Default browser" :value browse-url-default-browser) (function :tag "Your own function") @@ -284,18 +194,25 @@ system, given vroot.h from the same directory, with cc flags :type 'string :group 'browse-url) +(make-obsolete-variable 'browse-url-netscape-program nil "25.1") + (defcustom browse-url-netscape-arguments nil "A list of strings to pass to Netscape as arguments." :type '(repeat (string :tag "Argument")) :group 'browse-url) +(make-obsolete-variable 'browse-url-netscape-arguments nil "25.1") + (defcustom browse-url-netscape-startup-arguments browse-url-netscape-arguments "A list of strings to pass to Netscape when it starts up. Defaults to the value of `browse-url-netscape-arguments' at the time `browse-url' is loaded." :type '(repeat (string :tag "Argument")) + :group 'browse-url) +(make-obsolete-variable 'browse-url-netscape-startup-arguments nil "25.1") + (defcustom browse-url-browser-display nil "The X display for running the browser, if not same as Emacs's." :type '(choice string (const :tag "Default" nil)) @@ -363,11 +280,15 @@ Defaults to the value of `browse-url-firefox-arguments' at the time :type 'string :group 'browse-url) +(make-obsolete-variable 'browse-url-galeon-program nil "25.1") + (defcustom browse-url-galeon-arguments nil "A list of strings to pass to Galeon as arguments." :type '(repeat (string :tag "Argument")) :group 'browse-url) +(make-obsolete-variable 'browse-url-galeon-arguments nil "25.1") + (defcustom browse-url-galeon-startup-arguments browse-url-galeon-arguments "A list of strings to pass to Galeon when it starts up. Defaults to the value of `browse-url-galeon-arguments' at the time @@ -375,6 +296,8 @@ Defaults to the value of `browse-url-galeon-arguments' at the time :type '(repeat (string :tag "Argument")) :group 'browse-url) +(make-obsolete-variable 'browse-url-galeon-startup-arguments nil "25.1") + (defcustom browse-url-epiphany-program "epiphany" "The name by which to invoke Epiphany." :type 'string @@ -395,12 +318,16 @@ Defaults to the value of `browse-url-epiphany-arguments' at the time ;; GNOME means of invoking either Mozilla or Netscape. (defvar browse-url-gnome-moz-program "gnome-moz-remote") +(make-obsolete-variable 'browse-url-gnome-moz-program nil "25.1") + (defcustom browse-url-gnome-moz-arguments '() "A list of strings passed to the GNOME mozilla viewer as arguments." :version "21.1" :type '(repeat (string :tag "Argument")) :group 'browse-url) +(make-obsolete-variable 'browse-url-gnome-moz-arguments nil "25.1") + (defcustom browse-url-mozilla-new-window-is-tab nil "Whether to open up new windows in a tab or a new window. If non-nil, then open the URL in a new tab rather than a new window if @@ -432,6 +359,8 @@ If non-nil, then open the URL in a new tab rather than a new window if :type 'boolean :group 'browse-url) +(make-obsolete-variable 'browse-url-galeon-new-window-is-tab nil "25.1") + (defcustom browse-url-epiphany-new-window-is-tab nil "Whether to open up new windows in a tab or a new window. If non-nil, then open the URL in a new tab rather than a new window if @@ -447,11 +376,12 @@ window." :type 'boolean :group 'browse-url) +(make-obsolete-variable 'browse-url-netscape-new-window-is-tab nil "25.1") + (defcustom browse-url-new-window-flag nil "Non-nil means always open a new browser window with appropriate browsers. Passing an interactive argument to \\[browse-url], or specific browser -commands reverses the effect of this variable. Requires Netscape version -1.1N or later or XMosaic version 2.5 or later if using those browsers." +commands reverses the effect of this variable." :type 'boolean :group 'browse-url) @@ -461,16 +391,22 @@ commands reverses the effect of this variable. Requires Netscape version :version "20.3" :group 'browse-url) +(make-obsolete-variable 'browse-url-mosaic-program nil "25.1") + (defcustom browse-url-mosaic-arguments nil "A list of strings to pass to Mosaic as arguments." :type '(repeat (string :tag "Argument")) :group 'browse-url) +(make-obsolete-variable 'browse-url-mosaic-arguments nil "25.1") + (defcustom browse-url-mosaic-pidfile "~/.mosaicpid" "The name of the pidfile created by Mosaic." :type 'string :group 'browse-url) +(make-obsolete-variable 'browse-url-mosaic-pidfile nil "25.1") + (defcustom browse-url-conkeror-program "conkeror" "The name by which to invoke Conkeror." :type 'string @@ -521,12 +457,8 @@ Used by the `browse-url-of-file' command." :group 'browse-url) (defcustom browse-url-of-file-hook nil - "Run after `browse-url-of-file' has asked a browser to load a file. - -Set this to `browse-url-netscape-reload' to force Netscape to load the -file rather than displaying a cached copy." + "Hook run after `browse-url-of-file' has asked a browser to load a file." :type 'hook - :options '(browse-url-netscape-reload) :group 'browse-url) (defcustom browse-url-CCI-port 3003 @@ -536,6 +468,8 @@ the value set in the browser." :type 'integer :group 'browse-url) +(make-obsolete-variable 'browse-url-CCI-port nil "25.1") + (defcustom browse-url-CCI-host "localhost" "Host to access XMosaic via CCI. This should be the host name of the machine running XMosaic with CCI @@ -543,6 +477,8 @@ enabled. The port number should be set in `browse-url-CCI-port'." :type 'string :group 'browse-url) +(make-obsolete-variable 'browse-url-CCI-host nil "25.1") + (defvar browse-url-temp-file-name nil) (make-variable-buffer-local 'browse-url-temp-file-name) @@ -594,6 +530,8 @@ incompatibly at version 4." :type 'number :group 'browse-url) +(make-obsolete-variable 'browse-url-netscape-version nil "25.1") + (defcustom browse-url-text-browser "lynx" "The name of the text browser to invoke." :type 'string @@ -946,14 +884,14 @@ used instead of `browse-url-new-window-flag'." ((memq system-type '(darwin)) 'browse-url-default-macosx-browser) ((browse-url-can-use-xdg-open) 'browse-url-xdg-open) - ((executable-find browse-url-gnome-moz-program) 'browse-url-gnome-moz) +;;; ((executable-find browse-url-gnome-moz-program) 'browse-url-gnome-moz) ((executable-find browse-url-mozilla-program) 'browse-url-mozilla) ((executable-find browse-url-firefox-program) 'browse-url-firefox) ((executable-find browse-url-chromium-program) 'browse-url-chromium) - ((executable-find browse-url-galeon-program) 'browse-url-galeon) +;;; ((executable-find browse-url-galeon-program) 'browse-url-galeon) ((executable-find browse-url-kde-program) 'browse-url-kde) - ((executable-find browse-url-netscape-program) 'browse-url-netscape) - ((executable-find browse-url-mosaic-program) 'browse-url-mosaic) +;;; ((executable-find browse-url-netscape-program) 'browse-url-netscape) +;;; ((executable-find browse-url-mosaic-program) 'browse-url-mosaic) ((executable-find browse-url-conkeror-program) 'browse-url-conkeror) ((executable-find browse-url-xterm-program) 'browse-url-text-xterm) ((locate-library "w3") 'browse-url-w3) @@ -1019,6 +957,7 @@ is loaded in a new tab in an existing window instead. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'." + (declare (obsolete nil "25.1")) (interactive (browse-url-interactive-arg "URL: ")) (setq url (browse-url-encode-url url)) (let* ((process-environment (browse-url-process-environment)) @@ -1046,6 +985,7 @@ used instead of `browse-url-new-window-flag'." (defun browse-url-netscape-sentinel (process url) "Handle a change to the process communicating with Netscape." + (declare (obsolete nil "25.1")) (or (eq (process-exit-status process) 0) (let* ((process-environment (browse-url-process-environment))) ;; Netscape not running - start it @@ -1057,6 +997,7 @@ used instead of `browse-url-new-window-flag'." (defun browse-url-netscape-reload () "Ask Netscape to reload its current document. How depends on `browse-url-netscape-version'." + (declare (obsolete nil "25.1")) (interactive) ;; Backwards incompatibility reported by ;; <peter.kruse@psychologie.uni-regensburg.de>. @@ -1066,6 +1007,7 @@ How depends on `browse-url-netscape-version'." (defun browse-url-netscape-send (command) "Send a remote control command to Netscape." + (declare (obsolete nil "25.1")) (let* ((process-environment (browse-url-process-environment))) (apply 'start-process "netscape" nil browse-url-netscape-program @@ -1184,6 +1126,7 @@ new tab in an existing window instead. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'." + (declare (obsolete nil "25.1")) (interactive (browse-url-interactive-arg "URL: ")) (setq url (browse-url-encode-url url)) (let* ((process-environment (browse-url-process-environment)) @@ -1205,6 +1148,7 @@ used instead of `browse-url-new-window-flag'." (defun browse-url-galeon-sentinel (process url) "Handle a change to the process communicating with Galeon." + (declare (obsolete nil "25.1")) (or (eq (process-exit-status process) 0) (let* ((process-environment (browse-url-process-environment))) ;; Galeon is not running - start it @@ -1287,6 +1231,7 @@ effect of `browse-url-new-window-flag'. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'." + (declare (obsolete nil "25.1")) (interactive (browse-url-interactive-arg "URL: ")) (apply 'start-process (concat "gnome-moz-remote " url) nil @@ -1315,6 +1260,7 @@ the effect of `browse-url-new-window-flag'. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'." + (declare (obsolete nil "25.1")) (interactive (browse-url-interactive-arg "Mosaic URL: ")) (let ((pidfile (expand-file-name browse-url-mosaic-pidfile)) pid) @@ -1365,6 +1311,7 @@ the effect of `browse-url-new-window-flag'. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'." + (declare (obsolete nil "25.1")) (interactive (browse-url-interactive-arg "Mosaic URL: ")) (open-network-stream "browse-url" " *browse-url*" browse-url-CCI-host browse-url-CCI-port) @@ -1443,6 +1390,7 @@ used instead of `browse-url-new-window-flag'." "Ask another Emacs running gnuserv to load the URL using the W3 browser. The `browse-url-gnudoit-program' program is used with options given by `browse-url-gnudoit-args'. Default to the URL around or before point." + (declare (obsolete nil "25.1")) (interactive (browse-url-interactive-arg "W3 URL: ")) (apply 'start-process (concat "gnudoit:" url) nil browse-url-gnudoit-program |
