# Chose what browser to launch Pluto in

**URL:** <https://discourse.julialang.org/t/chose-what-browser-to-launch-pluto-in/58488>\
**Category:** General Usage\
**Tags:** pluto\
**Created:** [April 3, 2021, 10:28am UTC](https://discourse.julialang.org/t/chose-what-browser-to-launch-pluto-in/58488 "2021-04-03T10:28:40Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![TheLateKronos](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/thelatekronos/32/12824_2.png) [@TheLateKronos](https://discourse.julialang.org/u/TheLateKronos)\
**Post date:** [April 3, 2021, 10:28am UTC](https://discourse.julialang.org/t/chose-what-browser-to-launch-pluto-in/58488/1 "2021-04-03T10:28:40Z")

</div>

I believe that I can add a kwarg in my `Pluto.run()` command to chose the browser to launch the notebook in. I can however not find anything about it over at github, and because there is no comprehensive documentations I don’t know where to search. I started looking for the definition of the `run` method in the source-code, but that was tedious and should honestly be unnessecary.

So - do anyone know what keyword-arguments to add to control the browser, and what option are out there?

---

<div class="post-metadata">

**Author:** ![nilshg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nilshg/32/2283_2.png) [@nilshg](https://discourse.julialang.org/u/nilshg)\
**Post date:** [April 3, 2021, 1:16pm UTC](https://discourse.julialang.org/t/chose-what-browser-to-launch-pluto-in/58488/2 "2021-04-03T13:16:25Z")

</div>

Are you sure that this `kwarg` exists?

```julia
help?> Pluto.run()
  Pluto.run()

  Start Pluto!

  Keyword arguments
  ===================

  You can configure some of Pluto's more technical behaviour using keyword arguments, but this is mostly meant to support testing and strange setups like Docker. If you want to do something exciting with Pluto, you can probably write a
  creative notebook to do it!

  Pluto.run(; kwargs...)

  For the full list, see the Pluto.Configuration module. Some common parameters:

    • launch_browser: Optional. Whether to launch the system default browser. Disable this on SSH and such.

    • host: Optional. The default host is "127.0.0.1". For wild setups like Docker and heroku, you might need to change this to "0.0.0.0".

    • port: Optional. The default port is 1234.

  Technobabble
  ==============

  This will start the static HTTP server and a WebSocket server. The server runs synchronously (i.e. blocking call) on http://[host]:[port]/. Pluto notebooks can be started from the main menu in the web browser.

```

This sounds to me like `launch_browser` is just a true/false to set whether the system default browser should launch or not, not a kwarg to choose a different browser from the system default.

---

<div class="post-metadata">

**Author:** ![TheLateKronos](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/thelatekronos/32/12824_2.png) [@TheLateKronos](https://discourse.julialang.org/u/TheLateKronos)\
**Post date:** [April 3, 2021, 2:53pm UTC](https://discourse.julialang.org/t/chose-what-browser-to-launch-pluto-in/58488/3 "2021-04-03T14:53:10Z")

</div>

> [@nilshg](#):
>
> Are you sure that this `kwarg` exists?

No

> [@nilshg](#):
>
> This sounds to me like `launch_browser` is just a true/false to set whether the system default browser should launch or not, not a kwarg to choose a different browser from the system default.

Agreed. I remembered that the kwarg existed, but I seems to have wrongly though that it could be used to chose the browser to launch in.

I’ll sumbit an issue to add this as a kwarg to `Pluto.run()`

---

<div class="post-metadata">

**Author:** ![isolatedinformation](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/isolatedinformation/32/27115_2.png) [@isolatedinformation](https://discourse.julialang.org/u/isolatedinformation)\
**Post date:** [July 14, 2021, 6:56am UTC](https://discourse.julialang.org/t/chose-what-browser-to-launch-pluto-in/58488/4 "2021-07-14T06:56:15Z")

</div>

A workaround I used is to edit the `Pluto.jl/WebServer.jl` in file. There in the function `open_in_default_browser()`, I changed the `Base.run()` line to choose a browser of my liking.

I use wsl on Windows, so I went,

```julia
Base.run(`powershell.exe firefox.exe "'$url'" `)

```

with firefox.exe added to my path

---

<div class="post-metadata">

**Author:** ![lungben](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lungben/32/12314_2.png) [@lungben](https://discourse.julialang.org/u/lungben)\
**Post date:** [July 14, 2021, 7:23am UTC](https://discourse.julialang.org/t/chose-what-browser-to-launch-pluto-in/58488/5 "2021-07-14T07:23:34Z")

</div>

As an alternative to editing a source file, you can use `@eval ModuleName code` to overwrite package functionality interactively (or in a jl script that you include to run Pluto).

---

<div class="post-metadata">

**Author:** ![juliohm](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juliohm/32/215266_2.png) [@juliohm](https://discourse.julialang.org/u/juliohm)\
**Post date:** [September 15, 2021, 11:48pm UTC](https://discourse.julialang.org/t/chose-what-browser-to-launch-pluto-in/58488/6 "2021-09-15T23:48:50Z")

</div>

You can do it manually currently with `Pluto.run(launch_browser=false)` and then copying the URL to the desired browser.
