summaryrefslogtreecommitdiff
path: root/support/texlab/src/features/completion/builder.rs
diff options
context:
space:
mode:
Diffstat (limited to 'support/texlab/src/features/completion/builder.rs')
-rw-r--r--support/texlab/src/features/completion/builder.rs19
1 files changed, 5 insertions, 14 deletions
diff --git a/support/texlab/src/features/completion/builder.rs b/support/texlab/src/features/completion/builder.rs
index 686d39b62b..0373587a06 100644
--- a/support/texlab/src/features/completion/builder.rs
+++ b/support/texlab/src/features/completion/builder.rs
@@ -11,7 +11,7 @@ use serde::{Deserialize, Serialize};
use smol_str::SmolStr;
use crate::{
- db::{Document, Workspace},
+ db::{Document, ServerContext, Workspace},
syntax::{
bibtex::{self, HasName, HasType},
latex,
@@ -44,7 +44,7 @@ impl<'db> CompletionBuilder<'db> {
let items = Vec::new();
let matcher = SkimMatcherV2::default().ignore_case();
let text_pattern = match &context.cursor {
- Cursor::Tex(token) if token.kind().is_command_name() => {
+ Cursor::Tex(token) if token.kind() == latex::COMMAND_NAME => {
if token.text_range().start() + TextSize::from(1) == context.offset {
// Handle cases similar to this one correctly:
// $\|$ % (| is the cursor)
@@ -426,18 +426,9 @@ impl<'db> CompletionBuilder<'db> {
.map(|(i, item)| self.convert_item(item, i))
.collect();
- list.is_incomplete = if self
- .context
- .workspace
- .client_info(self.context.db)
- .as_ref()
- .map_or(false, |client| client.name.as_str() == "Visual Studio Code")
- {
- true
- } else {
- list.items.len() >= COMPLETION_LIMIT
- };
-
+ let db = self.context.db;
+ let always_incomplete = ServerContext::get(db).always_incomplete_completion_list(db);
+ list.is_incomplete = always_incomplete || list.items.len() >= COMPLETION_LIMIT;
list
}