Skip to content

Regarding ca65 support #270

@calint

Description

@calint

I am using the LSP with Neovim and ca65 and wanted to share a few issues that, if addressed, could further improve the experience.

Navigation and symbols

  • Go to definition / declaration / implementation / type definition does not work for all symbols. Labels work, but constants and zero page variables do not.
  • Better would be if @ labels are shown as such in LSP symbols for clearer overview.
  • Anonymous labels (:) should not appear in the symbols list.
  • References for labels do not show all usages and currently include the definition itself.
  • References occasionally show unrelated lines. Restarting the LSP resolves this.

Auto-completion

  • Sometimes stops working or behaves inconsistently (for example, constants appear for lda but not for sta).
  • Zero page variables are not suggested.
  • Macro names are not suggested.
  • Struct members are not suggested.

Possible enhancements

  • Hover documentation is very helpful. Showing instruction cycles and byte sizes would be a great addition.
  • Rename symbol refactoring would be very useful.

Kind regards

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions