;; All available settings and its default values
;; Check the settings documentation section for more details of each one.
{:source-paths #{"src" "test"} ;; auto-resolved for deps.edn, project.clj or bb.edn projects
 :test-locations-regex #{"_test\\.clj[a-z]?$"} ;; Patterns matched with clojure.core/re-find
 :source-aliases #{:dev :test}
 :project-specs [] ;; Check the default at clojure-lsp.classpath/default-project-specs
 :source-paths-ignore-regex ["target.*"]
 :paths-ignore-regex []
 :lint-project-files-after-startup? true
 :notify-references-on-file-change true
 :compute-external-file-changes true
 :diagnostics {:range-type :full}
 :linters {:clj-kondo {:level :on
                       :report-duplicates true
                       :ns-exclude-regex ""}
           :clj-depend {:level :info} ;; Only if any clj-depend config is found
           :clojure-lsp/unused-public-var {:level :info}
           :clojure-lsp/different-aliases {:level :off}
           :clojure-lsp/cyclic-dependencies {:level :off
                                              :exclude-namespaces #{}}
           :custom {}}
 :clean {:automatically-after-ns-refactor true
         :ns-inner-blocks-indentation :next-line
         :ns-import-classes-indentation :next-line
         :sort {:ns true
                :require true
                :import true
                :import-classes {:classes-per-line 3} ;; -1 for all in single line
                :refer {:max-line-length 80}}}
 :hover {:hide-file-location? false
         :hide-signature-call? false
         :arity-on-same-line? false
         :clojuredocs true}
 :completion {:additional-edits-warning-text nil
              :analysis-type :fast-but-stale}
 :add-missing {:add-to-rcf :ask}
 :java {:jdk-source-uri "https://raw.githubusercontent.com/clojure-lsp/jdk-source/main/openjdk-19/reduced/source.zip" ; "file:///usr/lib/jvm/java-17-openjdk/lib/src.zip"
        :home-path nil ;; jdk-source-uri takes precedence
        :download-jdk-source? false
        :decompile-jar-as-project? true}
 :code-lens {:segregate-test-references true}
 :semantic-tokens? true
 :use-metadata-for-privacy? false
 :auto-add-ns-to-new-files? true
 :keep-parens-when-threading? false
 :document-formatting? true
 :document-range-formatting? true
 :dependency-scheme "zipfile"
 :text-document-sync-kind :full
 :cljfmt-config-path ".cljfmt.edn"
 :cljfmt {}
 :stubs {:generation {:namespaces #{}
                      :output-dir ".lsp/.cache/stubs"
                      :java-command "java"}
         :extra-dirs []}
 :additional-snippets []
 :classpath-config-paths []
 :api {:exit-on-errors? true}
 :show-docs-arity-on-same-line? false ; deprecated, will be removed soon, use :hover :arity-on-same-line?
 :lens-segregate-test-references true ; deprecated, will be removed soon, use :code-lens :segregate-test-references instead.
 :copy-kondo-configs? true
 :kondo-config-dir nil ; defaults to <project-root-uri>/.clj-kondo
 :analysis {:keywords {:definitions true
                       :usages true}
            :java {:class-definitions true
                   :member-definitions true}
            :symbols true}
 :otlp {:enabled false
        :config {}} ;; map with properties to configure opentelemetry log via timbre.
 :cache-path ".lsp/.cache"
 :log-path "/tmp/clojure-lsp.*.out"}
