comparison lisp/net/browse-url.el @ 89943:4c90ffeb71c5

Revision: miles@gnu.org--gnu-2004/emacs--unicode--0--patch-15 Merge from emacs--cvs-trunk--0 Patches applied: * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-218 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-220 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-221 Restore deleted tagline in etc/TUTORIAL.ru * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-222 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-228 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-229 Remove TeX output files from the archive * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-230 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-247 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-248 src/lisp.h (CYCLE_CHECK): Macro moved from xfaces.c * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-249 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-256 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-258 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-263 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-264 Update from CVS: lispref/display.texi: emacs -> Emacs. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-265 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-274 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-275 Update from CVS: man/makefile.w32-in: Revert last change * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-276 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-295 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-296 Allow restarting an existing debugger session that's exited * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-297 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-299 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-300 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-327 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-328 Update from CVS: src/.gdbinit (xsymbol): Fix last change. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-329 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-344 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-345 Tweak source regexps so that building in place won't cause problems * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-346 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-351 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-352 Update from CVS: lisp/flymake.el: New file. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-353 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-361 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-362 Support " [...]" style defaults in minibuffer-electric-default-mode * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-363 (read-number): Use canonical format for default in prompt. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-364 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-367 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-368 Improve display-supports-face-attributes-p on non-ttys * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-369 Rewrite face-differs-from-default-p * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-370 Move `display-supports-face-attributes-p' entirely into C code * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-371 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-372 Simplify face-differs-from-default-p; don't consider :stipple. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-373 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-374 (tty_supports_face_attributes_p): Ensure attributes differ from default * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-375 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-376 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-377 (Fdisplay_supports_face_attributes_p): Work around bootstrapping problem * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-378 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-380 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-381 Face merging cleanups * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-382 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-384 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-385 src/xfaces.c (push_named_merge_point): Return 0 if a cycle is detected * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-386 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-395 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-396 Tweak arch tagging to make build/install-in-place less annoying * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-397 Work around vc-arch problems when building eshell * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-398 Tweak permissions * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-399 Tweak directory permissions * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-400 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-401 More build-in-place tweaking of arch tagging * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-402 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-403 Yet more build-in-place tweaking of arch tagging * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-404 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-409 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-410 Make sure image types are initialized for lookup too * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-411 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-416 Update from CVS
author Miles Bader <miles@gnu.org>
date Mon, 28 Jun 2004 07:56:49 +0000
parents 68c22ea6027c 2fe67fa04b1a
children cb7f41387eb3
comparison
equal deleted inserted replaced
89942:9cb747ae49af 89943:4c90ffeb71c5
575 ;; functions allows them to be stand-alone commands, making it easier 575 ;; functions allows them to be stand-alone commands, making it easier
576 ;; to switch between browsers. 576 ;; to switch between browsers.
577 577
578 (defun browse-url-interactive-arg (prompt) 578 (defun browse-url-interactive-arg (prompt)
579 "Read a URL from the minibuffer, prompting with PROMPT. 579 "Read a URL from the minibuffer, prompting with PROMPT.
580 Default to the URL at or before point. If invoked with a mouse button, 580 If `transient-mark-mode' is non-nil and the mark is active,
581 set point to the position clicked first. Return a list for use in 581 it defaults to the current region, else to the URL at or before
582 `interactive' containing the URL and `browse-url-new-window-flag' or its 582 point. If invoked with a mouse button, it moves point to the
583 negation if a prefix argument was given." 583 position clicked before acting.
584
585 This function returns a list (URL NEW-WINDOW-FLAG)
586 for use in `interactive'."
584 (let ((event (elt (this-command-keys) 0))) 587 (let ((event (elt (this-command-keys) 0)))
585 (and (listp event) (mouse-set-point event))) 588 (and (listp event) (mouse-set-point event)))
586 (list (read-string prompt (browse-url-url-at-point)) 589 (list (read-string prompt (or (and transient-mark-mode mark-active
590 ;; rfc2396 Appendix E.
591 (replace-regexp-in-string
592 "[\t\r\f\n ]+" ""
593 (buffer-substring-no-properties
594 (region-beginning) (region-end))))
595 (browse-url-url-at-point)))
587 (not (eq (null browse-url-new-window-flag) 596 (not (eq (null browse-url-new-window-flag)
588 (null current-prefix-arg))))) 597 (null current-prefix-arg)))))
589 598
590 ;; interactive-p needs to be called at a function's top-level, hence 599 ;; interactive-p needs to be called at a function's top-level, hence
591 ;; the macro. 600 ;; the macro.
845 (defun browse-url-netscape-sentinel (process url) 854 (defun browse-url-netscape-sentinel (process url)
846 "Handle a change to the process communicating with Netscape." 855 "Handle a change to the process communicating with Netscape."
847 (or (eq (process-exit-status process) 0) 856 (or (eq (process-exit-status process) 0)
848 (let* ((process-environment (browse-url-process-environment))) 857 (let* ((process-environment (browse-url-process-environment)))
849 ;; Netscape not running - start it 858 ;; Netscape not running - start it
850 (message "Starting Netscape...") 859 (message "Starting %s..." browse-url-netscape-program)
851 (apply 'start-process (concat "netscape" url) nil 860 (apply 'start-process (concat "netscape" url) nil
852 browse-url-netscape-program 861 browse-url-netscape-program
853 (append browse-url-netscape-startup-arguments (list url)))))) 862 (append browse-url-netscape-startup-arguments (list url))))))
854 863
855 (defun browse-url-netscape-reload () 864 (defun browse-url-netscape-reload ()
916 (defun browse-url-mozilla-sentinel (process url) 925 (defun browse-url-mozilla-sentinel (process url)
917 "Handle a change to the process communicating with Mozilla." 926 "Handle a change to the process communicating with Mozilla."
918 (or (eq (process-exit-status process) 0) 927 (or (eq (process-exit-status process) 0)
919 (let* ((process-environment (browse-url-process-environment))) 928 (let* ((process-environment (browse-url-process-environment)))
920 ;; Mozilla is not running - start it 929 ;; Mozilla is not running - start it
921 (message "Starting Mozilla...") 930 (message "Starting %s..." browse-url-mozilla-program)
922 (apply 'start-process (concat "mozilla " url) nil 931 (apply 'start-process (concat "mozilla " url) nil
923 browse-url-mozilla-program 932 browse-url-mozilla-program
924 (append browse-url-mozilla-startup-arguments (list url)))))) 933 (append browse-url-mozilla-startup-arguments (list url))))))
925 934
926 ;;;###autoload 935 ;;;###autoload
966 (defun browse-url-galeon-sentinel (process url) 975 (defun browse-url-galeon-sentinel (process url)
967 "Handle a change to the process communicating with Galeon." 976 "Handle a change to the process communicating with Galeon."
968 (or (eq (process-exit-status process) 0) 977 (or (eq (process-exit-status process) 0)
969 (let* ((process-environment (browse-url-process-environment))) 978 (let* ((process-environment (browse-url-process-environment)))
970 ;; Galeon is not running - start it 979 ;; Galeon is not running - start it
971 (message "Starting Galeon...") 980 (message "Starting %s..." browse-url-galeon-program)
972 (apply 'start-process (concat "galeon " url) nil 981 (apply 'start-process (concat "galeon " url) nil
973 browse-url-galeon-program 982 browse-url-galeon-program
974 (append browse-url-galeon-startup-arguments (list url)))))) 983 (append browse-url-galeon-startup-arguments (list url))))))
975 984
976 (defun browse-url-epiphany (url &optional new-window) 985 (defun browse-url-epiphany (url &optional new-window)
1015 (defun browse-url-epiphany-sentinel (process url) 1024 (defun browse-url-epiphany-sentinel (process url)
1016 "Handle a change to the process communicating with Epiphany." 1025 "Handle a change to the process communicating with Epiphany."
1017 (or (eq (process-exit-status process) 0) 1026 (or (eq (process-exit-status process) 0)
1018 (let* ((process-environment (browse-url-process-environment))) 1027 (let* ((process-environment (browse-url-process-environment)))
1019 ;; Epiphany is not running - start it 1028 ;; Epiphany is not running - start it
1020 (message "Starting Epiphany...") 1029 (message "Starting %s..." browse-url-epiphany-program)
1021 (apply 'start-process (concat "epiphany " url) nil 1030 (apply 'start-process (concat "epiphany " url) nil
1022 browse-url-epiphany-program 1031 browse-url-epiphany-program
1023 (append browse-url-epiphany-startup-arguments (list url)))))) 1032 (append browse-url-epiphany-startup-arguments (list url))))))
1024 1033
1025 ;; GNOME means of invoking either Mozilla or Netrape. 1034 ;; GNOME means of invoking either Mozilla or Netrape.
1096 ;; Or you could try: 1105 ;; Or you could try:
1097 ;; (call-process "kill" nil 0 nil "-USR1" (int-to-string pid)) 1106 ;; (call-process "kill" nil 0 nil "-USR1" (int-to-string pid))
1098 (message "Signalling Mosaic...done") 1107 (message "Signalling Mosaic...done")
1099 ) 1108 )
1100 ;; Mosaic not running - start it 1109 ;; Mosaic not running - start it
1101 (message "Starting Mosaic...") 1110 (message "Starting %s..." browse-url-mosaic-program)
1102 (apply 'start-process "xmosaic" nil browse-url-mosaic-program 1111 (apply 'start-process "xmosaic" nil browse-url-mosaic-program
1103 (append browse-url-mosaic-arguments (list url))) 1112 (append browse-url-mosaic-arguments (list url)))
1104 (message "Starting Mosaic...done")))) 1113 (message "Starting %s...done" browse-url-mosaic-program))))
1105 1114
1106 ;; --- Grail --- 1115 ;; --- Grail ---
1107 1116
1108 (defvar browse-url-grail 1117 (defvar browse-url-grail
1109 (concat (or (getenv "GRAILDIR") "~/.grail") "/user/rcgrail.py") 1118 (concat (or (getenv "GRAILDIR") "~/.grail") "/user/rcgrail.py")