Skip to content

Omni-completion does not work in non-hierarchical references #50

@vhda

Description

@vhda

Given the following example:

module top;
  function f(
    input a,
    input b
  );
  endfunction : f

  initial begin
    f(.<tab>
    );
  end
endmodule

When pressing inside the function port list will not work as expected. This happens because the qualified output of ctags is the following:

a       o.v     /^    input a,$/;"      p       function:top.f
b       o.v     /^    input b$/;"       p       function:top.f
f       o.v     /^  function f($/;"     f       module:top
top     o.v     /^module top;$/;"       m
top.f   o.v     /^  function f($/;"     f       module:top
top.f.a o.v     /^    input a,$/;"      p       function:top.f
top.f.b o.v     /^    input b$/;"       p       function:top.f

So f.a is only available in the context top.

For this reason the omni-completion script must determine the current context before searching for tags, such that it can search for top.f.* instead of f.*.

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions