Godot and Helix language server

Godot Version

4.4dev5 and 4.3

Question

Hi there,
I’ve been trying for a couple of days now to troubleshoot Godot and Helix not being able to connect through the language server. Used to use it all the time earlier on but this time I just can’t get it to work.
I don’t know enough about lsp to understand the error messages hree so I’m hoping someone else here is able to.

  1. I start Godot first and open the project
  2. I then open a terminal
  3. hx [path]
  4. open a file in the file picker
  5. try to go to definition of function,
    This results in the message “No configured language server supports goto-definition”.

hx --health output:

Config file: /home/swayworkstation/.config/helix/config.toml
Language file: /home/swayworkstation/.config/helix/languages.toml
Log file: /home/swayworkstation/.cache/helix/helix.log
Runtime directories: /home/swayworkstation/.config/helix/runtime;/usr/lib64/helix/runtime;/usr/bin/runtime
Runtime directory does not exist: /usr/bin/runtime
Clipboard provider: wl-paste+wl-copy
System clipboard provider: wl-paste+wl-copy
gdscript: 
✓ ncat                                  
None                                    
✘ gdformat                              
✓                                       
✓                                       
✓

language.toml file:

[language-server.godot]
command = "ncat" # or nc
args = [ "127.0.0.1", "6005"]

[[language]]
name = "gdscript"
language-servers = ["godot"]

Errors from the log:

024-11-22T12:46:08.990 helix_term::application [WARN] failed to load theme `Kanagawa` - Theme: file not found for: Kanagawa
    1  2024-11-22T12:46:58.613 helix_term::application [WARN] failed to load theme `catpuccin` - Theme: file not found for: catpuccin
    2  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
    3  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
    4  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
    5  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
    6  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
    7  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
    8  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
    9  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   10  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   11  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   12  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   13  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   14  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   15  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   16  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   17  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   18  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   19  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   20  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   21  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   22  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   23  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   24  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   25  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   26  2024-11-22T16:56:18.139 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   27  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   28  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   29  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   30  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   31  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   32  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   33  2024-11-22T16:56:18.140 helix_lsp::transport [ERROR] Exiting godot after unexpected error: Parse(Error("data did not match any variant of untagged enum ServerMessage", line: 0, column: 0))
   34  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   35  2024-11-22T16:56:18.140 helix_lsp [ERROR] failed to initialize language server: server closed the stream
   36  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   37  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   38  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   39  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   40  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   41  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   42  2024-11-22T16:56:18.140 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   43  2024-11-22T17:12:13.566 helix_lsp::transport [ERROR] Exiting godot after unexpected error: Parse(Error("data did not match any variant of untagged enum ServerMessage", line: 0, column: 0))
   44  2024-11-22T17:12:13.566 helix_lsp [ERROR] failed to initialize language server: server closed the stream
   45  2024-11-22T17:12:52.232 helix_lsp [ERROR] failed to initialize language server: request 0 timed out
   46  2024-11-22T17:16:32.991 helix_lsp::transport [ERROR] Exiting godot after unexpected error: Parse(Error("data did not match any variant of untagged enum ServerMessage", line: 0, column: 0))
   47  2024-11-22T17:16:32.991 helix_lsp::transport [ERROR] Could not close request on a closed channel (id=Num(0))
   48  2024-11-22T17:17:14.881 helix_lsp::transport [ERROR] godot err: <- StreamClosed
   49  2024-11-22T17:17:14.881 helix_lsp::transport [ERROR] godot err: <- StreamClosed
   50  2024-11-22T17:17:14.893 helix_lsp::transport [ERROR] Exiting godot after unexpected error: Parse(Error("data did not match any variant of untagged enum ServerMessage", line: 0, column: 0))
   51  2024-11-22T17:17:14.893 helix_lsp [ERROR] failed to initialize language server: server closed the stream
   52  2024-11-22T17:24:26.755 helix_lsp::transport [ERROR] godot err: <- StreamClosed
   53  2024-11-22T17:25:28.033 helix_lsp::transport [ERROR] Exiting godot after unexpected error: Parse(Error("data did not match any variant of untagged enum ServerMessage", line: 0, column: 0))
   54  2024-11-22T17:25:28.033 helix_lsp [ERROR] failed to initialize language server: server closed the stream
   55  2024-11-22T17:26:15.405 helix_lsp::transport [ERROR] godot err: <- StreamClosed
   56  2024-11-22T17:27:49.161 helix_lsp::transport [ERROR] Exiting godot after unexpected error: Parse(Error("data did not match any variant of untagged enum ServerMessage", line: 0, column: 0))
   57  2024-11-22T17:27:49.161 helix_lsp [ERROR] failed to initialize language server: server closed the stream
   58  2024-11-22T17:28:19.370 helix_lsp::transport [ERROR] godot err: <- StreamClosed
   59  2024-11-22T18:59:22.249 helix_lsp::transport [ERROR] Exiting godot after unexpected error: Parse(Error("data did not match any variant of untagged enum ServerMessage", line: 0, column: 0))
   60  2024-11-22T18:59:22.249 helix_lsp [ERROR] failed to initialize language server: server closed the stream
   61  2024-11-22T18:59:37.980 helix_lsp::transport [ERROR] godot err: <- StreamClosed
   62  2024-11-22T18:59:38.049 helix_lsp::transport [ERROR] Exiting godot after unexpected error: Parse(Error("data did not match any variant of untagged enum ServerMessage", line: 0, column: 0))
   63  2024-11-22T18:59:38.049 helix_lsp [ERROR] failed to initialize language server: server closed the stream
   64  2024-11-22T19:00:22.059 helix_lsp::transport [ERROR] godot err: <- StreamClosed
   65  2024-11-22T19:01:16.704 helix_lsp::transport [ERROR] godot err <- "Ncat: Connection refused.\n"
   66  2024-11-22T19:01:16.704 helix_lsp [ERROR] failed to initialize language server: server closed the stream
   67  2024-11-22T19:01:16.704 helix_lsp::transport [ERROR] godot err: <- StreamClosed
   68  2024-11-22T19:01:46.504 helix_lsp::transport [ERROR] Exiting godot after unexpected error: Parse(Error("data did not match any variant of untagged enum ServerMessage", line: 0, column: 0))
   69  2024-11-22T19:01:46.504 helix_lsp [ERROR] failed to initialize language server: server closed the stream
   70  2024-11-22T19:03:31.244 helix_lsp::transport [ERROR] godot err: <- StreamClosed
   71  2024-11-22T19:17:59.367 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   72  2024-11-22T19:17:59.368 helix_lsp::transport [ERROR] Exiting godot after unexpected error: Parse(Error("data did not match any variant of untagged enum ServerMessage", line: 0, column: 0))
   73  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   74  2024-11-22T19:17:59.371 helix_lsp [ERROR] failed to initialize language server: server closed the stream
   75  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   76  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   77  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   78  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   79  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   80  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   81  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   82  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   83  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   84  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   85  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   86  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   87  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   88  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   89  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   90  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   91  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   92  2024-11-22T19:17:59.371 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   93  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   94  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   95  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   96  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   97  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   98  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
   99  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  100  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  101  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  102  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  103  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  104  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  105  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  106  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  107  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  108  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  109  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  110  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  111  2024-11-22T19:17:59.372 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  112  2024-11-22T19:45:07.483 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  113  2024-11-22T19:45:07.483 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  114  2024-11-22T19:45:07.483 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  115  2024-11-22T19:45:07.483 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  116  2024-11-22T19:45:07.483 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  117  2024-11-22T19:45:07.483 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  118  2024-11-22T19:45:07.483 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  119  2024-11-22T19:45:07.483 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  120  2024-11-22T19:45:07.483 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  121  2024-11-22T19:45:07.483 helix_term::application [ERROR] Discarding publishDiagnostic notification sent by an uninitialized server: godot
  122  2024-1

I am facing the same issue. It also happens with the Zed editor.

For 4.4 dev versions this is now tracked in Regression: LSP sends unparsable message, breaking text editor lsp integration. · Issue #100914 · godotengine/godot · GitHub. 4.3 should work however (did test it just now).

Feel free to report LSP bugs to Github in the future.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.