# \[ANN\] Juno 0.6.7

**URL:** <https://discourse.julialang.org/t/ann-juno-0-6-7/8622>\
**Category:** Juno\
**Tags:** announcement, juno\
**Created:** [January 26, 2018, 6:11pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622 "2018-01-26T18:11:32Z")\
**Posts on this page:** 20\
**Page:** 4

<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:** [February 6, 2018, 6:51pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/61 "2018-02-06T18:51:43Z")

</div>

I cannot get the “Terminal” window in the right-hand side corner. When I do “Open terminal”, I get an independent terminal window, outside of the editor.

---

<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:** [February 6, 2018, 7:14pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/62 "2018-02-06T19:14:48Z")

</div>

There should be a “New Terminal” command which fits what you want.

---

<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:** [February 6, 2018, 7:29pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/63 "2018-02-06T19:29:12Z")

</div>

Many thanks, that worked.

How about using a different shell? Could I set the Shell to `"C:\Program Files\Git\git-bash.exe"`?

Your help is much appreciated!

PS: So far Juno looks GREAT!

---

<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:** [February 6, 2018, 7:31pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/64 "2018-02-06T19:31:25Z")

</div>

Yeah, that should work – you can set the julia-client “Shell” setting to whatever you want.

---

<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:** [February 6, 2018, 7:32pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/65 "2018-02-06T19:32:46Z")

</div>

Unfortunately I am not getting a prompt: nothing happens after the pane appears.

---

<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:** [February 6, 2018, 7:36pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/66 "2018-02-06T19:36:31Z")

</div>

Did you enter the path with quotes? If so, try without. If that still doesn’t work, can you check the Atom dev console (opened via Ctrl-Shift-I) for errors?

---

<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:** [February 6, 2018, 7:36pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/67 "2018-02-06T19:36:39Z")

</div>

OK, one thing I figured out: it must be `C:\Program Files\Git\git-bash.exe` not `"C:\Program Files\Git\git-bash.exe"`. But: the terminal opens in an outside 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:** [February 6, 2018, 7:39pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/68 "2018-02-06T19:39:59Z")

</div>

Can you open an issue about this at Juno.jl? I’ll take a look at that tomorrow.

---

<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:** [February 6, 2018, 8:18pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/69 "2018-02-06T20:18:40Z")

</div>

Done. Many thanks.

---

<div class="post-metadata">

**Author:** ![wrgr](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/wrgr/32/2796_2.png) [@wrgr](https://discourse.julialang.org/u/wrgr)\
**Post date:** [February 7, 2018, 6:41am UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/70 "2018-02-07T06:41:44Z")

</div>

@pfitzseb, thank you for the answer, and effort you are putting in the project!  
Do you know what caused that slowness? I’m asking because other Juno tabs seem to do not suffer from these problems, even when I evaluate some code in the files.  
If you have time, could you please suggest something about

> [@pfitzseb](#):
>
> all command-line based Julia interfaces

I suspect that I’m missing something, but for me Julia REPL has only tab completion and basic syntax highlighting, which in turn are inferior to the _good old_ Console, and I’m not aware of any other useful features (interfaces). Or maybe I’m mistaking features for internal interfaces? But if you talked about internal interfaces, I thought that Atom uses a separate Julia kernel, not a REPL as a backend.

---

<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:** [February 7, 2018, 11:09am UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/71 "2018-02-07T11:09:54Z")

</div>

> [@wrgr](#):
>
> Do you know what caused that slowness? I’m asking because other Juno tabs seem to do not suffer from these problems, even when I evaluate some code in the files.

Well, our console implementation isn’t particularly optimized – getting good performance for basically arbitraily complicated objects isn’t easy. I’m not saying it couldn’t be done, but it’s not really something I want to spend that much time on due to the other point I brought up.

> [@wrgr](#):
>
> I suspect that I’m missing something, but for me Julia REPL has only tab completion and basic syntax highlighting, which in turn are inferior to the good old Console, and I’m not aware of any other useful features (interfaces). Or maybe I’m mistaking features for internal interfaces? But if you talked about internal interfaces, I thought that Atom uses a separate Julia kernel, not a REPL as a backend.

There’s for example [ProgressMeters.jl](https://github.com/timholy/ProgressMeter.jl), [ASTInterpreter2.jl](https://github.com/Keno/ASTInterpreter2.jl) and many more packages that implement some kind of terminal based UI. Unfortunately those are _fundamentally_ incompatible with the old HTML based console. Furthermore, all new REPL modes (like the `pkg>` mode in the upcoming Pkg3) would require either special casing on our side or some very tricky code to implement them generally.

---

<div class="post-metadata">

**Author:** ![chobbes](https://avatars.discourse-cdn.com/v4/letter/c/848f3c/32.png) [@chobbes](https://discourse.julialang.org/u/chobbes)\
**Post date:** [February 7, 2018, 11:26am UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/72 "2018-02-07T11:26:50Z")

</div>

Thank you so much for your most detailed response!! I took some time to play with the updated Atom and the debugger. Here are my further questions and comments (sorry!!):

> [@pfitzseb](#):
>
> By typing @enter foo(bar) in an editor and pressing Ctrl-Enter 🙂
> 
> That said, the issues with starting debugging in the REPL should be fixed with the latest version of Atom.jl, so please Pkg.update() if you haven’t done so already.

Thanks for the hint!! I have updated Atom.jl. A naive question - I thought Atom is independent from Julia and serves as the IDE for using Julia. Why am I able to update Atom via Julia? It’s kind of counter-intuitive.

> [@pfitzseb](#):
>
> Alright – in theory Juno is only a thin wrapper around the debugger, so it seems likely that you’re running into ASTInterpreter bugs.

Here is exactly what I meant. I’m debugging something absolutely bug-free, at least bug-free with command-line-based debugger. It’s very hard to offer a MWE for this. But the code for generating these errors is **extremely** simple, just three lines of code, using a few packages. I can furnish my code (by filing a ticket on github) if you think it might be useful.

 ![Screenshot%20from%202018-02-06%2022-24-48](https://global.discourse-cdn.com/julialang/original/3X/8/8/88d1741f5c3e5ddaca8039219e1f5e40e656da95.jpeg)  
So far, these internal errors seem to not affect the debugging. It has only be very disturbing or misguiding.

> [@pfitzseb](#):
>
> It’s a question of what to have in the default UI, I suppose. I’m very hesitant to add more buttons to the toolbar, but it’d be pretty easy to just add Atom commands for those unmapped incanations.

I see what you mean and you’re probably right. Just curious - If the REPL is used only for evaluation in debugging mode, how can one call these to-be-added atom commands if there are no buttons at all for them?

> [@pfitzseb](#):
>
> Hm, I suppose you can make a case for both behaviours. I kind of like not having that many editors open while debugging…

Fair enough. Then is it possible to have a toggle for users to adopt the way they like?

> [@pfitzseb](#):
>
> That’s how it’s handled already – you can only evaluate in the REPL, not use any ASTInterpreter commands.

Yes, saw this after updating everything. It’s just **amazing**!!

One more thought - Currently, to ‘enter’ a line, I have to run the file once first and then add the `@enter` macro manual at the beginning of the line. If this is a line where I have a variable set by the value on the right-hand side of an equal sign, I also have to remove the variable on the left-hand side as well as the equal sign. These significantly drag the speed of the debugging work and it is very very error-prone as I have to modify the code unnecessarily. I really wish that debugging can start as simply as in Matlab - one can start debugging from the first line of the code or the line where the cursor is by just clicking one button. In gdb, this can be done by `run`. It’s just so convenient. I know this is beyond just the juno wrapper for the debugger, but I wonder if there is any reason preventing Julia from doing that.

Thanks a lot, buddy!!

---

<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:** [February 7, 2018, 11:53am UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/73 "2018-02-07T11:53:54Z")

</div>

> [@chobbes](#):
>
> Thanks for the hint!! I have updated Atom.jl. A naive question - I thought Atom is independent from Julia and serves as the IDE for using Julia. Why am I able to update Atom via Julia? It’s kind of counter-intuitive.

You can’t – Atom.jl is a Julia package that provides core functionality for communicating with Atom the editor. 🙂

> [@chobbes](#):
>
> Here is exactly what I meant. I’m debugging something absolutely bug-free, at least bug-free with command-line-based debugger. It’s very hard to offer a MWE for this. But the code for generating these errors is extremely simple, just three lines of code, using a few packages. I can furnish my code (by filing a ticket on github) if you think it might be useful.

Thanks for the screenshot – that bug should be fixed on master.

> [@chobbes](#):
>
> I see what you mean and you’re probably right. Just curious - If the REPL is used only for evaluation in debugging mode, how can one call these to-be-added atom commands if there are no buttons at all for them?

Open the command pane (`Ctrl-Shift-P`) and type in the command.

---

<div class="post-metadata">

**Author:** ![chobbes](https://avatars.discourse-cdn.com/v4/letter/c/848f3c/32.png) [@chobbes](https://discourse.julialang.org/u/chobbes)\
**Post date:** [February 7, 2018, 12:48pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/74 "2018-02-07T12:48:53Z")

</div>

> [@pfitzseb](#):
>
> Thanks for the screenshot – that bug should be fixed on master.

So, are you recommending that I check out by `Pkg.checkout('Atom.jl')`? Or shall I wait until a new version is tagged?

> [@pfitzseb](#):
>
> Open the command pance (Ctrl-Shift-P) and type in the command.

That’s even more complicated. 😕

> [@chobbes](#):
>
> Fair enough. Then is it possible to have a toggle for users to adopt the way they like?

So, you don’t buy this idea, do you? Thanks!!

---

<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:** [February 7, 2018, 1:12pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/75 "2018-02-07T13:12:46Z")

</div>

> [@chobbes](#):
>
> So, are you recommending that I check out by Pkg.checkout(‘Atom.jl’)? Or shall I wait until a new version is tagged?

Depends on how annyoing those warnings are for you. New version of Atom.jl might be out by the end of this week, but not sure yet.

> [@chobbes](#):
>
> That’s even more complicated. 😕

Well, you can also assign a keybinding to it then 🙂

> [@chobbes](#):
>
> > Fair enough. Then is it possible to have a toggle for users to adopt the way they like?
> 
> So, you don’t buy this idea, do you? Thanks!!

Hm. We could have that, I suppose. You can also work around it by double-clicking the editor’s tab – that’ll switch it from a “pending” editor (indicated by italics) to a normal one, which will cause the debugger to open a new pending editor if you step to another file.

> [@chobbes](#):
>
> One more thought - Currently, to ‘enter’ a line, I have to run the file once first and then add the @enter macro manual at the beginning of the line. If this is a line where I have a variable set by the value on the right-hand side of an equal sign, I also have to remove the variable on the left-hand side as well as the equal sign. These significantly drag the speed of the debugging work and it is very very error-prone as I have to modify the code unnecessarily. I really wish that debugging can start as simply as in Matlab - one can start debugging from the first line of the code or the line where the cursor is by just clicking one button. In gdb, this can be done by run. It’s just so convenient. I know this is beyond just the juno wrapper for the debugger, but I wonder if there is any reason preventing Julia from doing that.

That’s a good idea. Wanna open an issue at Juno.jl so we can discuss this further?

---

<div class="post-metadata">

**Author:** ![wrgr](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/wrgr/32/2796_2.png) [@wrgr](https://discourse.julialang.org/u/wrgr)\
**Post date:** [February 7, 2018, 7:26pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/76 "2018-02-07T19:26:02Z")

</div>

Thank you for the answers! I agree that at the moment it looks like the most sensible solution.

---

<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:** [February 8, 2018, 1:01am UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/77 "2018-02-08T01:01:00Z")

</div>

OK, so now I get the terminal to run git bash. How about the REPL: could that run julia in a bash? That would enable all the nice Unix commands (ls, pwd, …) from within the Julia prompt…

---

<div class="post-metadata">

**Author:** ![j2b2](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/j2b2/32/3387_2.png) [@j2b2](https://discourse.julialang.org/u/j2b2)\
**Post date:** [February 14, 2018, 2:00pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/78 "2018-02-14T14:00:32Z")

</div>

Many thanks for your work, I like Juno !

A stupid question: how to scroll through the displayed results on the new console ? The right scrollbar is very thin and doesn’t seem to work. I can scroll only while selecting the text displayed, a pair of keys for scrolling (up, down) would be nice.

---

<div class="post-metadata">

**Author:** ![rveltz](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rveltz/32/2707_2.png) [@rveltz](https://discourse.julialang.org/u/rveltz)\
**Post date:** [February 14, 2018, 7:36pm UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/79 "2018-02-14T19:36:00Z")

</div>

Thanks for the new Juno, it is truly an invaluable addition to the Julia set of tools.

Since the last update, plotlyjs does not resize in the plot plane anymore. Should I post the issue here or on PlotlyJS.jl?

---

<div class="post-metadata">

**Author:** ![kevbonham](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kevbonham/32/216165_2.png) [@kevbonham](https://discourse.julialang.org/u/kevbonham)\
**Post date:** [February 15, 2018, 1:59am UTC](https://discourse.julialang.org/t/ann-juno-0-6-7/8622/80 "2018-02-15T01:59:37Z")

</div>

Minor gripe: the window for the REPL is called “REPL,” but everything else refers to it as “terminal.”

[Previous page](https://discourse.julialang.org/t/ann-juno-0-6-7/8622.md?page=3)

[Next page](https://discourse.julialang.org/t/ann-juno-0-6-7/8622.md?page=5)
