From unknown Tue Aug 19 23:11:24 2025 X-Loop: help-debbugs@gnu.org Subject: bug#30981: Document how to use $BROWSER for external browser Resent-From: =?UTF-8?Q?=E7=A9=8D=E4=B8=B9=E5=B0=BC?= Dan Jacobson Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 29 Mar 2018 02:23:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 30981 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 30981@debbugs.gnu.org Cc: Katsumi Yamaoka X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.15222901683255 (code B ref -1); Thu, 29 Mar 2018 02:23:01 +0000 Received: (at submit) by debbugs.gnu.org; 29 Mar 2018 02:22:48 +0000 Received: from localhost ([127.0.0.1]:57791 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f1NDE-0000qP-F3 for submit@debbugs.gnu.org; Wed, 28 Mar 2018 22:22:48 -0400 Received: from eggs.gnu.org ([208.118.235.92]:53232) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f1NDC-0000q1-VG for submit@debbugs.gnu.org; Wed, 28 Mar 2018 22:22:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f1ND6-000306-Mr for submit@debbugs.gnu.org; Wed, 28 Mar 2018 22:22:41 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: * X-Spam-Status: No, score=1.8 required=5.0 tests=BAYES_50,FROM_EXCESS_BASE64, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:33616) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1f1ND6-0002zy-JA for submit@debbugs.gnu.org; Wed, 28 Mar 2018 22:22:40 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44194) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f1ND5-00033m-9E for bug-gnu-emacs@gnu.org; Wed, 28 Mar 2018 22:22:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f1ND2-0002yJ-49 for bug-gnu-emacs@gnu.org; Wed, 28 Mar 2018 22:22:39 -0400 Received: from homie.mail.dreamhost.com ([208.97.132.208]:32797 helo=homiemail-a99.g.dreamhost.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1f1ND1-0002xT-RR for bug-gnu-emacs@gnu.org; Wed, 28 Mar 2018 22:22:36 -0400 Received: from homiemail-a99.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a99.g.dreamhost.com (Postfix) with ESMTP id A0861D3E068; Wed, 28 Mar 2018 19:22:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=jidanni.org; h=from:to:cc :subject:references:date:message-id:mime-version:content-type: content-transfer-encoding; s=jidanni.org; bh=f7hP3XeKmqvKFgIHb+H JFb1BrGE=; b=nQeDzcw4RuRO4s6YzA7LZ99OkbckO27FZkEXOU9Lvg2NqSTKK7N 9C8WPsyjb2NgEJvCD3iKydT3QsLuQGiOXFYZ7s5p7vrTP0I2r9FhbXzSV8niCvSd Le5fjSXtcSX+t7fP9rRMjBLKm9CNilkmaKJvYjveMEsJn+GIHFg+eHwA= Received: from jidanni.org (114-41-29-124.dynamic-ip.hinet.net [114.41.29.124]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: jidanni@jidanni.org) by homiemail-a99.g.dreamhost.com (Postfix) with ESMTPSA id E9013D3E067; Wed, 28 Mar 2018 19:22:31 -0700 (PDT) From: =?UTF-8?Q?=E7=A9=8D=E4=B8=B9=E5=B0=BC?= Dan Jacobson References: <87vadi483t.fsf@jidanni.org> Date: Thu, 29 Mar 2018 10:22:29 +0800 Message-ID: <878taboc2i.fsf_-_@jidanni.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x (no timestamps) [generic] [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.9 (----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -4.9 (----) Gentleman, other programs know to just use $BROWSER when calling the external browser. But for emacs and gnus, one must hire a consultant to achieve the same effect. At least one of the manuals should say how. And in fact, if $BROWSER is good enough for other programs, it should be the default for emacs/gnus too. >>>>> "KY" =3D=3D Katsumi Yamaoka writes: KY> On Tue, 27 Mar 2018 09:31:34 +0800, =E7=A9=8D=E4=B8=B9=E5=B0=BC=E3=81= =95=E3=82=93 wrote: >> RET runs the command shr-browse-url, which is an interactive compiled >> Lisp function in =E2=80=98shr.el=E2=80=99. KY> `shr-browse-url' runs the Lisp function `browse-url' (unless the KY> prefix argument is given when invoking `shr-browse-url'). KY> So, in the normal way that browse-url's author supposed, you can KY> choose a certain ready-made Lisp function as you like as follows: KY> (setq browse-url-browser-function #'browse-url-firefox) KY> To see the ready-made functions you can use, do: KY> M-x customize-option RET browse-url-browser-function RET KY> ;; You will see browse-url-firefox, browse-url-chromium, etc. >> I want it to call $BROWSER from the environment. >> ;;(if (string-equal (getenv "BROWSER") "chromium") >> ;; nil (setq browse-url-chromium-program >> ;; (concat "/usr/bin/" (getenv "BROWSER")))) ;I am a dork >> (setq browse-url-default-browser (getenv "BROWSER")) KY> `browse-url-default-browser' is a function, not a variable, and KY> is one of candidates for `browse-url-browser-function'. So, KY> this (setq ...) form has no effect. But you are not a dork. :-) Wrong. KY> You can create your own Lisp function that sees "BROWSER". KY> For example: KY> (setq browse-url-browser-function #'my-browse-url-default-browser) KY> (defun my-browse-url-default-browser (url &optional _dummy) KY> "Run a browser that the environment variable BROWSER specifies. KY> BROWSER may be an existing shell command name, or a command name plus KY> some arguments like: \"firefox\", or \"firefox -new-tab\"" KY> (interactive (browse-url-interactive-arg "URL: ")) KY> (let ((process-environment (browse-url-process-environment)) KY> (browser (getenv "BROWSER")) KY> args name) KY> (setq browser (split-string browser) KY> args (cdr browser) KY> browser (car browser) KY> name (concat (file-name-nondirectory browser) KY> " " (mapconcat #'identity args " ") KY> " " url) KY> url (browse-url-encode-url url)) KY> (apply 'start-process name nil (executable-find browser) KY> (append args (list url))))) Waaa... it actually works! Thanks! From unknown Tue Aug 19 23:11:24 2025 X-Loop: help-debbugs@gnu.org Subject: bug#30981: Document how to use $BROWSER for external browser Resent-From: Glenn Morris Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 30 Mar 2018 00:33:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 30981 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 30981@debbugs.gnu.org, Katsumi Yamaoka Received: via spool by 30981-submit@debbugs.gnu.org id=B30981.152236992418883 (code B ref 30981); Fri, 30 Mar 2018 00:33:02 +0000 Received: (at 30981) by debbugs.gnu.org; 30 Mar 2018 00:32:04 +0000 Received: from localhost ([127.0.0.1]:59206 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f1hxc-0004uV-GR for submit@debbugs.gnu.org; Thu, 29 Mar 2018 20:32:04 -0400 Received: from eggs.gnu.org ([208.118.235.92]:54754) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f1hxb-0004u2-QV for 30981@debbugs.gnu.org; Thu, 29 Mar 2018 20:32:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f1hxW-0001RL-10 for 30981@debbugs.gnu.org; Thu, 29 Mar 2018 20:31:58 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:56352) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f1hxV-0001RF-Tf; Thu, 29 Mar 2018 20:31:57 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1f1hxV-0000BU-9n; Thu, 29 Mar 2018 20:31:57 -0400 From: Glenn Morris References: <87vadi483t.fsf@jidanni.org> <878taboc2i.fsf_-_@jidanni.org> X-Spook: Shooting eavesdropping Somolia doctrine basement X-Ran: P=/Dv9!@?FP%rs&6^a5Y{foC|TIkKo0xywFK6I~6mv#*#Cy}M`MV[j4,AA X-Hue: red X-Attribution: GM Date: Thu, 29 Mar 2018 20:31:57 -0400 In-Reply-To: <878taboc2i.fsf_-_@jidanni.org> ("=?UTF-8?Q?=E7=A9=8D=E4=B8=B9=E5=B0=BC?= Dan Jacobson"'s message of "Thu, 29 Mar 2018 10:22:29 +0800") Message-ID: User-Agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) xdg-open respects BROWSER, and xdg-open is the browse-url default on GNU/Linux. browse-url-can-use-xdg-open was overly restrictive prior to 26.1. In Emacs 26.1 it probably Just Works. From unknown Tue Aug 19 23:11:24 2025 X-Loop: help-debbugs@gnu.org Subject: bug#30981: Document how to use $BROWSER for external browser In-Reply-To: <878taboc2i.fsf_-_@jidanni.org> Resent-From: Katsumi Yamaoka Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 30 Mar 2018 06:02:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 30981 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: =?UTF-8?Q?=E7=A9=8D=E4=B8=B9=E5=B0=BC?= Dan Jacobson Cc: Glenn Morris , 30981@debbugs.gnu.org Received: via spool by 30981-submit@debbugs.gnu.org id=B30981.152238970923416 (code B ref 30981); Fri, 30 Mar 2018 06:02:01 +0000 Received: (at 30981) by debbugs.gnu.org; 30 Mar 2018 06:01:49 +0000 Received: from localhost ([127.0.0.1]:59289 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f1n6j-00065c-IU for submit@debbugs.gnu.org; Fri, 30 Mar 2018 02:01:49 -0400 Received: from hampton.hostforweb.net ([181.214.31.159]:32851) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f1n6h-00065U-T0 for 30981@debbugs.gnu.org; Fri, 30 Mar 2018 02:01:48 -0400 Received: from s70.gtokyofl21.vectant.ne.jp ([202.215.75.70]:60000 helo=localhost) by hampton.hostforweb.net with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.89_1) (envelope-from ) id 1f1n6e-000mq1-91; Fri, 30 Mar 2018 01:01:45 -0500 Date: Fri, 30 Mar 2018 15:01:40 +0900 Message-ID: From: Katsumi Yamaoka References: <87vadi483t.fsf@jidanni.org> <878taboc2i.fsf_-_@jidanni.org> Organization: Emacsen advocacy group X-Face: #kKnN,xUnmKia.'[pp`; Omh}odZK)?7wQSl"4o04=EixTF+V[""w~iNbM9ZL+.b*_CxUmFk B#Fu[*?MZZH@IkN:!"\w%I_zt>[$nm7nQosZ<3eu; B:$Q_:p!',P.c0-_Cy[dz4oIpw0ESA^D*1Lw= L&i*6&( User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-unknown-cygwin) Cancel-Lock: sha1:Cx8RLwFf20rwm4vJklzmD42/OEw= MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-OutGoing-Spam-Status: No, score=-0.2 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - hampton.hostforweb.net X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - jpl.org X-Get-Message-Sender-Via: hampton.hostforweb.net: authenticated_id: yamaoka/from_h X-Authenticated-Sender: hampton.hostforweb.net: yamaoka@jpl.org X-Source: X-Source-Args: X-Source-Dir: X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) On Thu, 29 Mar 2018 20:31:57 -0400, Glenn Morris wrote: > xdg-open respects BROWSER, and xdg-open is the browse-url default on GNU/Linux. > browse-url-can-use-xdg-open was overly restrictive prior to 26.1. > In Emacs 26.1 it probably Just Works. Thanks. Though I'm not on GNU/Linux now, is it ok to close this bug Jidanni? You should have xdg-open if you are on GNU/Linux. Even if (browse-url-can-use-xdg-open) returns nil, you can do: (setq browse-url-browser-function #'browse-url-xdg-open) From unknown Tue Aug 19 23:11:24 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: =?UTF-8?Q?=E7=A9=8D=E4=B8=B9=E5=B0=BC?= Dan Jacobson Subject: bug#30981: closed (Re: bug#30981: Document how to use $BROWSER for external browser) Message-ID: References: <87muyqm0cz.fsf@jidanni.org> <878taboc2i.fsf_-_@jidanni.org> X-Gnu-PR-Message: they-closed 30981 X-Gnu-PR-Package: emacs Reply-To: 30981@debbugs.gnu.org Date: Fri, 30 Mar 2018 08:31:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1522398662-4048-1" This is a multi-part message in MIME format... ------------=_1522398662-4048-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #30981: Document how to use $BROWSER for external browser which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 30981@debbugs.gnu.org. --=20 30981: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D30981 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1522398662-4048-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 30981-done) by debbugs.gnu.org; 30 Mar 2018 08:30:42 +0000 Received: from localhost ([127.0.0.1]:59348 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f1pQn-00012j-Pk for submit@debbugs.gnu.org; Fri, 30 Mar 2018 04:30:41 -0400 Received: from homie.mail.dreamhost.com ([208.97.132.208]:43279 helo=homiemail-a9.g.dreamhost.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f1pQm-00012b-NE for 30981-done@debbugs.gnu.org; Fri, 30 Mar 2018 04:30:41 -0400 Received: from homiemail-a9.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a9.g.dreamhost.com (Postfix) with ESMTP id 9B36B5BE066; Fri, 30 Mar 2018 01:30:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=jidanni.org; h=from:to:cc :subject:references:date:message-id:mime-version:content-type; s=jidanni.org; bh=IXgSo4xIRLz0OqPGt9wKsHm97JI=; b=QGSTwj2aRV6RI mUBda9XHIDkSCVDZH+szzz755RyAYGoXqcWHrpS8VPDKlF8NL8npfHwYd+1frc9U 7QlY6zek2LGkY2GYPq1J2BdjGBTZZGEDTC9iFfdMXrtMJV3n4fmFDtpKGcnlI7EL VVUKNVm1tEsV/HgVVttE72knN9v3Q4= Received: from jidanni.org (220-140-14-158.dynamic-ip.hinet.net [220.140.14.158]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: jidanni@jidanni.org) by homiemail-a9.g.dreamhost.com (Postfix) with ESMTPSA id 5237D5BE06B; Fri, 30 Mar 2018 01:30:39 -0700 (PDT) From: =?utf-8?B?56mN5Li55bC8?= Dan Jacobson To: Katsumi Yamaoka Subject: Re: bug#30981: Document how to use $BROWSER for external browser References: <87vadi483t.fsf@jidanni.org> <878taboc2i.fsf_-_@jidanni.org> Date: Fri, 30 Mar 2018 16:30:36 +0800 Message-ID: <87muyqm0cz.fsf@jidanni.org> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.1 (/) X-Debbugs-Envelope-To: 30981-done Cc: Glenn Morris , 30981-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.1 (/) OK I'll close it! Thanks. >>>>> "KY" == Katsumi Yamaoka writes: KY> On Thu, 29 Mar 2018 20:31:57 -0400, Glenn Morris wrote: >> xdg-open respects BROWSER, and xdg-open is the browse-url default on GNU/Linux. >> browse-url-can-use-xdg-open was overly restrictive prior to 26.1. >> In Emacs 26.1 it probably Just Works. KY> Thanks. Though I'm not on GNU/Linux now, is it ok to close this KY> bug Jidanni? You should have xdg-open if you are on GNU/Linux. KY> Even if (browse-url-can-use-xdg-open) returns nil, you can do: KY> (setq browse-url-browser-function #'browse-url-xdg-open) ------------=_1522398662-4048-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 29 Mar 2018 02:22:48 +0000 Received: from localhost ([127.0.0.1]:57791 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f1NDE-0000qP-F3 for submit@debbugs.gnu.org; Wed, 28 Mar 2018 22:22:48 -0400 Received: from eggs.gnu.org ([208.118.235.92]:53232) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f1NDC-0000q1-VG for submit@debbugs.gnu.org; Wed, 28 Mar 2018 22:22:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f1ND6-000306-Mr for submit@debbugs.gnu.org; Wed, 28 Mar 2018 22:22:41 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: * X-Spam-Status: No, score=1.8 required=5.0 tests=BAYES_50,FROM_EXCESS_BASE64, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:33616) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1f1ND6-0002zy-JA for submit@debbugs.gnu.org; Wed, 28 Mar 2018 22:22:40 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44194) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f1ND5-00033m-9E for bug-gnu-emacs@gnu.org; Wed, 28 Mar 2018 22:22:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f1ND2-0002yJ-49 for bug-gnu-emacs@gnu.org; Wed, 28 Mar 2018 22:22:39 -0400 Received: from homie.mail.dreamhost.com ([208.97.132.208]:32797 helo=homiemail-a99.g.dreamhost.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1f1ND1-0002xT-RR for bug-gnu-emacs@gnu.org; Wed, 28 Mar 2018 22:22:36 -0400 Received: from homiemail-a99.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a99.g.dreamhost.com (Postfix) with ESMTP id A0861D3E068; Wed, 28 Mar 2018 19:22:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=jidanni.org; h=from:to:cc :subject:references:date:message-id:mime-version:content-type: content-transfer-encoding; s=jidanni.org; bh=f7hP3XeKmqvKFgIHb+H JFb1BrGE=; b=nQeDzcw4RuRO4s6YzA7LZ99OkbckO27FZkEXOU9Lvg2NqSTKK7N 9C8WPsyjb2NgEJvCD3iKydT3QsLuQGiOXFYZ7s5p7vrTP0I2r9FhbXzSV8niCvSd Le5fjSXtcSX+t7fP9rRMjBLKm9CNilkmaKJvYjveMEsJn+GIHFg+eHwA= Received: from jidanni.org (114-41-29-124.dynamic-ip.hinet.net [114.41.29.124]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: jidanni@jidanni.org) by homiemail-a99.g.dreamhost.com (Postfix) with ESMTPSA id E9013D3E067; Wed, 28 Mar 2018 19:22:31 -0700 (PDT) From: =?utf-8?B?56mN5Li55bC8?= Dan Jacobson To: bug-gnu-emacs@gnu.org Subject: Document how to use $BROWSER for external browser References: <87vadi483t.fsf@jidanni.org> Date: Thu, 29 Mar 2018 10:22:29 +0800 Message-ID: <878taboc2i.fsf_-_@jidanni.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x (no timestamps) [generic] [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.9 (----) X-Debbugs-Envelope-To: submit Cc: Katsumi Yamaoka X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -4.9 (----) Gentleman, other programs know to just use $BROWSER when calling the external browser. But for emacs and gnus, one must hire a consultant to achieve the same effect. At least one of the manuals should say how. And in fact, if $BROWSER is good enough for other programs, it should be the default for emacs/gnus too. >>>>> "KY" =3D=3D Katsumi Yamaoka writes: KY> On Tue, 27 Mar 2018 09:31:34 +0800, =E7=A9=8D=E4=B8=B9=E5=B0=BC=E3=81= =95=E3=82=93 wrote: >> RET runs the command shr-browse-url, which is an interactive compiled >> Lisp function in =E2=80=98shr.el=E2=80=99. KY> `shr-browse-url' runs the Lisp function `browse-url' (unless the KY> prefix argument is given when invoking `shr-browse-url'). KY> So, in the normal way that browse-url's author supposed, you can KY> choose a certain ready-made Lisp function as you like as follows: KY> (setq browse-url-browser-function #'browse-url-firefox) KY> To see the ready-made functions you can use, do: KY> M-x customize-option RET browse-url-browser-function RET KY> ;; You will see browse-url-firefox, browse-url-chromium, etc. >> I want it to call $BROWSER from the environment. >> ;;(if (string-equal (getenv "BROWSER") "chromium") >> ;; nil (setq browse-url-chromium-program >> ;; (concat "/usr/bin/" (getenv "BROWSER")))) ;I am a dork >> (setq browse-url-default-browser (getenv "BROWSER")) KY> `browse-url-default-browser' is a function, not a variable, and KY> is one of candidates for `browse-url-browser-function'. So, KY> this (setq ...) form has no effect. But you are not a dork. :-) Wrong. KY> You can create your own Lisp function that sees "BROWSER". KY> For example: KY> (setq browse-url-browser-function #'my-browse-url-default-browser) KY> (defun my-browse-url-default-browser (url &optional _dummy) KY> "Run a browser that the environment variable BROWSER specifies. KY> BROWSER may be an existing shell command name, or a command name plus KY> some arguments like: \"firefox\", or \"firefox -new-tab\"" KY> (interactive (browse-url-interactive-arg "URL: ")) KY> (let ((process-environment (browse-url-process-environment)) KY> (browser (getenv "BROWSER")) KY> args name) KY> (setq browser (split-string browser) KY> args (cdr browser) KY> browser (car browser) KY> name (concat (file-name-nondirectory browser) KY> " " (mapconcat #'identity args " ") KY> " " url) KY> url (browse-url-encode-url url)) KY> (apply 'start-process name nil (executable-find browser) KY> (append args (list url))))) Waaa... it actually works! Thanks! ------------=_1522398662-4048-1--