fix hover digit bug | fix completion detail bug

This commit is contained in:
light-ly 2024-11-05 21:43:10 +08:00
parent f6ae03d310
commit 4b0e5f2d63
3 changed files with 5 additions and 7 deletions

View File

@ -171,7 +171,7 @@ fn get_position_port_param_completion(
let mut completion_items = Vec::<CompletionItem>::new(); let mut completion_items = Vec::<CompletionItem>::new();
for param in inst_module.params { for param in inst_module.params {
let label_details = CompletionItemLabelDetails { let label_details = CompletionItemLabelDetails {
detail: Some("parameter".to_string()), detail: None,
..CompletionItemLabelDetails::default() ..CompletionItemLabelDetails::default()
}; };
@ -202,7 +202,7 @@ fn get_position_port_param_completion(
let mut completion_items = Vec::<CompletionItem>::new(); let mut completion_items = Vec::<CompletionItem>::new();
for port in inst_module.ports { for port in inst_module.ports {
let label_details = CompletionItemLabelDetails { let label_details = CompletionItemLabelDetails {
detail: Some("port".to_string()), detail: None,
..CompletionItemLabelDetails::default() ..CompletionItemLabelDetails::default()
}; };

View File

@ -74,7 +74,7 @@ fn convert_to_sign_unsign<'a>(tag: &'a str, digit_string: &str) -> Option<(Strin
/// 将 1'b1 翻译成 10进制 /// 将 1'b1 翻译成 10进制
pub fn hover_format_digit(line: &RopeSlice, pos: Position, language_id: &str) -> Option<Hover> { pub fn hover_format_digit(line: &RopeSlice, pos: Position, language_id: &str) -> Option<Hover> {
let regex = Regex::new(r"[0-9'bho]").unwrap(); let regex = Regex::new(r"[0-9'bho_]").unwrap();
let token_result = get_word_range_at_position(line, pos, regex); let token_result = get_word_range_at_position(line, pos, regex);
if token_result.is_none() { if token_result.is_none() {

View File

@ -41,10 +41,8 @@ pub fn hover(server: &LSPServer, params: &HoverParams) -> Option<Hover> {
// info!("enter hover_module_declaration"); // info!("enter hover_module_declaration");
// match module name // match module name
if let Some(hover) = hover_module_declaration(server, &token, &language_id) {
// info!("[LSPServer] in hover: get module hover");
if hover_for_module(server, pos, doc) { if hover_for_module(server, pos, doc) {
// info!("[LSPServer] in hover: it is instance"); if let Some(hover) = hover_module_declaration(server, &token, &language_id) {
return Some(hover); return Some(hover);
} }
} }