Skip to content

Commit 23c12af

Browse files
committed
Fix completion issue
1 parent 1f03bd8 commit 23c12af

File tree

4 files changed

+37
-11
lines changed

4 files changed

+37
-11
lines changed

EmmyLua.LanguageServer/Completion/CompleteProvider/GlobalProvider.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@ public void AddCompletion(CompleteContext context)
1212
{
1313
AddGlobalCompletion(context);
1414
}
15-
else if (context.TriggerToken is LuaWhitespaceToken)
16-
{
17-
AddGlobalCompletion(context);
18-
}
19-
else if (context.TriggerToken is { Kind: LuaTokenKind.TkEndOfLine })
20-
{
21-
AddGlobalCompletion(context);
22-
}
15+
// else if (context.TriggerToken is LuaWhitespaceToken)
16+
// {
17+
// AddGlobalCompletion(context);
18+
// }
19+
// else if (context.TriggerToken is { Kind: LuaTokenKind.TkEndOfLine })
20+
// {
21+
// AddGlobalCompletion(context);
22+
// }
2323
}
2424

2525
private void AddGlobalCompletion(CompleteContext context)

EmmyLua.LanguageServer/Completion/CompletionHandler.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public class CompletionHandler(ServerContext context) : CompletionHandlerBase
1414

1515
private CompletionDocumentResolver DocumentResolver { get; } = new();
1616

17-
protected override async Task<CompletionResponse?> Handle(CompletionParams request, CancellationToken token)
17+
protected override Task<CompletionResponse?> Handle(CompletionParams request, CancellationToken token)
1818
{
1919
var uri = request.TextDocument.Uri.UnescapeUri;
2020
CompletionResponse? response = null;
@@ -30,7 +30,7 @@ public class CompletionHandler(ServerContext context) : CompletionHandlerBase
3030
}
3131
});
3232

33-
return await Task.FromResult(response)!;
33+
return Task.FromResult(response)!;
3434
}
3535

3636
protected override Task<CompletionItem> Resolve(CompletionItem item, CancellationToken token)

EmmyLua.LanguageServer/LanguageServer.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
using EmmyLua.LanguageServer.Rename;
2020
using EmmyLua.LanguageServer.SemanticToken;
2121
using EmmyLua.LanguageServer.Server;
22+
using EmmyLua.LanguageServer.Server.Scheduler;
2223
using EmmyLua.LanguageServer.SignatureHelper;
2324
using EmmyLua.LanguageServer.TextDocument;
2425
using EmmyLua.LanguageServer.TypeHierarchy;
@@ -49,7 +50,8 @@
4950

5051
InitializeParams initializeParams = null!;
5152
var ls = LanguageServer.From(input, output);
52-
ls.SetScheduler(new SimpleMultiThreadScheduler());
53+
var scheduler = new EmmyScheduler();
54+
ls.SetScheduler(scheduler);
5355
ls.AddJsonSerializeContext(EmmyLuaJsonGenerateContext.Default);
5456
var serverContext = new ServerContext(ls);
5557
ls.OnInitialize((c, s) =>
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
using EmmyLua.LanguageServer.Framework.Protocol.JsonRpc;
2+
using EmmyLua.LanguageServer.Framework.Server.Scheduler;
3+
4+
namespace EmmyLua.LanguageServer.Server.Scheduler;
5+
6+
public class EmmyScheduler : IScheduler
7+
{
8+
public void Schedule(Func<Message, Task> action, Message message)
9+
{
10+
if (message is NotificationMessage requestMessage)
11+
{
12+
switch (requestMessage.Method)
13+
{
14+
case "textDocument/didChange":
15+
{
16+
action(message).Wait();
17+
return;
18+
}
19+
}
20+
}
21+
22+
Task.Run(() => action(message));
23+
}
24+
}

0 commit comments

Comments
 (0)