Commit graph

141 commits

Author SHA1 Message Date
Myriad-Dreamin
73a5742c09
fix: instantiate variable before applying variable function (#247) 2024-05-07 13:44:50 +08:00
Myriad-Dreamin
b0c71a0961
fix: infinite loop in simplifying recursive functions (#246)
* fix: infinite loop in simplifying recursive functions

* dev: update snapshot
2024-05-07 13:39:04 +08:00
Myriad-Dreamin
d8c3a97f24
feat: trigger parameter hints instead of suggest on pos args (#243)
* dev: disable aggressive positional arguments completion

* feat: trigger parameter hints instead of suggest on pos args

* dev: update snapshot
2024-05-05 23:40:29 +08:00
Myriad-Dreamin
3490a3244c
feat: reimplement signature help (#241)
* feat: reimplement signature help

* dev: export doc tooltip

* dev: update snapshot
2024-05-05 23:30:19 +08:00
Myriad-Dreamin
b8143e7090
feat: provide code action to rewrite headings (#240)
* feat: provide code action to rewrite headings

* dev: update snapshot
2024-05-05 23:25:03 +08:00
Myriad-Dreamin
6ad9258740
feat: handle/add link in the hover documentation (#239)
* feat: handle/add link in the hover documentation

* dev: update snapshot

* dev: update snapshot

* dev: update snapshot
2024-05-05 21:32:09 +08:00
Myriad-Dreamin
68bcc2b571
feat: provide label details by type, symbol, and labels (#237)
* feat: label details by type

* fix: symbol's details and label details

* dev: update snapshot

* fix: make signature stable
2024-05-05 20:19:29 +08:00
Myriad-Dreamin
bf8a505135
feat: check surrounding syntax for elements/selectors (#236)
* feat: check surrounding syntax for elements/selectors

* dev: update snapshot

* dev: update snapshot
2024-05-05 19:36:30 +08:00
Myriad-Dreamin
d774304574
feat: find definition of label references (#235)
* feat: find definition of label references

* dev: move dependencies declaration

* dev: remove serde_spanned
2024-05-05 18:53:18 +08:00
Myriad-Dreamin
c133d81d36
dev: correctly handle module import completion (#234) 2024-05-05 17:59:26 +08:00
Myriad-Dreamin
abb89ed3e8
feat: dynamic analysis on import from dynamic expressions (#233)
* feat: dynamic analysis on import from dynamic expressions

* dev: adds more fixture
2024-05-05 17:39:56 +08:00
Myriad-Dreamin
46f524de57
feat: type check across modules (#232) 2024-05-05 17:19:56 +08:00
Myriad-Dreamin
0b566f83de
feat: improve and prefer to use post type check (#231)
* dev: rename literal_type_check to post_type_check

* feat: post check signature

* feat: post check array/dict elements

* feat: post check positional arguments

* fix: signature of func with/where

* fix: kind of items

* dev: remove cross-module fixture

* fix: kind of completions
2024-05-04 20:56:40 +08:00
Myriad-Dreamin
10fad2ecde
dev: run completion snapshots with filtering (#230) 2024-05-04 14:17:13 +08:00
Myriad-Dreamin
97043b9789
feat: lsp label descriptions for labels (#228) 2024-05-04 13:59:07 +08:00
Myriad-Dreamin
0a76b4b18a
feat: graphic label descriptions for symbols (#227) 2024-05-04 13:58:59 +08:00
Myriad-Dreamin
f87659f2e3
dev: improve doc about slice_at (#226) 2024-05-04 13:58:51 +08:00
Myriad-Dreamin
bbc6e3e4e9
feat: complete symbol view (#218)
* dev: make detypify work

* dev: add symbol view

* fix: some bugs in symbol picker

* dev: make names correct

* dev: add help panel in symbol picker

* feat: paste the sym directly into the source position

* dev: tuning the detail

* dev: remove debug logging

* dev: recover mock

* docs: improve accessibility

* dev: change symbol picker to symbol view

* dev: download detypify assets

* dev: fix download script
2024-04-27 09:58:58 +08:00
Myriad-Dreamin
5ad5294fca
feat: support code context queries (#217)
* feat: support code context queries

* dev: improve switch

* dev: update snapshot
2024-04-27 09:29:20 +08:00
Myriad-Dreamin
8293f9e2cc
fix: remove debugging (#215) 2024-04-27 09:19:24 +08:00
Myriad-Dreamin
4227f864a2
feat: add more auto closing pairs, surrounding pairs, and characters that could make auto closing before (#209)
* dev: add more characters that could make auto closing before

* dev: add more auto closing pairs and surrounding pairs

* dev: remove a debugging log

* dev: add a comment
2024-04-21 10:53:55 +08:00
Myriad-Dreamin
e54d74812e
feat: append rest code completion result after param completed (#208)
* feat: append rest code completion result after param completed

* dev: update snapshot
2024-04-20 16:04:18 +08:00
Myriad-Dreamin
9c9e4977b1
feat: complete functions with where/with snippets (#206)
* dev: complete function with where/with snippets

* dev: update snapshot
2024-04-20 15:27:57 +08:00
Myriad-Dreamin
c33f14e761
fix: wrong check of param completion position at comma (#205) 2024-04-20 15:26:31 +08:00
Myriad-Dreamin
b52ad52760
feat: completion on func.where and func.with (#204) 2024-04-20 15:17:47 +08:00
Myriad-Dreamin
b35d897919
feat: complete function parameters on signatures inferred by type checking (#203)
* dev: check upper bound types in assigning positions

* dev: check template signatures

* feat: completion with type sigatures

* dev: document a bit

* dev: save todo work on auto completion on user functions

* dev: fix document target

* dev: remove playground snaps

* dev: fix ident target

* dev: update snapshot
2024-04-20 15:03:46 +08:00
Myriad-Dreamin
4ec4305fd5
dev: check variadic/content arguments correctly (#202) 2024-04-20 12:49:44 +08:00
Myriad-Dreamin
fa0899b7cf
feat: complete array/tuple literals (#201)
* dev: introduce type checking on arrays/tuples

* dev: complete array literals

* dev: complete columns/ros/gutter/column-gutter/row-gutter/size/dash array types

* chore: reduce two todos
2024-04-20 11:47:53 +08:00
Myriad-Dreamin
f6f2454d37
feat: complete text.lang/region (#199) 2024-04-19 16:12:40 +08:00
Myriad-Dreamin
879d95a74b
dev: introduce type checking on if and block join (#193)
* dev: clean some todo

* dev: remove FlowBinaryRepr

* dev: simple if and type join
2024-04-16 14:13:37 +08:00
Myriad-Dreamin
a09c068d1d
dev: prefer less uses of analzer_expr during definition analysis (#192)
* dev: prefer less uses of `analzer_expr` during definition analysis

* dev: improve pipeline of resolving syntactic definition
2024-04-16 14:03:01 +08:00
Myriad-Dreamin
878a414646
feat: infer types on set rules (#189) 2024-04-15 00:47:03 +08:00
Myriad-Dreamin
f98470a0f5
fix: slicing at an offset that is not char boundary (#188) 2024-04-15 00:46:10 +08:00
Myriad-Dreamin
987a7da867
feat: complete arguments enhanced by type inference (#186)
* auto complete code in param position

* dev: initial path completion in params

* fix: compile error

* remove two todo

* dev: improve get_deref_target

* check string during completion

* feat: complete path arguments

* feat: identify hash before function follows a content parameter

* dev: complete text.size, text.dir, stack.dir, stroke dict

* dev: add record type

* dev: complete stroke dict

* fix: correct kind of langauge of code tooltip

* dev: add colon trigger character

* dev: let type selection complete

* dev: complete inset/outset/margin/radius dictionary types

* dev: complete raw theme/syntaxes, bib path types

* dev: complete all files at the same time

* dev: update snapshot
2024-04-15 00:17:54 +08:00
Myriad-Dreamin
76de22b676
dev: rename trace feature to profile feature (#185)
* dev: rename trace feature to profile feature

* dev: update snapshot
2024-04-12 09:49:44 +08:00
Myriad-Dreamin
71ad5aaaed
dev: introduce basic type checker (#183)
* dev: draft type checker v1

* dev: use check_in_mode

* dev: refactor entries

* dev: change name

* update test

* dev: clean up playground

* dev: clean tests

* dev: update snapshot

* fix: bad refactor

* dev: update snapshot
2024-04-11 23:28:32 +08:00
Myriad-Dreamin
0c4a898c97
dev: introduce call static analysis (#182)
* dev: start write signature v2

* dev: introduce signature with bindings

* fix: print value instead document in type repr

* dev: use new signature analyzer for calls

* dev: weaken analysis requirement

* dev: invalidate signature cache on source update
2024-04-11 21:07:09 +08:00
Myriad-Dreamin
c22f70b49e
dev: refactor def and use cache for improving definition (#179)
* chore: add a notes to do.

* dev: cache def and use information

* dev: move signature cache to analysis level

* dev: refactor a bit for improving definition

* dev: more appropriate definition discover

* fix: clippy error
2024-04-11 20:45:02 +08:00
QuarticCat
ebed95cbcd
fix: improve release profile & fix typos (#177)
* dev: split a gh-release profile to accelerate development

* fix: many typos

* fix: miri warnings

* fix: update fixtures
2024-04-10 11:34:18 +08:00
Myriad-Dreamin
59ca5bdabc
chore: fix test scripts and update test documents (#178)
* chore: fix test scripts and update test documents

* docs: redirect developer who want to build and test to the contributing guide

* dev: change wording
2024-04-09 12:37:01 +08:00
Myriad-Dreamin
4afe4b30d9
feat: add basic color providers (#171)
* feat: provide document color api

* feat: provide color presentation api.

* dev: update snapshot

* dev: update snapshot
2024-04-06 14:10:48 +08:00
Myriad-Dreamin
7613712137
feat: support tracing execution in current document (#166)
* feat: support tracing execution in current document

* dev: improve frontend appearence

* fix: word grammar

* dev: update snapshot
2024-04-06 13:32:11 +08:00
Myriad-Dreamin
c2f2b214a2
feat: initialize telescope mode previewing (#164)
* feat: initialize telescope mode previewing

* dev: add notes

* dev: configure and disable hovering periscope

* dev: update snapshot
2024-04-05 17:22:56 +08:00
Myriad-Dreamin
703c8b4c1d
dev: collect server information for summary (#162)
* dev: collect server information for summary

* dev: humanize font variant to show

* fix: let focus state correct
2024-04-05 13:18:36 +08:00
Myriad-Dreamin
6722b2501f
feat: add status bar to showing words count, also for compiling status (#158)
* feat: add status bar to showing words count, also for compilng status

* dev: add configuration for compile status

* fix: let focus state correct

* dev: improve hint
2024-04-05 13:16:24 +08:00
Myriad-Dreamin
2ba806359a
dev: join array of hover contents by divider for neovim clients (#157)
* dev: join array of hover contents by divider for neovim client

* dev: update snapshots
2024-04-05 12:37:27 +08:00
Myriad-Dreamin
1c5c6bd929
feat: go to definition of include paths (#156) 2024-04-04 11:11:23 +08:00
Myriad-Dreamin
d256ff0556
dev: recover module completion (#151)
* dev: recover module completion

* dev: update snapshot
2024-04-04 09:38:47 +08:00
Myriad-Dreamin
bd610b2323
feat: auto complete parameters after completing a function (#150)
* feat: auto complete parameters after completing a function

* dev: update snapshot

* dev: update completion snapshot
2024-04-02 18:50:02 +08:00
Myriad-Dreamin
d71dd38b98
feat: complete parameter values on user functions (#149)
* feat: complete parameter values on user functions

* dev: separate type/value repr in parameter analysis
2024-04-02 17:52:15 +08:00