# \[ANN\] VS Code extension 1.2 released

**URL:** <https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118>\
**Category:** VS Code\
**Tags:** announcement\
**Created:** [May 31, 2021, 8:47am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118 "2021-05-31T08:47:49Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![pfitzseb](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pfitzseb/32/45566_2.png) [@pfitzseb](https://discourse.julialang.org/u/pfitzseb)\
**Post date:** [May 31, 2021, 8:47am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/1 "2021-05-31T08:47:49Z")

</div>

Hey everyone,

we just released version 1.2 of the Julia extension for VS Code, which brings a bunch of new features, most importantly

- a new plot navigator,
- integration for persistent `tmux` processes,
- many notable changes to static code analysis,
- and a new debugger UI that allows you to switch between compiled and interpreted mode on a per-function basis.

Check out the [full changelog here](https://github.com/julia-vscode/julia-vscode/blob/master/CHANGELOG.md).

As always, feel free to post issues over at [the julia-vscode repo](https://github.com/julia-vscode/julia-vscode) and enable crash reporting if possible – it really helps tremendously with providing a stable extension.

The big focus for the next minor release is to get rid of local indexing, which is probably the biggest pain point currently; hopefully the infrastructure work put into the last to releases allows for a speedy release, so stay tuned.

Best,  
David, Sebastian, Shuhei, Zac

---

<div class="post-metadata">

**Author:** ![RGerzaguet](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rgerzaguet/32/45492_2.png) [@RGerzaguet](https://discourse.julialang.org/u/RGerzaguet)\
**Post date:** [May 31, 2021, 9:08am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/2 "2021-05-31T09:08:30Z")

</div>

The Debugger change is huge, thanks for this. When I had to debug large files, I often have to siwtch into compiled mode and put tons of breakpoints to go to the nested-function of interest. This is now direct and greatly improve the debugging experience.  
Cheers ! 😍

---

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://discourse.julialang.org/u/jules)\
**Post date:** [May 31, 2021, 9:27am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/3 "2021-05-31T09:27:26Z")

</div>

Does the tmux thing offer a way on Windows to connect to an external REPL from VSCode or is this a Linux only feature? I have never used tmux but I want to use an external REPL both to restart less often and to use my second screen more effectively.

---

<div class="post-metadata">

**Author:** ![pfitzseb](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pfitzseb/32/45566_2.png) [@pfitzseb](https://discourse.julialang.org/u/pfitzseb)\
**Post date:** [May 31, 2021, 9:28am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/4 "2021-05-31T09:28:42Z")

</div>

Yeah, that should work with the `Julia: Connect external REPL` command. Totally forgot I implemented that 😃

---

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://discourse.julialang.org/u/jules)\
**Post date:** [May 31, 2021, 9:34am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/5 "2021-05-31T09:34:17Z")

</div>

Cool, so it can find any open repl or is there a process I need to follow?

---

<div class="post-metadata">

**Author:** ![pfitzseb](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pfitzseb/32/45566_2.png) [@pfitzseb](https://discourse.julialang.org/u/pfitzseb)\
**Post date:** [May 31, 2021, 9:35am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/6 "2021-05-31T09:35:39Z")

</div>

The command should show instructions – it basically gives you a code snippet you need to copy into your REPL session.

Edit: I think there’s an issue with loading the REPL integration in this workflow though. Will fix.

---

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://discourse.julialang.org/u/jules)\
**Post date:** [May 31, 2021, 9:53am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/7 "2021-05-31T09:53:03Z")

</div>

Ok I tried this, one problem is that the paths don’t work because of unescaped backslashes. When I fixed that, the command ran but I didn’t see any change in VSCode. alt+enter on `1+1` did however print `2` in the REPL.

---

<div class="post-metadata">

**Author:** ![pfitzseb](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pfitzseb/32/45566_2.png) [@pfitzseb](https://discourse.julialang.org/u/pfitzseb)\
**Post date:** [May 31, 2021, 9:54am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/8 "2021-05-31T09:54:27Z")

</div>

Argh. Windows. Right. Will fix that too 😉

> [@jules](#):
>
> When I fixed that, the command ran but I didn’t see any change in VSCode. alt+enter on `1+1` did however print `2` in the REPL.

What changes were you expecting? Everything should work exactly the same as if you had an integrated terminal.

---

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://discourse.julialang.org/u/jules)\
**Post date:** [May 31, 2021, 9:56am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/9 "2021-05-31T09:56:03Z")

</div>

Not sure, any kind of indication that I’m connected to an external REPL session. If I come to an open VSCode window and I don’t know if there’s already a repl connected, how can I find out?

---

<div class="post-metadata">

**Author:** ![pfitzseb](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pfitzseb/32/45566_2.png) [@pfitzseb](https://discourse.julialang.org/u/pfitzseb)\
**Post date:** [May 31, 2021, 9:57am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/10 "2021-05-31T09:57:35Z")

</div>

Fair point. You can check whether the workspace is populated or you can see the module selector in the lower right. Not sure how to make this more obvious without adding another status bar item.

---

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://discourse.julialang.org/u/jules)\
**Post date:** [May 31, 2021, 10:02am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/11 "2021-05-31T10:02:27Z")

</div>

Ok one more question, if I close and reopen VSCode, how do I close the old session in the REPL (or does it close automatically if VSCode exits), so that I can connect to the new window?

---

<div class="post-metadata">

**Author:** ![pfitzseb](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pfitzseb/32/45566_2.png) [@pfitzseb](https://discourse.julialang.org/u/pfitzseb)\
**Post date:** [May 31, 2021, 10:05am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/12 "2021-05-31T10:05:07Z")

</div>

You don’t need to do anything except reconnect to the old REPL.

---

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://discourse.julialang.org/u/jules)\
**Post date:** [May 31, 2021, 10:08am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/13 "2021-05-31T10:08:11Z")

</div>

Ok thanks I will try it out some more, this is very cool! The terminal vs code vs plot pane placement in VSCode was bugging me for a long time, now I can show those huge dataframes on the other screen 🙂

---

<div class="post-metadata">

**Author:** ![pfitzseb](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pfitzseb/32/45566_2.png) [@pfitzseb](https://discourse.julialang.org/u/pfitzseb)\
**Post date:** [May 31, 2021, 10:19am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/14 "2021-05-31T10:19:23Z")

</div>

[https://github.com/julia-vscode/julia-vscode/pull/2182](https://github.com/julia-vscode/julia-vscode/pull/2182)  
should improve the experience quite a bit 🙂

---

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://discourse.julialang.org/u/jules)\
**Post date:** [May 31, 2021, 10:20am UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/15 "2021-05-31T10:20:21Z")

</div>

awesome!

---

<div class="post-metadata">

**Author:** ![Rui](https://avatars.discourse-cdn.com/v4/letter/r/ba8739/32.png) [@Rui](https://discourse.julialang.org/u/Rui)\
**Post date:** [June 1, 2021, 3:09pm UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/16 "2021-06-01T15:09:33Z")

</div>

The tmux and debugger are both huge things for me. Thanks!

---

<div class="post-metadata">

**Author:** ![cortner](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cortner/32/204_2.png) [@cortner](https://discourse.julialang.org/u/cortner)\
**Post date:** [June 1, 2021, 6:11pm UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/17 "2021-06-01T18:11:06Z")

</div>

As somebody who just recently switched from Atom can I make two requests on urgent fixes:

- the ALT+ENTER execution seems very unreliable in determining the enclosing scope. I now end up always highlighting which is a pain
- the inline results were formatted much more nicely in Atom (+ could easily get rid of them when no longer needed)

Otherwise the transition has been very smooth. Thank you.

---

<div class="post-metadata">

**Author:** ![pfitzseb](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pfitzseb/32/45566_2.png) [@pfitzseb](https://discourse.julialang.org/u/pfitzseb)\
**Post date:** [June 1, 2021, 6:16pm UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/18 "2021-06-01T18:16:23Z")

</div>

> [@cortner](#):
>
> the ALT+ENTER execution seems very unreliable in determining the enclosing scope. I now end up always highlighting which is a pain

How so? It should be much more robust than Juno, even though a bit unresponsive initially.

> [@cortner](#):
>
> the inline results were formatted much more nicely in Atom (+ could easily get rid of them when no longer needed)

Not much we can do about that, unfortunately, but you should be able to clear them the same in Juno.

---

<div class="post-metadata">

**Author:** ![cortner](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cortner/32/204_2.png) [@cortner](https://discourse.julialang.org/u/cortner)\
**Post date:** [June 1, 2021, 6:18pm UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/19 "2021-06-01T18:18:38Z")

</div>

> [@pfitzseb](#):
>
> > [@cortner](#):
> >
> > the ALT+ENTER execution seems very unreliable in determining the enclosing scope. I now end up always highlighting which is a pain
> 
> How so? It should be much more robust than Juno, even though a bit unresponsive initially.

In my personal experience - far from it. I’m especially when I’m editing a module and want to evaluate a new function definition it will often evaluate the entire file.

Another common case is when I am in a test script where the tests are enclosed in `@testset ... begin end` then executing a line within those with ALT+ENTER will always execute the entire file.

Seems to me this is using only indentation to determine code blocks?

(PS: I dislike Revise for some reason…)

---

<div class="post-metadata">

**Author:** ![cortner](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cortner/32/204_2.png) [@cortner](https://discourse.julialang.org/u/cortner)\
**Post date:** [June 1, 2021, 6:21pm UTC](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118/20 "2021-06-01T18:21:18Z")

</div>

> [@pfitzseb](#):
>
> > [@cortner](#):
> >
> > the inline results were formatted much more nicely in Atom (+ could easily get rid of them when no longer needed)
> 
> Not much we can do about that, unfortunately,

Does Juno just have custom views rather than just printing the output into a window when you hover?

[Next page](https://discourse.julialang.org/t/ann-vs-code-extension-1-2-released/62118.md?page=2)
