10

What is a recomended way for making emacs as julia code editor? The things which I would like to have are:

  • autocomplete
  • julia shell in emacs with abbility to send the code from buffer
  • debugging
Jānis Erdmanis
  • 393
  • 3
  • 11
  • I do not know any julia-specific tool for Emacs, but as for the "send code from buffer to shell" part, I tend to use [`isend`](https://github.com/ffevotte/isend-mode.el), which is completely language-agnostic. *(disclaimer: I'm the author of `isend`)* – François Févotte Sep 08 '15 at 12:20
  • 3
    Have you tried a web search for "julia emacs"? Have you tried the julia-mode that is distributed in the contrib directory of the Julia language? – Stefan Sep 08 '15 at 13:53
  • I have tried to install ESS but it didn't compile under Ubuntu 15.04 – Jānis Erdmanis Sep 08 '15 at 14:55
  • Also I installed this one https://github.com/JuliaLang/julia/blob/master/contrib/julia-mode.el but I didn't get autocompletetion – Jānis Erdmanis Sep 08 '15 at 14:57

3 Answers3

6

The ESS development environment seems to support julia out of the box.

According to the documentation, it supports most of the features you mentioned:

  • completion
  • code evaluation
  • error navigation (there doesn't seem to be a full debugger yet, though)
François Févotte
  • 5,917
  • 1
  • 24
  • 37
  • ESS does not compile for me – Jānis Erdmanis Sep 08 '15 at 15:01
  • The error for `make` is: Cannot open load file: no such file or directory, julia-mode Makefile:117: recipe for target 'ess-custom.elc' failed make[1]: *** [ess-custom.elc] Error 255 make[1]: Leaving directory '/home/akels/.emacs.d/ESS/lisp' Makefile:10: recipe for target 'all' failed make: *** [all] Error 2 – Jānis Erdmanis Sep 08 '15 at 15:03
  • 1
    @JānisErdmanis Seems like until recently Julia mode wasn't packaged with the rest of ESS. If you got the distribution from, say, downloading a Tar file from ESS site, then it may not be there. Try pulling it from Github. – wvxvw Sep 08 '15 at 16:34
  • OK downloading latest release from https://github.com/emacs-ess/ESS/releases did solve autocompletition issues. However accesing the documentation for julia functions does not seem to work ;( – Jānis Erdmanis Sep 08 '15 at 18:28
  • 2
    I had forgotten that I had installed julia development version v4.0. With version 3.11 ESS works out of the box :)) – Jānis Erdmanis Sep 08 '15 at 19:01
  • FYI, according to https://github.com/emacs-ess/ESS/issues/715, emacs/ess and julia *on windows* does not work, attributing the problem to something in Julia. The workarounds suggest using `*shell* julia` and/or not-ESS, using `run-julia` from the `julia-mode` package. – r2evans Nov 02 '19 at 16:36
4

I am currently using these 2 Emacs packages:

everything is detailed in the julia-repl author's blog post.

It is the best I have found so far. I am quite happy with it and I prefer it to the previously cited ESS-Julia solution.

I still miss an auto-complete solution for Julia, though.

Picaud Vincent
  • 1,158
  • 8
  • 20
1

The latest project in this field (as of 2020) is Julia snail, which aims at providing development environment and REPL interaction package for Julia in the spirit of Common Lisp’s SLIME and Clojure’s CIDER.

It currently supports:

  • REPL display and interaction
  • cross-referencing
  • auto-completion
François Févotte
  • 5,917
  • 1
  • 24
  • 37