Before, the LSP snippet for `startProfile` was
```
startProfile(%, at = [3.14, 3.14])
```
Now it's
```
startProfile(%, at = [0, 0])
```
This is configured by adding a `snippet_value=` field to the stdlib macro. For example:
```diff
#[stdlib {
name = "startProfile",
keywords = true,
unlabeled_first = true,
args = {
sketch_surface = { docs = "What to start the profile on" },
- at = { docs = "Where to start the profile. An absolute point." },
+ at = { docs = "Where to start the profile. An absolute point.", snippet_value = "[0, 0]" }, tag = { docs = "Tag this first starting point" },
},
tags = ["sketch"]
}]
```
## Work for follow-up PRs
- Make this work for KCL functions defined in KCL, e.g. [`fn circle`](36c8ad439d/rust/kcl-lib/std/sketch.kcl (L31-L32)) -- something like `@(snippet_value = "[0, 0]")` perhaps
- Go through the stdlib and change defaults where appropriate
* Show more info on hover for variables
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Move hover impls to lsp module
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Make hover work on names inside calls, fix doc line breaking, trim docs in tool tips
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Test the new hovers; fix signature syntax
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Hover tips for kwargs
Signed-off-by: Nick Cameron <nrc@ncameron.org>
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>