diff options
Diffstat (limited to 'support/texlab/src/features/completion/user_command.rs')
-rw-r--r-- | support/texlab/src/features/completion/user_command.rs | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/support/texlab/src/features/completion/user_command.rs b/support/texlab/src/features/completion/user_command.rs index 8b4473f31c..8355025098 100644 --- a/support/texlab/src/features/completion/user_command.rs +++ b/support/texlab/src/features/completion/user_command.rs @@ -1,4 +1,3 @@ -use cancellation::CancellationToken; use lsp_types::CompletionParams; use crate::features::cursor::CursorContext; @@ -8,23 +7,19 @@ use super::types::{InternalCompletionItem, InternalCompletionItemData}; pub fn complete_user_commands<'a>( context: &'a CursorContext<CompletionParams>, items: &mut Vec<InternalCompletionItem<'a>>, - cancellation_token: &CancellationToken, ) -> Option<()> { - cancellation_token.result().ok()?; - let range = context.cursor.command_range(context.offset)?; let token = context.cursor.as_latex()?; - for document in &context.request.subset.documents { + for document in context.request.workspace.documents_by_uri.values() { if let Some(data) = document.data.as_latex() { for name in data .extras .command_names .iter() .filter(|name| name.as_str() != token.text()) - .map(|name| &name[1..]) + .cloned() { - cancellation_token.result().ok()?; items.push(InternalCompletionItem::new( range, InternalCompletionItemData::UserCommand { name }, @@ -38,7 +33,7 @@ pub fn complete_user_commands<'a>( #[cfg(test)] mod tests { - use cstree::TextRange; + use rowan::TextRange; use crate::features::testing::FeatureTester; @@ -56,7 +51,7 @@ mod tests { let context = CursorContext::new(request); let mut actual_items = Vec::new(); - complete_user_commands(&context, &mut actual_items, CancellationToken::none()); + complete_user_commands(&context, &mut actual_items); assert!(actual_items.is_empty()); } @@ -73,7 +68,7 @@ mod tests { let context = CursorContext::new(request); let mut actual_items = Vec::new(); - complete_user_commands(&context, &mut actual_items, CancellationToken::none()); + complete_user_commands(&context, &mut actual_items); assert!(actual_items.is_empty()); } @@ -90,7 +85,7 @@ mod tests { let context = CursorContext::new(request); let mut actual_items = Vec::new(); - complete_user_commands(&context, &mut actual_items, CancellationToken::none()); + complete_user_commands(&context, &mut actual_items); assert_eq!(actual_items.len(), 1); for item in actual_items { |