Commit graph

547 commits

Author SHA1 Message Date
Myriad-Dreamin
ca5d8f61cc
build: upgrade rust and set MSRV to 1.75 (#261) 2024-05-08 20:48:35 +08:00
Myriad-Dreamin
398f2afb04
feat: simple code actions to manipulate equations (#258) 2024-05-07 20:21:01 +08:00
Myriad-Dreamin
7e59b9dbcb
dev: identify let context completely (#255) 2024-05-07 19:26:31 +08:00
Myriad-Dreamin
806fb9bdfc
dev: improve open document tooltip (#254) 2024-05-07 19:26:21 +08:00
Myriad-Dreamin
1f9719a420
dev: weaken inference from outer use (#250)
* dev: weaken inference from outer use

* >_<
2024-05-07 19:21:13 +08:00
Myriad-Dreamin
5c83fb56ab
dev: improve literal completion matching (#252) 2024-05-07 19:13:29 +08:00
Myriad-Dreamin
bbded48a1b
dev: insert commas in arg context for completing before identifiers (#251) 2024-05-07 19:03:25 +08:00
Myriad-Dreamin
c640d53396
dev: improve join type (#249)
* dev: improve join type

* dev: update snapshot
2024-05-07 18:30:14 +08:00
Myriad-Dreamin
4fae99d767
fix: simplify all substructure (#248) 2024-05-07 15:27:05 +08:00
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
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