fix: nvim: julials add generation of precompile head & add readme
This commit is contained in:
parent
9e255a4477
commit
88961e0879
2 changed files with 42 additions and 1 deletions
|
@ -1,6 +1,7 @@
|
|||
# Add dependencies to Language Server project
|
||||
# TODO: automatically list up necessary packages
|
||||
using Pkg
|
||||
@info "project path" Pkg.project().path
|
||||
|
||||
# add LanguageServer.jl
|
||||
Pkg.add("LanguageServer")
|
||||
|
@ -11,5 +12,18 @@ pkg_ls_deps = Pkg.dependencies()[pkg_ls].dependencies |> keys
|
|||
foreach(Pkg.add, pkg_ls_deps)
|
||||
|
||||
# add extra dependencies
|
||||
foreach(Pkg.add, ["Logging", "Sockets", "DataStructures"]) # these packages are manually collected
|
||||
# these packages are manually collected
|
||||
pkg_extra = ["Logging", "Sockets", "DataStructures", "Tar", "ArgTools"]
|
||||
foreach(Pkg.add, pkg_extra)
|
||||
@info "dependency added"
|
||||
|
||||
# save pkgs to be used for precompile functions with traced script
|
||||
out_path = joinpath(Pkg.project().path |> dirname, "precompile_exec_head.jl")
|
||||
@info "writing $(out_path)"
|
||||
open(out_path, "w") do io
|
||||
println(io, "using LanguageServer")
|
||||
println(io, "using " * join(pkg_ls_deps, ", "))
|
||||
println(io, "using " * join(pkg_extra, ", "))
|
||||
end
|
||||
@info "finished writing precompile head file"
|
||||
|
||||
|
|
27
bin/neovim/readme.md
Normal file
27
bin/neovim/readme.md
Normal file
|
@ -0,0 +1,27 @@
|
|||
# How to manage Julia Language Server
|
||||
This config use sysimage built with PackageCompiler to make language server startup faster.
|
||||
Scripts in this directory is for management of sysimage.
|
||||
|
||||
# description
|
||||
all related process is done in project at `~/.julia/environments/nvim-lspconfig/`.
|
||||
|
||||
## startup
|
||||
```sh
|
||||
$ ./setup_julials.sh
|
||||
```
|
||||
which executes `add_dependencies.jl` internally.
|
||||
|
||||
## update
|
||||
```sh
|
||||
$ ./update_julials.sh
|
||||
```
|
||||
which updates project, compile sysimage, then do precompile.
|
||||
|
||||
# effect
|
||||
Start up got about x3 - x4 faster.
|
||||
It still takes some time to load packages though.
|
||||
|
||||
# TODO
|
||||
- [ ] Not sure all necessary packages are listed in add_dependencies.jl
|
||||
- [ ] Maybe it's better to set up different sysimages for each projects
|
||||
|
Loading…
Reference in a new issue