Commit graph

75 commits

Author SHA1 Message Date
Myriad-Dreamin
38974a3b5e
feat: autofix unknown variable: a and file not found (searched at a.typ) by code action (#1743)
* feat: check context

* feat: implement it

* fix: warnings

* test: update snapshot
2025-05-09 23:44:12 +08:00
QuadnucYard
a7a22c0d70
feat: show rendered bibliography in bib hover and improve label hover (#1611)
* feat: show rendered bibliography in citation details

* adjust code and revert changes to completions

* refactor: refactor a bit

* refactor: refactor two bit

* feat: improve hover docs a bit

* test: add hover tests for label and ref

* test: add html tests

---------

Co-authored-by: Myriad-Dreamin <camiyoru@gmail.com>
2025-04-11 17:29:03 +08:00
Myriad-Dreamin
054d3aecc0
refactor: prepare for linting on syntaxes (#1640)
* refactor: for query

* refactor: for diag

* feat: lazy hash expr info

* feat: hash resolves

* fix: update snapshot
2025-04-09 04:10:47 +08:00
Myriad-Dreamin
ac506dcc31
refactor: move expr and ty defs to analysis crate (#1633) 2025-04-08 05:50:55 +08:00
Myriad-Dreamin
10ec787cc9
dev: stateful requests now accept snapshot (#1581)
* dev: stateful requests now accept snapshot

* dev: add some convenient methods

* dev: remove unused latest_doc state

* dev: use graph

* docs: comment

* fix: bad flag
2025-03-25 16:28:00 +08:00
Myriad-Dreamin
b4e5f4ff62
feat: add test framework with coverage support (#1518)
* feat: test framework with coverage support

* feat: clean up

* fix: dangling else block

* feat: implement show set

* feat: implement show replace content

* feat: compare framework

* feat: preserve extension

* feat: exit 1 if failed testing

* docs: update docs about it

* docs: wording

* docs: wording

* docs: wording
2025-03-17 22:41:33 +08:00
Myriad-Dreamin
3bc5f19cf5
feat: convert TypstDocument to enum (#1256)
* feat: convert `TypstDocument` to enum

* fix: errors

* build: update cargo.lock

* fix: warnings

* fix: error

* html changes

* Revert "html changes"

This reverts commit f9fc0e4872.

* Revert "Revert "html changes""

This reverts commit 7dc554a9e4.

* use std typst docs

* span

* paged

* paged

* html change

* paged

* html change

* bytes

* paged

* paged

* paged

* html changes

* paged

* html changes

* paged
2025-02-03 11:17:58 +08:00
Myriad-Dreamin
0f588c99d7
refactor: build and move comment and matcher crates to analysis crate (#1223) 2025-01-29 12:34:28 +08:00
Myriad-Dreamin
1b80d8c31d
feat: execute export and query on the task model (#1214)
* feat: extract id and doc id from config

* dev: merge `TaskWhen` and move `PathPattern`

* g

* dev: let it compile

* dev: rename a bit

* dev: finish cmd conversions

* dev: configure server

* dev: run export

* dev: clean code

* dev: parse gap on export

* fix: when test
2025-01-27 13:14:17 +08:00
Myriad-Dreamin
89c178295a
feat: initiate lockDatabase project resolution (#1201)
* feat: create a configuration

* docs: edit description

* docs: edit description

* feat: add lock update

* test: make configuration work
2025-01-20 12:45:23 +08:00
Myriad-Dreamin
ef4714c195
dev: make eco completion repr and reduce clones (#1079)
* dev: create pair

* dev: make eco completion repr

* dev: reduce some clones
2024-12-28 09:52:47 +08:00
Myriad-Dreamin
9c8d1461b7
refactor: merge completion stuff (#1074)
* dev: move two syntax completion to ext

* feat: move mode completion in ext.rs

* dev: clean code

* refactor: merge completion stuff

* test: update snapshot
2024-12-27 13:00:38 +08:00
Myriad-Dreamin
4f5c9c7735
feat: convert mode-aware snippets to static data (#982) 2024-12-11 13:58:08 +08:00
Myriad-Dreamin
d5c07b1ae3
refactor: move entry resolver to query crate (#944) 2024-12-04 13:13:26 +08:00
Myriad-Dreamin
3c98d574a2
feat: provide elementary font view (#932)
* dev: font view

* dev: tune functionality

* dev: add a todo
2024-12-03 12:20:27 +08:00
Myriad-Dreamin
ed79045588
dev: disable all runtime check to log::debug! (#912) 2024-11-29 19:52:42 +08:00
Myriad-Dreamin
ab3716d866
feat: postfix completion on values (#850)
* feat: postfix completion on values

* dev: delete an ovo-log
2024-11-19 13:36:14 +08:00
Myriad-Dreamin
d0b40dbfa6
feat: provide UFCS-style completion on content types (#849)
* feat: UFCS completion on content types

* dev: cleanup panics

* feat: add configuration about postfix completion

* test: update snapshot

* fix: lazily determine default values
2024-11-19 12:48:04 +08:00
Myriad-Dreamin
ccd3cea08c
feat: improve caches of calls and module exports type checking (#847)
* dev: optimize log on critical paths

* dev: optimize `check_module_item`

* dev: cache source queries

* dev: cache call checking

* dev: remove source cache
2024-11-18 17:20:05 +08:00
Myriad-Dreamin
78a4117ec6
fix: open exported files using rust's open crate (#838)
* fix: open exported files using rust's `open` crate

* feat: explorer as file opener on windows

* dev: link related issue
2024-11-17 22:08:13 +08:00
Myriad-Dreamin
3469e215eb
dev: refactor semantic_tokens crate (#809)
* dev: move semantic_tokens crate

* dev: remove bad comment
2024-11-14 02:39:26 +08:00
Myriad-Dreamin
61f2273e2e
dev: convert diagnostics without analysis snapshot (#805) 2024-11-13 23:51:48 +08:00
Myriad-Dreamin
d75fd7e74e
feat: render examples in docs (#772)
* feat: render examples in docs

* fix: create `hover-images` on `startHover`

* dev: update snapshot
2024-11-08 15:55:47 +08:00
Myriad-Dreamin
8f3566366e
refactor: refactor hover, analysis/global, and docs crates (#755)
* dev: refactor hover.rs

* refactor refactor AnalysisContext

* refactor: refactor docs crate
2024-10-31 10:07:31 +08:00
Myriad-Dreamin
c798d3037e
feat: show performance statistics in summary page (#743) 2024-10-29 11:16:59 +08:00
Myriad-Dreamin
81ebc8a635
feat: implement expression checker (#714)
* feat: implements expression checker

* dev: resolve information

* dev: delete def_use

* stage

* stage

* stage

* stage concurrent

* stage concurrent

* dev: better concurrency

* dev: final constant evaluation improvement

* dev: change reference site

* dev: handle comments

* dev: remove indirect import structure

* dev: adjust linked_def impl

* dev: finalize goto definition impl

* dev: replace all old import and def_use analyses with expr analysis

* dev: update expr_of snapshots

* dev: split def/expr, refactor definition

* dev: more consistent definition solver

* dev: rename definition crate

* dev: references work again

* dev: resolve root decl

* dev: resolve root decl

* dev: resolve global definitions

* dev: resolve tokens with world

* feat: render semantic tokens with expression information

* dev: loop detection

* dev: recover type checking

* dev: recover more type checking

* dev: refactor analysis context

* fix: process case of spread left

* dev: label inference

* dev: recover more signature checking

* dev: recover more ident reference checking

* dev: pass all tests

* Revert "dev: dirty changes"

This reverts commit 9ae2dacd0c96851e088feea76c61c184a1cf9722.

* test: update snapshot

* fix: bad cached signatures

* fix: slash problem
2024-10-25 23:52:11 +08:00
Myriad-Dreamin
406b6bcb34
feat: identify static path references in documents (#658)
* feat: identify static path references in documents

* test: update snapshot

* test: update snapshot
2024-10-11 12:16:37 +08:00
Myriad-Dreamin
7b0fb6036d
feat: issue import changes request during willRenameFiles (#648)
* feat: issue import changes request during `willRenameFiles`

* test: update snapshot

* fix: snapshot
2024-10-09 14:53:19 +08:00
Myriad-Dreamin
78f3893185
feat: provide package view and local documentation (#596)
* feat: move featured components

* feat: provide package view and local documentation

* stage

* fix: compile error by merged commits
2024-09-12 21:17:07 +08:00
Myriad-Dreamin
b8d933615d
feat: add label view (#570)
* feat: add label view

* fix: typo

* fix: snapshot

* chore: final tune
2024-08-27 19:31:57 +08:00
Myriad-Dreamin
85c459d4c8
feat: support vscode tasks for exporting query and pdfpc (#490)
* feat: support vscode tasks for exporting query and pdfpc

* test: update snapshot
2024-08-05 02:14:03 +08:00
Myriad-Dreamin
56e20b2590
feat: support vscode tasks for exporting html, md, and txt (#489)
* feat: support vscode tasks for exporting html, md, and txt

* chore: styling

* docs: update

* test: update snapshot
2024-08-05 01:00:25 +08:00
Myriad-Dreamin
140299f0ce
feat: support vscode tasks for exporting pdf, svg, and png (#488)
* feat: support vscode tasks for exporting pdf, svg, and png

* fix: parse errors

* dev: update fill, gap arguments

* fix: merged props
2024-08-04 23:41:52 +08:00
Myriad-Dreamin
103e0f3b3e
feat: support creation-timestamp configuration for exporting PDF (#439)
* feat: support creation-timestamp configuration for exporting PDF

* fix: respect config
2024-07-20 06:58:27 +08:00
Myriad-Dreamin
692b87eeb8
dev: introduce task concept and rewrite export actor as export task (#383)
* dev: introduce task concept and rewrite export actor as export task

* dev: delete useless code

* fix: export mode
2024-07-08 19:18:52 +08:00
Myriad-Dreamin
6fcad1c1c7
feat: prepare for parallelizing lsp requests (#342)
* feat: migrate steal_sync to snapshot_sync

* feat: correctly make world/analysis snapshot

* very rayon

* dev: recover async lsp request

* gg

* dev: pin

* fix: make server stable

* dev: disable concurrent server by default

* dev: very sync
2024-06-26 10:37:57 +08:00
Myriad-Dreamin
5e4e1e9877
refactor: pick state changes (#338)
* dev: make clippy happy

* refactor: pick state changes

---------

Co-authored-by: QuarticCat <QuarticCat@pm.me>
2024-06-23 12:31:03 +08:00
Myriad-Dreamin
95a68d2559
feat: implements experimental/onEnter (#328)
* feat: implements `experimental/onEnter`

* docs: update readme

* dev: update snapshot

* dev: allow configuration
2024-06-16 17:33:46 +08:00
Myriad-Dreamin
82e75f362a
feat: highlights all break points for that loop context (#317)
* feat: highlights all break points for that loop or block context

* docs: update readme

* dev: remove a debug logging

* QAQ
2024-05-26 17:44:32 +08:00
Myriad-Dreamin
f66d50c51f
dev: remove some interned uses (#279) 2024-05-13 21:04:10 +08:00
Myriad-Dreamin
fff227f3ae
dev: interning types (#271)
* refactor: a bit

* fix: named completion

* dev: replace complete_literal by complete_type

* dev: remove unused code

* dev: basic interner

* dev: basic types

* dev: type operations

* dev: migrate all type definitions

* dev: check syntax and builtin types

* dev: make TypeSimplifier simply work

* dev: make TypeDescriber simply work

* dev: make TypeChecker simply work

* dev: recover type check

* fix: context check

* fix: use after free in seen fields

* fix: typed with

* fix: record type on field

* dev: check type of constructors and element containing

* dev: show sig by type

* fix: mixed context checking

* QAQ

* >_<

* dev: fix documents
2024-05-11 21:12:49 +08:00
QuarticCat
94a0a1b23a
refactor: clean code & fix suffix computation & combine export actors (#263)
* dev: use bail! macro

* dev: remove redundant arg structures as we have inlay hints

* dev: unify actor namings

* dev: unify actor namings (cont)

* fix: suffix computation

* dev: add EditorActor::new

* dev: unify index file flavors

* dev: combine export actors

* dev: small tweaks

* dev: mimic try blocks

* dev: accumulate export requests

* dev: remove unnecessary Option

* dev: unify serde renames

* dev: remove unnecessary Option

* dev: small tweaks
2024-05-09 08:57:44 +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
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
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
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
7e453872b1
dev: init summary page (#137)
* feat: add summary frontend

* dev: init summary page

* build: update cargo.lock

* feat: init diagnostics frontend

* build: update snapshot hash
2024-04-01 10:16:26 +08:00