cue: uniform handling of definitions

This mostly affects spacing, which will be tested in followup CLs.

Change-Id: I5308aca574308131d737173d6b9d344317a34356
Reviewed-on: https://cue-review.googlesource.com/c/cue/+/5941
Reviewed-by: Marcel van Lohuizen <mpvl@google.com>
diff --git a/internal/encoding/encoding.go b/internal/encoding/encoding.go
index 03fc7ab..a828a1b 100644
--- a/internal/encoding/encoding.go
+++ b/internal/encoding/encoding.go
@@ -367,8 +367,9 @@
 		check(n, i.Imports, "imports", true)
 
 	case *ast.Field:
-		check(n, i.Definitions, "definitions", x.Token == token.ISA)
-		check(n, i.Data, "regular fields", x.Token != token.ISA)
+		check(n, i.Definitions, "definitions",
+			x.Token == token.ISA || internal.IsDefinition(x.Label))
+		check(n, i.Data, "regular fields", internal.IsRegularField(x))
 		check(n, constraints, "optional fields", x.Optional != token.NoPos)
 
 		_, _, err := ast.LabelName(x.Label)