# VS code is excellent!

**URL:** <https://discourse.julialang.org/t/vs-code-is-excellent/6381>\
**Category:** New to Julia\
**Tags:** vscode\
**Created:** [October 10, 2017, 5:32pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381 "2017-10-10T17:32:58Z")\
**Posts on this page:** 20\
**Page:** 4

<div class="post-metadata">

**Author:** ![ihnorton](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ihnorton/32/26_2.png) [@ihnorton](https://discourse.julialang.org/u/ihnorton)\
**Post date:** [October 16, 2017, 7:51pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/61 "2017-10-16T19:51:37Z")

</div>

RStudio also uses named pipes.

It’s a different OS-level mechanism than going through the network stack. _Non-local_ pipes can be firewalled, but that’s off by default; and local ones can’t be firewalled by the OS from what I can tell.

An antivirus could filter named pipes with i/o hooking, but if they don’t provide a wide enough escape hatch then broken Julia is going to be the least of your problems (named pipes are used _everywhere_; e.g. Chrome uses them communicate with each tab process).

---

<div class="post-metadata">

**Author:** ![aleksip](https://avatars.discourse-cdn.com/v4/letter/a/cdc98d/32.png) [@aleksip](https://discourse.julialang.org/u/aleksip)\
**Post date:** [October 28, 2017, 11:33pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/62 "2017-10-28T23:33:26Z")

</div>

Just a short notice that the VSCode insiders has the possibility to have the terminal on the right side next to the editor. The stable release will come in about two weeks [1].

[1] [https://github.com/Microsoft/vscode/issues/2806](https://github.com/Microsoft/vscode/issues/2806)

---

<div class="post-metadata">

**Author:** ![bernhard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bernhard/32/2619_2.png) [@bernhard](https://discourse.julialang.org/u/bernhard)\
**Post date:** [October 29, 2017, 1:18pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/63 "2017-10-29T13:18:35Z")

</div>

On my Win10 laptop VS Code is also much more responsive than Atom. In addition it seems to use much less ressources. Atom sometimes has a number of instances running (even though I may only ‘see’ one or two of them) which use a lot of cpu power.

However, it Atom it was much clearer to me when ‘Julia was busy’.  
In the screenshot below it says ‘Julia ready’ which is clearly not the case. I am not sure why…  
I guess one can see whether the execution is done, by waiting for “\>julia”.

 ![scr](https://global.discourse-cdn.com/julialang/original/3X/c/1/c161895082f73db8aea3375fa14f010f2cf723a8.png)

---

<div class="post-metadata">

**Author:** ![favba](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/favba/32/2735_2.png) [@favba](https://discourse.julialang.org/u/favba)\
**Post date:** [October 29, 2017, 1:46pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/64 "2017-10-29T13:46:59Z")

</div>

I believe this “Julia ready” is referring to the parser and the linter for the text editing pane, not to the terminal pane.

---

<div class="post-metadata">

**Author:** ![ArchieCall](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/archiecall/32/206_2.png) [@ArchieCall](https://discourse.julialang.org/u/ArchieCall)\
**Post date:** [October 29, 2017, 1:55pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/65 "2017-10-29T13:55:27Z")

</div>

I have used VS Code quite a bit and just ignore the Julia - starting up, or Julia - busy messages. They do not seem to affect the responsiveness in running or in just editing code. It feels lively in pretty much every way!

---

<div class="post-metadata">

**Author:** ![bernhard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bernhard/32/2619_2.png) [@bernhard](https://discourse.julialang.org/u/bernhard)\
**Post date:** [October 30, 2017, 11:55am UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/66 "2017-10-30T11:55:25Z")

</div>

ok thank you both.

---

<div class="post-metadata">

**Author:** ![davidanthoff](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/davidanthoff/32/223493_2.png) [@davidanthoff](https://discourse.julialang.org/u/davidanthoff)\
**Post date:** [October 30, 2017, 4:56pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/67 "2017-10-30T16:56:13Z")

</div>

> [@favba](#):
>
> I believe this “Julia ready” is referring to the parser and the linter for the text editing pane, not to the terminal pane.

Yes, you are right. See [Rename the text on the statusbar for the LS status · Issue #334 · julia-vscode/julia-vscode · GitHub](https://github.com/JuliaEditorSupport/julia-vscode/issues/334).

---

<div class="post-metadata">

**Author:** ![bernhard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bernhard/32/2619_2.png) [@bernhard](https://discourse.julialang.org/u/bernhard)\
**Post date:** [November 6, 2017, 2:04pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/68 "2017-11-06T14:04:18Z")

</div>

Can someone tell me how to interrupt julia in VS Code?  
CTRL D or CTRL C did not work.  
I also searched the keyboard shortcuts…

---

<div class="post-metadata">

**Author:** ![PetrKryslUCSD](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/petrkryslucsd/32/215825_2.png) [@PetrKryslUCSD](https://discourse.julialang.org/u/PetrKryslUCSD)\
**Post date:** [November 6, 2017, 3:01pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/69 "2017-11-06T15:01:50Z")

</div>

It works for me. Check which command is bound to ctrl-c.

---

<div class="post-metadata">

**Author:** ![bernhard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bernhard/32/2619_2.png) [@bernhard](https://discourse.julialang.org/u/bernhard)\
**Post date:** [November 6, 2017, 3:18pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/70 "2017-11-06T15:18:13Z")

</div>

a copy command.  
Can you please let me know what the command should be. I search for ‘interrupt’ but could not find anything

---

<div class="post-metadata">

**Author:** ![PetrKryslUCSD](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/petrkryslucsd/32/215825_2.png) [@PetrKryslUCSD](https://discourse.julialang.org/u/PetrKryslUCSD)\
**Post date:** [November 6, 2017, 4:25pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/71 "2017-11-06T16:25:11Z")

</div>

Like this?

 ![image](https://global.discourse-cdn.com/julialang/original/3X/a/0/a0f0b1b937bb4de73d833626d89d11df97bf4d20.png)

Note the line at the bottom: copy should only be executed when some text is selected in the terminal.  
Otherwise the control-c should be passed along to execute the interrupt in the terminal.

---

<div class="post-metadata">

**Author:** ![bernhard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bernhard/32/2619_2.png) [@bernhard](https://discourse.julialang.org/u/bernhard)\
**Post date:** [November 6, 2017, 5:24pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/72 "2017-11-06T17:24:26Z")

</div>

> [@PetrKryslUCSD](#):
>
> the

thanks.  
I meant the command for INTERRUPT. What do I need to use to interrupt Julia?

my copy keybindings seem to be working fine for me.

 ![image](https://global.discourse-cdn.com/julialang/original/3X/1/f/1f3b0b98f64671ff8590215c52c160cffef9f744.png)

---

<div class="post-metadata">

**Author:** ![PetrKryslUCSD](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/petrkryslucsd/32/215825_2.png) [@PetrKryslUCSD](https://discourse.julialang.org/u/PetrKryslUCSD)\
**Post date:** [November 6, 2017, 5:26pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/73 "2017-11-06T17:26:05Z")

</div>

Actually that’s what I meant. Make the terminal visible, and then you can use the control-c key to interrupt Julia.

---

<div class="post-metadata">

**Author:** ![bernhard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bernhard/32/2619_2.png) [@bernhard](https://discourse.julialang.org/u/bernhard)\
**Post date:** [November 6, 2017, 5:29pm UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/74 "2017-11-06T17:29:43Z")

</div>

> [@PetrKryslUCSD](#):
>
> interrupt

ah ok.  
So you are saying ‘interrupt’ is not a keybinding of VS Code?

In my case CTRL C is not working when the terminal is active (or I am too stupid for that), maybe some of the other keybindings are preventing this…  
I am not quite sure what the last two items on this list here mean…

 ![image](https://global.discourse-cdn.com/julialang/original/3X/1/e/1e68e7346e258abb99ad7352e8901471baca425c.png)

---

<div class="post-metadata">

**Author:** ![xiaodai](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/xiaodai/32/15937_2.png) [@xiaodai](https://discourse.julialang.org/u/xiaodai)\
**Post date:** [November 19, 2017, 3:01am UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/75 "2017-11-19T03:01:50Z")

</div>

What’s the way to start VScode with multiple threads? Juno automatically chooses 4 threads for my laptop but there is only one active thread in VScode. I am on Windws 10 64 bit.

---

<div class="post-metadata">

**Author:** ![PetrKryslUCSD](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/petrkryslucsd/32/215825_2.png) [@PetrKryslUCSD](https://discourse.julialang.org/u/PetrKryslUCSD)\
**Post date:** [November 19, 2017, 3:02am UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/76 "2017-11-19T03:02:54Z")

</div>

You mean VS code or Julia?

---

<div class="post-metadata">

**Author:** ![xiaodai](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/xiaodai/32/15937_2.png) [@xiaodai](https://discourse.julialang.org/u/xiaodai)\
**Post date:** [November 19, 2017, 3:15am UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/77 "2017-11-19T03:15:34Z")

</div>

Yeah

---

<div class="post-metadata">

**Author:** ![davidanthoff](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/davidanthoff/32/223493_2.png) [@davidanthoff](https://discourse.julialang.org/u/davidanthoff)\
**Post date:** [November 19, 2017, 4:02am UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/78 "2017-11-19T04:02:17Z")

</div>

I don’t understand that question. What do you mean by “threads”?

---

<div class="post-metadata">

**Author:** ![jonathanBieler](https://avatars.discourse-cdn.com/v4/letter/j/82dd89/32.png) [@jonathanBieler](https://discourse.julialang.org/u/jonathanBieler)\
**Post date:** [November 19, 2017, 9:02am UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/79 "2017-11-19T09:02:06Z")

</div>

He wants ` Threads.nthreads() > 1` which you usually get by setting the shell variable `JULIA_NUM_THREADS` before starting Julia.

---

<div class="post-metadata">

**Author:** ![piever](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/piever/32/1815_2.png) [@piever](https://discourse.julialang.org/u/piever)\
**Post date:** [November 19, 2017, 9:19am UTC](https://discourse.julialang.org/t/vs-code-is-excellent/6381/80 "2017-11-19T09:19:22Z")

</div>

More generally, is it possible to start Julia with some options in VS Code? For example number of processes (say `julia -p 4 )`or optimization level (say `julia -O3`), or using a customized system image (I’m particularly interested to see if the approach to fast plotting proposed [here](https://discourse.julialang.org/t/prerelease-makie-interactive-plotting/6811/42), with `julia -J myimage.so` could work in an IDE). If that is currently not possible, maybe there could be a `julia.commandLineFlags` setting where one can specify all of this.

[Previous page](https://discourse.julialang.org/t/vs-code-is-excellent/6381.md?page=3)

[Next page](https://discourse.julialang.org/t/vs-code-is-excellent/6381.md?page=5)
