emacs-lsp-proxy 0.5.5 → 0.5.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -22
- package/package.json +6 -6
package/README.md
CHANGED
|
@@ -60,18 +60,30 @@ You can download the prebuilt binary from [releases](https://github.com/jadestro
|
|
|
60
60
|
(add-hook 'typescript-ts-mode-hook #'lsp-proxy-mode))
|
|
61
61
|
```
|
|
62
62
|
|
|
63
|
+
### DOOM Emacs
|
|
64
|
+
- Recommend
|
|
65
|
+
``` elisp
|
|
66
|
+
(package! lsp-proxy :recipe (:host github :repo "jadestrong/lsp-proxy"
|
|
67
|
+
:files ("lsp-proxy.el"))
|
|
68
|
+
```
|
|
69
|
+
- Manually
|
|
63
70
|
```elisp
|
|
64
|
-
|
|
71
|
+
|
|
65
72
|
(package! lsp-proxy :recipe (:host github :repo "jadestrong/lsp-proxy"
|
|
66
73
|
:files ("lsp-proxy.el" "emacs-lsp-proxy")
|
|
67
74
|
:pre-build (("cargo" "build" "--release") ("cp" "./target/release/emacs-lsp-proxy" "./"))))
|
|
75
|
+
```
|
|
68
76
|
|
|
69
|
-
|
|
77
|
+
``` elisp
|
|
78
|
+
(use-package! lsp-proxy
|
|
79
|
+
:config
|
|
80
|
+
(set-lookup-handlers! 'lsp-proxy-mode
|
|
70
81
|
:definition '(lsp-proxy-find-definition :async t)
|
|
71
82
|
:references '(lsp-proxy-find-references :async t)
|
|
72
83
|
:implementations '(lsp-proxy-find-implementations :async t)
|
|
73
84
|
:type-definition '(lsp-proxy-find-type-definition :async t)
|
|
74
|
-
:documentation '(lsp-proxy-describe-thing-at-point :async t))
|
|
85
|
+
:documentation '(lsp-proxy-describe-thing-at-point :async t)))
|
|
86
|
+
|
|
75
87
|
```
|
|
76
88
|
|
|
77
89
|
## Add a new language
|
|
@@ -102,41 +114,40 @@ language-servers = ["vls"]
|
|
|
102
114
|
|
|
103
115
|
- Vue3
|
|
104
116
|
```sh
|
|
105
|
-
yarn global add @vue/language-server @vue/typescript-plugin
|
|
117
|
+
yarn global add @vue/language-server @vue/typescript-plugin typescript
|
|
106
118
|
```
|
|
107
119
|
|
|
108
120
|
```toml
|
|
121
|
+
# typescript-language-server
|
|
109
122
|
[language-server.typescript-language-server]
|
|
110
123
|
config.plugins = [
|
|
111
|
-
{ name = "@vue/typescript-plugin", location = "${
|
|
124
|
+
{ name = "@vue/typescript-plugin", location = "${YOUR-PATH}/node_modules/@vue/typescript-plugin", languages = ["vue"], enableForWorkspaceTypeScriptVersions = true, configNamespace = "typescript" }
|
|
125
|
+
]
|
|
126
|
+
|
|
127
|
+
# or vtsls
|
|
128
|
+
[language-server.vtsls.config.vtsls.tsserver]
|
|
129
|
+
globalPlugins = [
|
|
130
|
+
{ name = "@vue/typescript-plugin", location = "${YOUR-PATH}/node_modules/@vue/typescript-plugin", languages = ["vue"], enableForWorkspaceTypeScriptVersions = true, configNamespace = "typescript" }
|
|
112
131
|
]
|
|
113
132
|
|
|
114
133
|
[language-server.vue-language-server]
|
|
115
134
|
command = "vue-language-server"
|
|
116
135
|
args = ["--stdio"]
|
|
117
|
-
config.typescript = { tsdk = "${your-path}/node_modules/typescript/lib" }
|
|
118
|
-
config.vue = { hybridMode = false }
|
|
119
136
|
|
|
120
137
|
[[language]]
|
|
121
138
|
name = "vue"
|
|
122
139
|
roots = ["package.json"]
|
|
123
140
|
language-id = "vue"
|
|
124
|
-
file-types = ["vue"
|
|
125
|
-
language-servers = ["vue-language-server", "typescript-language-server"]
|
|
126
|
-
|
|
127
|
-
# Override the build-in config. The built-in configuration uses vtsls, but it seems incompatible with vue-language-server. It could also be that my configuration is incorrect.
|
|
128
|
-
# Others, such as JavaScript and TSX, can be added as needed.
|
|
129
|
-
[[language]]
|
|
130
|
-
name = "typescript"
|
|
131
|
-
language-id = "typescript"
|
|
132
|
-
file-types = ["ts", "mts", "cts"]
|
|
133
|
-
roots = ["package.json"]
|
|
141
|
+
file-types = ["vue"]
|
|
134
142
|
language-servers = [
|
|
135
|
-
{ name = "
|
|
136
|
-
|
|
137
|
-
] },
|
|
138
|
-
{ name = "eslint", support-workspace = true, config-files = [".eslintrc.js", ".eslintrc.cjs", ".eslintrc.yaml", ".eslintrc.yml", ".eslintrc", ".eslintrc.json", , "eslint.config.js", "eslint.config.mjs", "eslint.config.cjs", "eslint.config.ts", "eslint.config.mts", "eslint.config.cts"] },
|
|
143
|
+
{ name = "vue-language-server", except-features = ["goto-definition", "goto-implementation", "goto-type-definition", "goto-declaration", "goto-reference"] },
|
|
144
|
+
"vtsls"
|
|
139
145
|
]
|
|
146
|
+
# or
|
|
147
|
+
# language-servers = [
|
|
148
|
+
# { name = "vue-language-server", except-features = ["goto-definition", "goto-implementation", "goto-type-definition", "goto-declaration", "goto-reference"] },
|
|
149
|
+
# "typescript-language-server"
|
|
150
|
+
# ]
|
|
140
151
|
```
|
|
141
152
|
|
|
142
153
|
- `except-features` can disable server's feature, view the [supported features](https://github.com/jadestrong/lsp-copilot/blob/c3d314d9bc1778b35c6ad2a046fa8b76cad94db4/src/syntax.rs#L150-L168).
|
|
@@ -229,4 +240,4 @@ Regarding the communication between Emacs and Lsp-Proxy, I would like to especia
|
|
|
229
240
|
|
|
230
241
|
The various methods used to implement LSP-related functionality on the Emacs side were learned from [lsp-mode](https://github.com/emacs-lsp/lsp-mode) and [eglot](https://github.com/joaotavora/eglot). Without their guidance, many of these features would have been difficult to implement.
|
|
231
242
|
|
|
232
|
-
Regarding the communication data format between Emacs and Lsp-Proxy, I would like to especially thank [emacs-lsp-booster](https://github.com/blahgeek/emacs-lsp-booster). The project integrates the implementation of emacs-lsp-booster, which encodes the JSON data returned to Emacs, further reducing the load on Emacs.
|
|
243
|
+
Regarding the communication data format between Emacs and Lsp-Proxy, I would like to especially thank [emacs-lsp-booster](https://github.com/blahgeek/emacs-lsp-booster). The project integrates the implementation of emacs-lsp-booster, which encodes the JSON data returned to Emacs, further reducing the load on Emacs.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "emacs-lsp-proxy",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.6",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"postinstall": "node ./install.js"
|
|
6
6
|
},
|
|
@@ -17,11 +17,11 @@
|
|
|
17
17
|
],
|
|
18
18
|
"author": "jadestrong",
|
|
19
19
|
"optionalDependencies": {
|
|
20
|
-
"@emacs-lsp-proxy/darwin-x64": "0.5.
|
|
21
|
-
"@emacs-lsp-proxy/darwin-arm64": "0.5.
|
|
22
|
-
"@emacs-lsp-proxy/linux-x64": "0.5.
|
|
23
|
-
"@emacs-lsp-proxy/linux-arm64": "0.5.
|
|
24
|
-
"@emacs-lsp-proxy/win32-x64": "0.5.
|
|
20
|
+
"@emacs-lsp-proxy/darwin-x64": "0.5.6",
|
|
21
|
+
"@emacs-lsp-proxy/darwin-arm64": "0.5.6",
|
|
22
|
+
"@emacs-lsp-proxy/linux-x64": "0.5.6",
|
|
23
|
+
"@emacs-lsp-proxy/linux-arm64": "0.5.6",
|
|
24
|
+
"@emacs-lsp-proxy/win32-x64": "0.5.6"
|
|
25
25
|
},
|
|
26
26
|
"license": "ISC",
|
|
27
27
|
"description": "An LSP client for Emacs implemented in Rust."
|