1
1
mirror of https://github.com/oxalica/nil.git synced 2024-12-01 22:45:44 +03:00
Commit Graph

75 Commits

Author SHA1 Message Date
oxalica
1f5d8ceee0 Simplify and fix tests for assists 2022-11-24 23:07:31 +08:00
oxalica
f1304942e3 Fix rust 1.64 compatibility
nixpkgs still have rust 1.64 on master.
2022-11-24 19:20:42 +08:00
oxalica
8d32b2a081 Impl code action for converting to inherit 2022-11-24 03:43:03 +08:00
oxalica
bea40f71fc Impl string unescaping by parts 2022-11-17 03:11:21 +08:00
oxalica
c4bcb3015b Impl indent string stripping 2022-11-17 02:59:14 +08:00
oxalica
276615a48d Add tests for syntax::semantic 2022-11-16 23:11:27 +08:00
oxalica
170f89761d Complete and add tests for AST getters 2022-11-16 22:40:36 +08:00
oxalica
4087d3acde Optimize searching let and rec in Attrset 2022-11-16 21:39:53 +08:00
oxalica
1ac520b784 Refactor Attrset desugaring and move out some logic 2022-11-16 21:22:27 +08:00
oxalica
3fa46cc956 Track Attr source info in Ty 2022-11-14 20:17:34 +08:00
oxalica
dfffc45c35 Simplify and unify convertion helpers 2022-11-11 05:56:39 +08:00
oxalica
a13e89c622 Fix dead lock in apply_vfs_change 2022-11-11 05:26:55 +08:00
oxalica
d0a5ea4364 Fix PID waiter impl 2022-11-10 16:31:59 +08:00
oxalica
93f15d882f Impl document links 2022-11-10 03:31:23 +08:00
oxalica
3749c6bb3a Keep literal strings during lowering 2022-11-10 03:31:23 +08:00
oxalica
e3ce3bfca0 Move identifier check and quoting into syntax 2022-11-10 01:25:01 +08:00
oxalica
1e3fdf59cb Fix type for condition expr of if 2022-11-09 23:07:15 +08:00
oxalica
f43380d009 Tweak type formatter 2022-11-07 14:47:06 +08:00
oxalica
e8659c2e08 Fix clippy 2022-11-07 13:58:56 +08:00
oxalica
3171734d0d Show hover message for selection Attr 2022-11-07 13:56:25 +08:00
oxalica
72db1ef2bc Impl completion triggered . and ? 2022-11-07 12:58:01 +08:00
oxalica
2997e14a66 Fix completion inside non-last Attr 2022-11-07 12:29:30 +08:00
oxalica
d714bedf1e Construct empty NAME nodes for recovery 2022-11-07 11:24:30 +08:00
oxalica
efca332ce9 Complete attrset fields 2022-11-07 10:50:59 +08:00
oxalica
2cd3354204 Show types in hover messages 2022-11-07 09:35:09 +08:00
oxalica
8e4b0d6764 Initial impl for type inference 2022-11-07 09:14:10 +08:00
oxalica
19871b3842 Move string-related desugaring into syntax crate 2022-11-03 03:41:03 +08:00
oxalica
c064894105 Monitor client process's liveness on Linux
Some client use UNIX domain sockets for communitation. But they are not
automatically closed when the client exits abnormally, resulting leaked
server instances.
2022-10-22 14:24:51 +08:00
oxalica
c84d1619d0 Refactor API of VfsPath 2022-10-11 02:44:14 +08:00
oxalica
756be130c8 Handle workspace/didChangeWatchedFiles
This notification is sent unexpectedly by VSCode, observed in #24.
2022-10-04 05:06:55 +08:00
oxalica
2a9dcd5b15 Resolve Path to VfsPath instead of FileId
This allows resolving to files not loaded. File existence check is
delayed to LSP server side.
2022-10-04 05:01:50 +08:00
oxalica
eb71b56015 Fix lost root changes 2022-10-04 04:03:19 +08:00
oxalica
31b714f3da Use absolute VfsPath and remove file preloading
We currently don't enable any workspace features.
Reading file on demand can be more robust and memory efficient.

Fixes #21
2022-09-28 17:56:20 +08:00
oxalica
ec7d3490f2 Report duplicated lambda parameters 2022-09-27 22:41:22 +08:00
oxalica
ac84014360 Clarify build requirements and add CI 2022-09-27 22:23:22 +08:00
oxalica
5f1eab84a6 Async diagnostics calculation 2022-09-27 21:20:36 +08:00
oxalica
ca9c97143b Impl multi-threading and request cancellation 2022-09-27 21:09:03 +08:00
oxalica
fedf5eb649 Reorganize server states 2022-09-26 17:54:08 +08:00
oxalica
f535de51d1 Impl file formatting via external command
Fixes #12
2022-09-26 15:54:01 +08:00
oxalica
764c2be3bc Use last_line instead of line_count 2022-09-26 15:13:48 +08:00
oxalica
16c255449a Impl basic support for document symbol hierarchy
Currently the tree is flattened to LetIn and *Attrset nodes. Only
binding names are listed.

Fixes #16
2022-09-26 02:04:51 +08:00
oxalica
5f53c3c83e Recalculate all diagnostics after config change 2022-09-26 00:23:46 +08:00
oxalica
a370df35c9 Impl diagnostic filter 2022-09-25 23:47:58 +08:00
oxalica
fe625a2692 Decouple error messages for human from tests 2022-09-25 21:40:28 +08:00
oxalica
ad1b27a6d8 Parse Expr in Binding-position as recovery 2022-09-25 21:40:28 +08:00
oxalica
8f9882d1ad Always wrap error syntax in ERROR nodes
This prevents error tokens accidentally affect the container node, eg.
the dangling `let` inside an Attrset.

Fixes #20
2022-09-25 21:39:52 +08:00
oxalica
02be7d9628 Tweak builtins and hint user about missing docs 2022-09-23 18:52:47 +08:00
oxalica
c785fc55f4 Show incomplete syntax as errors by default
Fixes #11
2022-09-22 22:32:11 +08:00
oxalica
c71d4b7070 Fix build and show hints when nix is not found 2022-09-22 21:30:19 +08:00
oxalica
f94b668d25 Impl hover for names 2022-09-22 20:12:47 +08:00