浏览代码

Remove LSP and move to eglot #emacs

This is a personal experiment to see if eglot is faster while being a
much simpler interface to lsp. For starters, there's only a single
module to install. Everything else comes with sane defaults and a simple
way to override which LSP to use.
Colin Powell 5 年之前
父节点
当前提交
d4c8dc4c4c
共有 2 个文件被更改,包括 10 次插入7 次删除
  1. 7 7
      emacs/.config/doom/init.el
  2. 3 0
      emacs/.config/doom/packages.el

+ 7 - 7
emacs/.config/doom/init.el

@@ -72,7 +72,7 @@
        gist              ; interacting with github gists
        gist              ; interacting with github gists
        (lookup           ; helps you navigate your code and documentation
        (lookup           ; helps you navigate your code and documentation
         +docsets)        ; ...or in Dash docsets locally
         +docsets)        ; ...or in Dash docsets locally
-       lsp
+       ;;lsp
        ;;macos             ; MacOS-specific commands
        ;;macos             ; MacOS-specific commands
        magit             ; a git porcelain for Emacs
        magit             ; a git porcelain for Emacs
        make              ; run make tasks from Emacs
        make              ; run make tasks from Emacs
@@ -96,17 +96,17 @@
        ;;csharp            ; unity, .NET, and mono shenanigans
        ;;csharp            ; unity, .NET, and mono shenanigans
        data              ; config/data formats
        data              ; config/data formats
        ;;erlang            ; an elegant language for a more civilized age
        ;;erlang            ; an elegant language for a more civilized age
-       (elixir +lsp)            ; erlang done right
+       (elixir)            ; erlang done right
        elm               ; care for a cup of TEA?
        elm               ; care for a cup of TEA?
        emacs-lisp        ; drown in parentheses
        emacs-lisp        ; drown in parentheses
        ;;ess               ; emacs speaks statistics
        ;;ess               ; emacs speaks statistics
        ;;fsharp           ; ML stands for Microsoft's Language
        ;;fsharp           ; ML stands for Microsoft's Language
-       (go +lsp)                ; the hipster dialect
+       (go)                ; the hipster dialect
        ;;(haskell +intero) ; a language that's lazier than I am
        ;;(haskell +intero) ; a language that's lazier than I am
        ;;hy                ; readability of scheme w/ speed of python
        ;;hy                ; readability of scheme w/ speed of python
        ;;idris             ;
        ;;idris             ;
        ;;(java +meghanada) ; the poster child for carpal tunnel syndrome
        ;;(java +meghanada) ; the poster child for carpal tunnel syndrome
-       (javascript +lsp)        ; all(hope(abandon(ye(who(enter(here))))))
+       (javascript)        ; all(hope(abandon(ye(who(enter(here))))))
        julia             ; a better, faster MATLAB
        julia             ; a better, faster MATLAB
        ;;kotlin            ; a better, slicker Java(Script)
        ;;kotlin            ; a better, slicker Java(Script)
        ;;latex             ; writing papers in Emacs has never been so fun
        ;;latex             ; writing papers in Emacs has never been so fun
@@ -126,12 +126,12 @@
        ;;php               ; perl's insecure younger brother
        ;;php               ; perl's insecure younger brother
        plantuml          ; diagrams for confusing people more
        plantuml          ; diagrams for confusing people more
        ;;purescript        ; javascript, but functional
        ;;purescript        ; javascript, but functional
-       (python +lsp)       ; beautiful is better than ugly
+       (python)       ; beautiful is better than ugly
        ;;qt                ; the 'cutest' gui framework ever
        ;;qt                ; the 'cutest' gui framework ever
        racket            ; a DSL for DSLs
        racket            ; a DSL for DSLs
        rest              ; Emacs as a REST client
        rest              ; Emacs as a REST client
-       (ruby +lsp)         ; 1.step do {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
-       (rust +lsp)         ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
+       (ruby)         ; 1.step do {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
+       (rust)         ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
        ;;scala             ; java, but good
        ;;scala             ; java, but good
        scheme            ; a fully conniving family of lisps
        scheme            ; a fully conniving family of lisps
        (sh +fish)          ; she sells (ba|z|fi)sh shells on the C xor
        (sh +fish)          ; she sells (ba|z|fi)sh shells on the C xor

+ 3 - 0
emacs/.config/doom/packages.el

@@ -16,6 +16,9 @@
   :recipe (:host github
   :recipe (:host github
            :repo "redguardtoo/evil-matchit"))
            :repo "redguardtoo/evil-matchit"))
 
 
+;; eglot instead of lsp
+(package! eglot)
+
 ;; python stuffs
 ;; python stuffs
 (package! w3m)
 (package! w3m)
 (package! blacken)
 (package! blacken)