在 Julia 中重新运行时清理工作区、绘图窗格和控制台

Clean workspace, plot pane, and console on rerun in Julia

我习惯于使用 clear all; close all; clc 启动我所有的 Matlab 脚本,以确保我没有查看任何旧数据或图表。我发现 Julia 的 clearconsole() 等同于 Matlab 的 clc,但还没有其他两个 Matlab 命令的工作解决方案。我主要使用 Play ("Run All") 按钮在 Juno IDE 和 运行 脚本中工作。

Revise.jl 包现在应该清除工作区,因为 workspace() 已被弃用,但它不适用于这个简单的测试用例。如果我定义 x 一次然后注释掉该行,它会在我每次 运行 时继续打印而不会出错。

using Revise
clearconsole()
#x=1
println(x)

我知道我可以点击 "Stop" 然后点击 "Play" 来重置工作区。但是,这仍然不会关闭旧图,并且 time to first plot issue 使得这个选项不受欢迎。

我在 Juno 的绘图窗格中找到了 "Forget All Plots" 按钮,但我希​​望将该功能作为脚本中的一行来代替。目前,我需要在编辑脚本后再次点击 运行 三次(如果包含 "Stop" 则需要点击四次)。

  1. "Forget All Plots"
  2. 在编辑器中的某处将焦点放回到我当前的文件上。
  3. "Run All"

理想情况下,我希望通过单击或击键在一个全新的环境中重新运行,但是任何有关更好的 Juno 工作流程的提示都将不胜感激。

我的问题在 Julia 话语网站上得到了回答:link

  • Juno.clearconsole() 可以像 Matlab 的 clc.
  • 一样使用
  • 在模块中编写脚本将清除每个 运行 上的变量,就像 Matlab 的 clear all.
  • 将来可能会在 Juno.jl 中添加一个新函数,它将像 Matlab 的 close all 一样工作。