Skip to content

Snapshot release 2023-01-01

Compare
Choose a tag to compare
@oxalica oxalica released this 01 Jan 17:48
· 272 commits to main since this release
2023-01-01

Happy GregorianCalendar new year!

Features

  • Add many code actions for refactoring or fix.
    Thanks to figsoda@github for implementations.

    • "Convert to inherit" now supports multiple LHS or RHS.
      { a.b = b; } => { a = { inherit b; }; }
      { a = b.a; } => { inherit (b) a; }

    • Add unresolved names to top-level lambda parameters.
      { foo }: foo + bar => { foo, bar }: foo + bar

    • Remove empty inherits.
      { inherit; } => { }

  • Names from with now have a special semantic token modifier
    withAttribute. One can add styles like underlines to them to distinguish
    them from other static bindings.
    There are examples dev/nix-ide-semantic-highlighting.patch for VSCode and
    dev/vim-coc.nix for (Neo)Vim/coc.nvim.

Fixes

  • Names of semantic highlighting are tweaked. Now we use constant and
    builtin for builtin constants (true) and functions (map).
    The standard defaultLibrary group in themes usually represent names
    from the "standard library", like rust-analyzer did, which is not the
    same as "builtin" constants.