vscode-front-matter icon indicating copy to clipboard operation
vscode-front-matter copied to clipboard

Enhancement: Set a 'required' parameter for a frontmatter field that will annoy editors until it is defined.

Open bwklein opened this issue 2 years ago • 7 comments

Is your feature request related to a problem? Please describe. Some fields need to be filled in for the site design to work as intended and for SEO.

Describe the solution you'd like Set a parameter required: true on a content type field, that will first highlight the field red when not filled out, and then raise a warning on save until the field is filled out. Basically, be annoying to the editor until the requirements are satisfied.

Describe alternatives you've considered Telling people to remember to fill it out, checklists, pre-build script to check all files for required fields. It would be better to have some information in the UI at the time of editing, instead of after the files are saved, committed to the repo.

Additional context Add any other context or screenshots about the feature request here.

bwklein avatar Jul 11 '22 16:07 bwklein

@estruyf I was asked about this today and wanted to see what you thought about it.

bwklein avatar Aug 16 '22 18:08 bwklein

Hi @bwklein, sorry for the delay. I am just back from vacation, so I need to get up to speed with all the things I missed.

estruyf avatar Aug 30 '22 08:08 estruyf

@estruyf no worries, I was hoping that you were off doing something fun and relaxing this summer. :D

zivbk1 avatar Aug 30 '22 21:08 zivbk1

Good news @zivbk1 @bwklein - there has been some good progress on this, and it will soon be available for testing.

Field view

Screenshot 2022-09-14 at 12 05 57

VS Code problems view and notification (can be turned off)

Screenshot 2022-09-13 at 16 06 50

Highlighted issues in the content

Screenshot 2022-09-13 at 16 06 40

estruyf avatar Sep 15 '22 06:09 estruyf

This is now available for testing.

Configuration

  • Add the required property to the fields in your content type you want to define as a required field
  • You will automatically get the notification if you save the file and a required field is missing, if you don't want to see this notification, you can disable it with the new frontMatter.global.notifications.disabled setting and add the [requiredFieldValidation] its value.

estruyf avatar Sep 15 '22 09:09 estruyf

This is excellent! Thank you.

bwklein avatar Sep 15 '22 09:09 bwklein

Changed setting to frontMatter.global.disabledNotifications.

estruyf avatar Sep 19 '22 07:09 estruyf