Table viewer, profile viewer, and terminal shell integration not working on vscode

I’m following the Juliacon 2022 talk about new features in VSCode but several of them are not working for me. Trying to figure out what is configured incorrectly on my system.

Running Windows 11, VSCode 1.69.2.

Julia version
julia> versioninfo()
Julia Version 1.7.3
Commit 742b9abb4d (2022-05-06 12:58 UTC)
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: Intel(R) Xeon(R) Gold 6242 CPU @ 2.80GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-12.0.1 (ORCJIT, cascadelake)
Environment:
  JULIA_EDITOR = code.cmd
Package versions
    (VSCodeFeatures) pkg> st 
Project VSCodeFeatures v0.1.0
      Status `C:\Users\bguenter\Source\github\VSCodeFeatures\Project.toml`
  [a93c6f00] DataFrames v1.3.4
  [c46f51b8] ProfileView v1.5.1
  [ce6b1742] RDatasets v0.7.7
MWE
module VSCodeFeatures

using DataFrames, RDatasets, ProfileView

iris = dataset("datasets", "iris")
export iris

medium = rand(100_000, 3)
export medium
large = rand(1_000_000, 10)
export large

function password(numchars, use_special_chars=false)
    let chars
        for _ in 1:1000000
            f(a...) = a
            special = use_special_chars ? f("!#%^&*()_+"...) : f(""...)
            chars = [('a':'z')..., ('A':'Z')..., ('1':'9')..., special...]
        end
        return string(rand(chars, numchars)...)
    end
end
export password

@profview password(10)

end #module

I evaluate iris,medium,large in VSCode, as shown in the video, and then use the Julia object viewer to look at the array values. However, unlike the video demo the table viewer icon doesn’t show up in the menu when I hover over the arrays.

I enabled terminal shell integration but the julia prompt didn’t have decorations that can be clicked to get menus. Is there some other configuration setting that has to be turned on as well?

The profile viewer doesn’t display a pane in the VSCode window. Instead it pops up a standalone window. I didn’t see a configuration setting that controls where the viewer is displayed, and don’t think the video mentioned one.

This is the REPL output after evaluating the @profview statement in VSCode:

Profile view message ``` Gtk.GtkWindowLeaf(name="", parent, width-request=-1, height-request=-1, visible=TRUE, sensitive=TRUE, app-paintable=FALSE, can-focus=FALSE, has-focus=FALSE, is-focus=FALSE, focus-on-click=TRUE, can-default=FALSE, has-default=FALSE, receives-default=FALSE, composite-child=FALSE, style, events=0, no-show-all=FALSE, has-tooltip=FALSE, tooltip-markup=NULL, tooltip-text=NULL, window, opacity=1.000000, double-buffered, halign=GTK_ALIGN_FILL, valign=GTK_ALIGN_FILL, margin-left, margin-right, margin-start=0, margin-end=0, margin-top=0, margin-bottom=0, margin=0, hexpand=FALSE, vexpand=FALSE, hexpand-set=FALSE, vexpand-set=FALSE, expand=FALSE, scale-factor=1, border-width=0, resize-mode, child, type=GTK_WINDOW_TOPLEVEL, title="Profile", role=NULL, resizable=TRUE, modal=FALSE, window-position=GTK_WIN_POS_NONE, default-width=800, default-height=600, destroy-with-parent=FALSE, hide-titlebar-when-maximized=FALSE, icon, icon-name=NULL, screen, type-hint=GDK_WINDOW_TYPE_HINT_NORMAL, skip-taskbar-hint=FALSE, skip-pager-hint=FALSE, urgency-hint=FALSE, accept-focus=TRUE, focus-on-map=TRUE, decorated=TRUE, deletable=TRUE, gravity=GDK_GRAVITY_NORTH_WEST, transient-for, attached-to, has-resize-grip, resize-grip-visible, application, is-active=TRUE, has-toplevel-focus=TRUE, startup-id, mnemonics-visible=FALSE, focus-visible=FALSE, is-maximized=FALSE) ```
  • TableViewer: Only works via the workspace view for bindings in Main. You can use Main.vscodedisplay(iris) inside of a module though.
  • Shell integration: Doesn’t work on Windows in the latest release, but a somewhat working version will be in the next one.
  • ProfileViewer: Don’t load ProfileViewer.jl if you want to use the built-in one (and use Main.@profview ... in the module).

Hello, I have also encountered the same problem with Shell Integration. The current environment settings are described below.

  1. Julia
julia> versioninfo()
Julia Version 1.11.1
Commit 8f5b7ca12a (2024-10-16 10:53 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: 16 × Intel(R) Core(TM) i9-10885H CPU @ 2.40GHz
  WORD_SIZE: 64
  LLVM: libLLVM-16.0.6 (ORCJIT, skylake)
Threads: 8 default, 0 interactive, 4 GC (on 16 virtual cores)
Environment:
  JULIA_DEPOT_PATH = C:\pinkie\julia\packages
  JULIA_NUM_THREADS = 8
  JULIA_PKG_SERVER = https://mirrors.sustech.edu.cn/julia
  JULIA_EDITOR = code

Note that it is installed by downloading the software package instead of using the Juliaup. The main reason for not using Juliaup is to install Julia to where I manually set.

  1. pwsh
PowerShell 7.4.6
PS C:\Users\Pinkie> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.4.6
PSEdition                      Core
GitCommitId                    7.4.6
OS                             Microsoft Windows 10.0.22631
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0
  1. vscode.

I am impressed by the functionality provided by Shell integration, as shown in Julia in VS Code., so I really want this feature now. If possible, please provide any helpful suggestions. Thank you very much.