haskell / haskell/haskell-language-server

Feature Request: Automatic Expansion of uninitialized record fields

Open
#462 19 comments 3 reactions 1 assignee Claimed by @dan-blank View on GitHub
component: ghcide Hackathon level: easy type: enhancement
Dominant language
Haskell
Stars
3k
Forks
455
Avg merge
2d 19h
Merged PRs (30d)
11

Description

When a warning for "Fields of ‘SomeRecord’ not initialised: a, b, c, d" fires, I'd like a `CodeAction` that allows it to initialize all of those rows with typed holes.

Flow would look like this:
1. let thing = SomeRecord{}
2. Ctrl+'.' (or other code action trigger)
3. ~~let thing = SomeRecord{}~~ --> let thing = SomeRecord { a = _, b = _, c = _, d = _ }

The reason that this is somewhat of a big deal is that in the presence of long record names with the conventional prefix based row names (someRecordA, someRecordB, ...), the typing for this is nontrivial and also entirely mechanical and so the editor is perfectly capable of doing this for me.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.