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?
Are you sure that this
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!
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.
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.
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
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,
Base.run(`powershell.exe firefox.exe "'$url'" `)
with firefox.exe added to my path
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).
You can do it manually currently with
Pluto.run(launch_browser=false) and then copying the URL to the desired browser.