Debugging &引用;手表;Julia REPL的长数组?

Debugging &引用;手表;Julia REPL的长数组?,debugging,julia,watch,Debugging,Julia,Watch,假设我有一个长数组 > using MakieGallery > size(database) (210,) 如果我这样做 > [d.title for d=database] 它将打印它被截断,如果我显示它,它将打印成一团: > show([d.title for d=database]) 我不知道怎么做,但也许我可以将值打印到一列中,它会将我的控制台向上滚动 这一切都很糟糕。有可能对变量进行某种简单的“监视”吗?也就是说,用列表控件在单独的窗口中打开一些小部件,

假设我有一个长数组

> using MakieGallery
> size(database)
(210,)
如果我这样做

> [d.title for d=database]
它将打印它被截断,如果我显示它,它将打印成一团:

> show([d.title for d=database])
我不知道怎么做,但也许我可以将值打印到一列中,它会将我的控制台向上滚动


这一切都很糟糕。有可能对变量进行某种简单的“监视”吗?也就是说,用列表控件在单独的窗口中打开一些小部件,放置一个数组,我可以根据需要滚动它?

Julia内部使用
Base.show
要显示REPL中的值,您可以随意扩展此函数(此示例只是一个非常简单的实现,可以将数组的每个元素打印到新行中,您可能不应该使用它):


然后,您可以继续将函数添加到
.julia/config/startup.jl中,以便在每次启动REPL时加载此函数。只需确保有一个真正可靠的实现来处理各种可能无法正常工作的边缘情况。

Pluto.jl有一个非常好的表格数据查看器(包括数组)。它会根据默认值截断输出,但会提供一个按钮来显示更多内容

此外,当您更改另一个单元格中的数据时,视图会自动更新

Base.show(io::IO, ::MIME"text/plain", x::Array) = x .|> println