我是scheme-langserver作者,来贵宝地吸收一下想法

在 WSL 上能编译出来,不过给原生 Windows Emacs 用没能试成功,但是大概明白在 macOS 上不能用是怎么回事了,有空再试试看。

read-message
2024 10 19 0 5 50 869441171
{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"processId":17924,"clientInfo":{"name":"Eglot","version":"1.17"},"rootPath":"g:/","rootUri":"file:///g%3A/","initializationOptions":{},"capabilities":{"workspace":{"applyEdit":true,"executeCommand":{"dynamicRegistration":false},"workspaceEdit":{"documentChanges":true},"didChangeWatchedFiles":{"dynamicRegistration":true},"symbol":{"dynamicRegistration":false},"configuration":true,"workspaceFolders":true},"textDocument":{"synchronization":{"dynamicRegistration":false,"willSave":true,"willSaveWaitUntil":true,"didSave":true},"completion":{"dynamicRegistration":false,"completionItem":{"snippetSupport":true,"deprecatedSupport":true,"resolveSupport":{"properties":["documentation","details","additionalTextEdits"]},"tagSupport":{"valueSet":[1]}},"contextSupport":true},"hover":{"dynamicRegistration":false,"contentFormat":["plaintext"]},"signatureHelp":{"dynamicRegistration":false,"signatureInformation":{"parameterInformation":{"labelOffsetSupport":true},"documentationFormat":["plaintext"],"activeParameterSupport":true}},"references":{"dynamicRegistration":false},"definition":{"dynamicRegistration":false,"linkSupport":true},"declaration":{"dynamicRegistration":false,"linkSupport":true},"implementation":{"dynamicRegistration":false,"linkSupport":true},"typeDefinition":{"dynamicRegistration":false,"linkSupport":true},"documentSymbol":{"dynamicRegistration":false,"hierarchicalDocumentSymbolSupport":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}},"documentHighlight":{"dynamicRegistration":false},"codeAction":{"dynamicRegistration":false,"resolveSupport":{"properties":["edit","command"]},"dataSupport":true,"codeActionLiteralSupport":{"codeActionKind":{"valueSet":["quickfix","refactor","refactor.extract","refactor.inline","refactor.rewrite","source","source.organizeImports"]}},"isPreferredSupport":true},"formatting":{"dynamicRegistration":false},"rangeFormatting":{"dynamicRegistration":false},"rename":{"dynamicRegistration":false},"inlayHint":{"dynamicRegistration":false},"publishDiagnostics":{"relatedInformation":false,"codeDescriptionSupport":false,"tagSupport":{"valueSet":[1,2]}}},"window":{"showDocument":{"support":true},"workDoneProgress":true},"general":{"positionEncodings":["utf-32","utf-8","utf-16"]},"experimental":{}},"workspaceFolders":[{"uri":"file:///g%3A/","name":"g:/"}]}}
(format "~s is not of type ~s" () #<record type file-node>)

2024 10 19 0 5 50 870197951
send-message
2024 10 19 0 5 50 870208661
{"jsonrpc":"2.0","id":1,"error":{"code":-32001,"message":"initialize"}}
read-message
2024 10 19 0 5 51 39552480

原因其实 startup.md 里多少有提到,但是写作过于随性我一开始没看慬。昨天本就有所怀疑现今明确了。

Please check if you installed the original one :frowning:

写的什么玩意,麻烦解释下什么 original one?Chez Scheme?Chez-exe?我猜是 petite-chez.a 的原因试下了才整出来的。

In WSL, although it’s kind of another Linux, compile-chez-program might fail with such a message:

显然这个问题和是不是 Linux 没关系。明显是 chez-exe 编译好后要怎么 install 的问题。

1 个赞
  1. Windows Emacs……你在windows里面调用WSL的scheme-langserver?我不用windows 12年,这块确实不清楚。
  2. 等我把这块的贡献者叫来水个帖子。不过请你善待他,不要用对我的口气。

我的问题。不怎么会写英语文档,没记错的话这里说的是 “是否安装了原版本的 chez-exe”,因为在我的 WSL 下测试安装这个作者 fork 的 chez-exe 会让 cc 报错,而我没有能力与时间排查问题。于是测试原版本可编译成功之后就写了那一句话, 回头会改一下的。

这是什么意思?在 Windows 上调用 WSL 的可执行文件?不清楚是如何配置的(同时我也不会 emacs),如果有需要也许可以在项目里发 issue。

这句话没有说它跟是不是 Linux 有关系,只是说明在 WSL 下没有办法按 Linux 中的 startup 步骤来操作(起码在我这里是失败的)。而动态库的问题我是参考 chez-exe issue 的。

1 个赞

emm 也就是说同样也没有人在 Windows 的 VSCode 上用过吗?我看到有 VSC 插件就以为这样能用了。

我在linux上的vsc上用。

我只在 WSL 的 nvim 上用过,是能用的(虽然最近版本没试过)。VSCode 我回头试试。