Remove warning indicating that LanguageServer.jl is not working in Julia version 1.0, because it was updated and that problem was fixed.
5.8 KiB
julia layer
Description
This layer adds support for Julia to Spacemacs.
Features:
- Syntax highlighting
- Repl support
- Linting
- Completion
- Jump-to-definition
- Documentation on hover
Install
To use this configuration layer, add it to your ~/.spacemacs
. You will need to
add julia
to the existing dotspacemacs-configuration-layers
list in this
file.
LSP
This layer can be used with LanguageServer.jl and Emacs lsp-mode to provide richer, IDE-like capabilities. To use this layer with lsp, you must do the following:
LanguageServer.jl
should be configured automatically, if not, see the documentation oflsp-julia
.- define the layer variable
julia-backend
tolsp
in your dotfile
To enable language server functionality with this layer, follow the instructions for installation, and then install this layer with:
(setq-default
dotspacemacs-configuration-layers
'(
(julia :variables julia-mode-enable-lsp t)))
LanguageServer.jl
tends to have a very long startup time. In the worst case,
lsp-mode
might give up on the language server before its started, but
regardless usage of lsp-mode
with Julia can cause long delays when first
opening files.
Options
While julia-mode
is perfectly usable without configuration or other packages,
you can choose to replace the default functionality of using julia-repl as the
layer's interactive REPL with the ess REPL and other functionality that comes
with it. To do so, install this layer with:
(setq-default
dotspacemacs-configuration-layers
'(
(julia :variables julia-mode-enable-ess t)))
Key bindings
Key binding | Description |
---|---|
TAB |
Expands latex macro (e.g. \delta ). |
SPC m l |
Expands latex macro (e.g. \delta ). |
SPC m = = |
Indent line |
SPC m = d |
Deindent line |
SPC m = q |
Indent Sexp |
SPC m ' |
Brings up Julia Repl (starts new one or focuses existing). |
SPC m r |
Brings up Julia Repl (starts new one or focuses existing). |
SPC m h h |
Calls @doc macro on symbol under cursor. |
SPC m s a |
Activate the project of the current buffer (call with prefix to activate home project) |
SPC m s d |
cd into the buffer directory |
SPC m s i |
Brings up Julia Repl (starts new one or focuses existing). |
SPC m s b |
Sends buffer to REPL. |
SPC m s t |
Sends buffer to REPL via Revise.includet . |
SPC m s l |
Sends line to REPL. |
SPC m s s |
Sends line to REPL. |
SPC m s r |
Sends region or line to REPL. |
SPC m s m |
Call @macroexpand on an expression |
SPC m s e |
Call @edit on an expression |
SPC m s v |
Prompt and set a Julia REPL inferior buffer name for the current buffer |
SPC m e a |
Activate the project of the current buffer (call with prefix to activate home project) |
SPC m e d |
cd into the buffer directory |
SPC m e i |
Brings up Julia Repl (starts new one or focuses existing). |
SPC m e b |
Sends buffer to REPL. |
SPC m e t |
Sends buffer to REPL via Revise.includet . |
SPC m e l |
Sends line to REPL. |
SPC m e s |
Sends line to REPL. |
SPC m e r |
Sends region or line to REPL. |
SPC m e m |
Call @macroexpand on an expression |
SPC m e e |
Call @edit on an expression |
SPC m e v |
Prompt and set a Julia REPL inferior buffer name for the current buffer |