| 12345678910111213141516171819202122232425262728293031323334353637 | # Load LanguageServer from the project next to this file## Save old load pathold_load_path = copy(LOAD_PATH)push!(empty!(LOAD_PATH), @__DIR__)## Load packagesusing LanguageServer, SymbolServer## Restore old load pathappend!(empty!(LOAD_PATH), old_load_path)# Figure out the active project## This configuration is a good defaultproject_path = let    dirname(something(        ## 1. Finds an explicitly set project (JULIA_PROJECT)        Base.load_path_expand((            p = get(ENV, "JULIA_PROJECT", nothing);            p === nothing ? nothing : isempty(p) ? nothing : p        )),        ## 2. Look for a Project.toml file in the current working directory,        ##    or parent directories, with $HOME as an upper boundary        Base.current_project(),        ## 3. First entry in the load path        get(Base.load_path(), 1, nothing),        ## 4. Fallback to default global environment,        ##    this is more or less unreachable        Base.load_path_expand("@v#.#"),    ))end# Depot path for the server to index (empty uses default).depot_path = get(ENV, "JULIA_DEPOT_PATH", "")# Start the server@info "Running julia language server" VERSION project_path depot_pathserver = LanguageServer.LanguageServerInstance(stdin, stdout, project_path, depot_path)server.runlinter = truerun(server)
 |