summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/language_server/gdscript_language_server.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2023-09-19 09:04:30 +0200
committerRémi Verschelde <rverschelde@gmail.com>2023-09-19 09:04:30 +0200
commite207595de9cdf47bf617776df69296d44c85f2d7 (patch)
tree845f1a6c5329b2495f7fecff26a8699027819267 /modules/gdscript/language_server/gdscript_language_server.cpp
parentc78d0e2eb094c52380e0e1495e528bec085634fe (diff)
parenta5b7c4c415ff9bf7e368371ddb88601bcb9e1232 (diff)
downloadredot-engine-e207595de9cdf47bf617776df69296d44c85f2d7.tar.gz
Merge pull request #81844 from ryanabx/features/specify-lsp-port
Add `--lsp-port` as a command line argument
Diffstat (limited to 'modules/gdscript/language_server/gdscript_language_server.cpp')
-rw-r--r--modules/gdscript/language_server/gdscript_language_server.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/modules/gdscript/language_server/gdscript_language_server.cpp b/modules/gdscript/language_server/gdscript_language_server.cpp
index 8c44483288..053be7eec2 100644
--- a/modules/gdscript/language_server/gdscript_language_server.cpp
+++ b/modules/gdscript/language_server/gdscript_language_server.cpp
@@ -36,6 +36,8 @@
#include "editor/editor_node.h"
#include "editor/editor_settings.h"
+int GDScriptLanguageServer::port_override = -1;
+
GDScriptLanguageServer::GDScriptLanguageServer() {
_EDITOR_DEF("network/language_server/remote_host", host);
_EDITOR_DEF("network/language_server/remote_port", port);
@@ -62,7 +64,7 @@ void GDScriptLanguageServer::_notification(int p_what) {
case EditorSettings::NOTIFICATION_EDITOR_SETTINGS_CHANGED: {
String remote_host = String(_EDITOR_GET("network/language_server/remote_host"));
- int remote_port = (int)_EDITOR_GET("network/language_server/remote_port");
+ int remote_port = (GDScriptLanguageServer::port_override > -1) ? GDScriptLanguageServer::port_override : (int)_EDITOR_GET("network/language_server/remote_port");
bool remote_use_thread = (bool)_EDITOR_GET("network/language_server/use_thread");
if (remote_host != host || remote_port != port || remote_use_thread != use_thread) {
stop();
@@ -84,10 +86,10 @@ void GDScriptLanguageServer::thread_main(void *p_userdata) {
void GDScriptLanguageServer::start() {
host = String(_EDITOR_GET("network/language_server/remote_host"));
- port = (int)_EDITOR_GET("network/language_server/remote_port");
+ port = (GDScriptLanguageServer::port_override > -1) ? GDScriptLanguageServer::port_override : (int)_EDITOR_GET("network/language_server/remote_port");
use_thread = (bool)_EDITOR_GET("network/language_server/use_thread");
if (protocol.start(port, IPAddress(host)) == OK) {
- EditorNode::get_log()->add_message("--- GDScript language server started ---", EditorLog::MSG_TYPE_EDITOR);
+ EditorNode::get_log()->add_message("--- GDScript language server started on port " + itos(port) + " ---", EditorLog::MSG_TYPE_EDITOR);
if (use_thread) {
thread_running = true;
thread.start(GDScriptLanguageServer::thread_main, this);