200ok-ch/counsel-jq@153d70b -> 200ok-ch/counsel-jq@8cadd2e Andersbakken/rtags@63f18ac -> Andersbakken/rtags@65113e2 Groovy-Emacs-Modes/groovy-emacs-modes@26da902 -> Groovy-Emacs-Modes/groovy-emacs-modes@99eaf70 NixOS/nix-mode@0023fc5 -> NixOS/nix-mode@3cca5b6 ProofGeneral/PG@f0f0476 -> ProofGeneral/PG@bc86736 Raku/raku-mode@8a6e17f -> Raku/raku-mode@7496ad3 StanfordLegion/terra-mode@1e5e824 -> StanfordLegion/terra-mode@eab9e59 TheBB/company-reftex@291c283 -> TheBB/company-reftex@42eb98c agda/agda@ecb9323 -> agda/agda@af9c4b9 ananthakumaran/tide@ad6fa78 -> ananthakumaran/tide@ccff099 asok/projectile-rails@f1fe6e8 -> asok/projectile-rails@6a18ada beancount/beancount-mode@3c04745 -> beancount/beancount-mode@02fe03e brotzeit/rustic@ed68fd3 -> brotzeit/rustic@6ca73bb cdominik/cdlatex@adf96ba -> cdominik/cdlatex@614a8d9 clojure-emacs/clojure-mode@a14671e -> clojure-emacs/clojure-mode@3e426b3 cython/cython@9decfca -> cython/cython@fae33cf dgutov/robe@126650a -> dgutov/robe@e1304d1 diml/utop@711c246 -> diml/utop@c87b8b2 dominikh/go-mode.el@49a5380 -> dominikh/go-mode.el@3497434 elixir-editors/emacs-elixir@0212b06 -> elixir-editors/emacs-elixir@6bbc1e5 emacs-csharp/csharp-mode@f977800 -> emacs-csharp/csharp-mode@093f0f2 emacs-ess/ESS@126d344 -> emacs-ess/ESS@4fefd0f emacs-lsp/lsp-dart@f3b70ec -> emacs-lsp/lsp-dart@01d89d4 emacs-lsp/lsp-haskell@7efbef3 -> emacs-lsp/lsp-haskell@eb37ac4 emacs-lsp/lsp-java@9685334 -> emacs-lsp/lsp-java@b66a075 emacs-lsp/lsp-metals@51a89c1 -> emacs-lsp/lsp-metals@9f82ebe emacs-lsp/lsp-pyright@65fb141 -> emacs-lsp/lsp-pyright@71a7976 emacs-lsp/lsp-sourcekit@aafa987 -> emacs-lsp/lsp-sourcekit@ae4aa87 emacs-php/php-mode@a2bca9b -> emacs-php/php-mode@cbf2723 emacs-php/phpactor.el@80788a8 -> emacs-php/phpactor.el@272217f emacs-straight/auctex@1472d1d -> emacs-straight/auctex@ea410dc erlang/otp@94c9738 -> erlang/otp@645ea81 ethereum/emacs-solidity@b4fd719 -> ethereum/emacs-solidity@5f6ef31 factor/factor@5bfeab6 -> factor/factor@b989a86 fsharp/emacs-fsharp-mode@78898a1 -> fsharp/emacs-fsharp-mode@93b1fbc godotengine/emacs-gdscript-mode@16c631c -> godotengine/emacs-gdscript-mode@b7bfa6a greghendershott/racket-mode@5115c47 -> greghendershott/racket-mode@7f12cb1 haskell/haskell-mode@1baa12a -> haskell/haskell-mode@98ba392 hhvm/hack-mode@847fd91 -> hhvm/hack-mode@f9315be hlissner/emacs-pug-mode@685fd34 -> hlissner/emacs-pug-mode@d080904 hvesalai/emacs-sbt-mode@0bdc36b -> hvesalai/emacs-sbt-mode@e29464a idris-hackers/idris-mode@80aabd2 -> idris-hackers/idris-mode@f52ad0b immerrr/lua-mode@2d9a468 -> immerrr/lua-mode@2bd9077 iyefrat/evil-tex@5f0d6fb -> iyefrat/evil-tex@87445d4 jcollard/elm-mode@e9fcf9c -> jcollard/elm-mode@f2e2d00 joaotavora/sly@5966d68 -> joaotavora/sly@41f4d65 jorgenschaefer/pyvenv@9b3678b -> jorgenschaefer/pyvenv@045ff94 jrblevin/markdown-mode@ac9ea26 -> jrblevin/markdown-mode@359347b jwiegley/emacs-async@d7e7f79 -> jwiegley/emacs-async@9a8cd0c jyp/attrap@778382e -> jyp/attrap@a5bc695 leanprover/lean-mode@5c50338 -> leanprover/lean-mode@bf32bb9 ledger/ledger-mode@32fef09 -> ledger/ledger-mode@19b84dc nathankot/company-sourcekit@abf9bc5 -> nathankot/company-sourcekit@a1860ad necaris/conda.el@dce431b -> necaris/conda.el@6db0720 non-Jedi/eglot-jl@84cff9d -> non-Jedi/eglot-jl@49f170e nonsequitur/inf-ruby@c6990a6 -> nonsequitur/inf-ruby@03dd9c9 ocaml-ppx/ocamlformat@0ad8d0a -> ocaml-ppx/ocamlformat@5dd6574 ocaml/dune@65e04ba -> ocaml/dune@75ecfe3 ocaml/merlin@635923d -> ocaml/merlin@5731826 ocaml/tuareg@37a6730 -> ocaml/tuareg@b59c422 pashky/restclient.el@abc307b -> pashky/restclient.el@2cc1fd3 polymode/polymode@b3871e9 -> polymode/polymode@7d1f822 pythonic-emacs/anaconda-mode@344727c -> pythonic-emacs/anaconda-mode@4f367c7 seagle0128/grip-mode@2855205 -> seagle0128/grip-mode@c0ca789 sebasmonia/sharper@d610b83 -> sebasmonia/sharper@08277b6 swift-emacs/swift-mode@ad12a30 -> swift-emacs/swift-mode@1b47a09 technomancy/fennel-mode@ba14a7d -> technomancy/fennel-mode@a908db8 tpapp/julia-repl@7ce38a9 -> tpapp/julia-repl@79e686e ziglang/zig-mode@2d0eb23 -> ziglang/zig-mode@0babe7e Closes #5221
lang/julia
Description
This module adds support for the Julia language to Doom Emacs.
- Syntax highlighting and latex symbols from
julia-mode - REPL integration from
julia-repl - Code completion and syntax checking, requires
:tools lspand+lsp
Module Flags
+lspEnable LSP server support.
Plugins
- julia-mode
- julia-repl
-
+lspand:tools lsp -
+lspand:tools lsp +eglot
Prerequisites
This module requires julia and an language server if +lsp is enabled.
Language Server
+lsp requires LanguageServer.jl and SymbolServer.jl. The lsp-julia and
eglot-jl packages both come bundled with their own versions of these servers,
which is used by default. If you're happy with that, no further configuration is
necessary.
However, to use your own installation you will need to install then configure them. To install them, execute these commands in a Julia REPL:
using Pkg
Pkg.add("LanguageServer")
Pkg.add("SymbolServer")
Then configure lsp-julia or eglot-jl depending on whether you have enabled
:tools lsp or :tools (lsp +eglot), respectively:
lsp-julia
To instruct lsp-julia not to use the built-in package:
;; ~/.doom.d/config.el
(setq lsp-julia-package-dir nil)
To find your installation of LanguageServer.jl, eglot-jl needs to know the
environment in which it is installed. This is set to v1.0 by default as it is
the current LTS:
(setq lsp-julia-default-environment "~/.julia/environments/v1.0")
eglot-jl
To find your installation of LanguageServer.jl, eglot-jl must know the
environment in which it is installed. This is set to v1.0 by default as it is
the current LTS:
;; ~/.doom.d/config.el
(setq eglot-jl-language-server-project "~/.julia/environments/v1.0")
But to let eglot-jl use the environment bundled with it, set it to
eglot-jl-base instead:
;; ~/.doom.d/config.el
(after! eglot-jl
(setq eglot-jl-language-server-project eglot-jl-base))
Features
Language Server
+lsp adds code completion, syntax checking, formatting and other lsp-mode or
eglot features. It requires LanguageServer.jl, the installation of which is
described above.
Configuration
Change the default environment for the Julia language server
lsp-julia requires a variable be set for the Julia environment. This is set to
v1.0 by default as it is the current LTS.
;; ~/.doom.d/config.el
(setq lsp-julia-default-environment "~/.julia/environments/v1.0")