GitHub repo GitHub - jiangzhuochi/jupyter-JuliaFormatter: JuliaFormatter for Jupyter Notebook
JuliaFormatter for Jupyter Notebook
Format Julia with JuliaFormatter in Jupyter Notebook
前置条件 pre-requisites
of course, you must have some of the corresponding packages installed:
add JuliaFormatter
add JSON
安装 Installation
jupyter nbextension install https://github.com/jiangzhuochi/jupyter-JuliaFormatter/archive/main.zip --user
jupyter nbextension enable jupyter-JuliaFormatter-main/jupyter-JuliaFormatter
功能 Features
- a toolbar button
- a keyboard shortcut for reformatting the current code-cell (default: Alt-F, Mac: Option-F)
- a keyboard shortcut for reformatting whole code-cells (default: Alt-Shift-F, Mac: Option-Shift-F, Same as vscode format shortcut)
配置文件 Configuration File
Support configuration files, .JuliaFormatter.toml
must be the same as the current .ipynb
file is in the same directory
自定义快捷键 Customize shortcut keys
https://jupyter-contrib-nbextensions.readthedocs.io/en/latest/install.html#enabling-disabling-extensions
You can then open the nbextensions tab on the tree (dashboard/file browser) notebook page to configure nbextensions. You will have access there to a dashboard where extensions can be enabled/disabled via checkboxes. Additionally a short documentation for each extension is displayed, and configuration options are presented.
3 Likes
Hi,
This looks like a very nice tool to have.
Do these packages need to be installed in the base (@v1.8
) environment? Is it possible to install them in a different shared environment and specify that to the extension somehow? I prefer to keep my base environment as empty as possible.
Hi, digital_carver:
I’m a novice in the julia language. I don’t know how to use the shared environment. If you install JSON and JuliaFormatter for each environment, I think it will work.
❯ mkdir MyProject
❯ cd .\MyProject\
❯ julia
julia> ]
(@v1.8) pkg> activate .
(MyProject) pkg> add JuliaFormatter
(MyProject) pkg> add JSON
ctrl + D
❯ jupyter notebook (or activate some_env then jupyter notebook)
The first time I used discourse, did you receive my reply? I don’t seem to quote your reply.
Thanks, I’ll try out the extension at some point and let you know how it goes.
Yeah, Discourse seems pretty smart about it - because I’m the only other person in the thread, it marked your post as a reply and notified me.
Hi,
does anybody have experience about whether this Julia formatter (or any other Julia formatter) works with Jupyter Lab 4.* ? I note that the documentation installation text is out of date, using “jupyter nbextension”, so I presume that the whole package may be outdated.
Alberto
I just use this
jupytext --pipe "julia -e 'using JuliaFormatter; format_file(ARGS[1]; margin=150)' {}" notebook.ipynb