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
oxalica
c361e61da0
Show docs for builtin completions
2022-09-22 18:48:16 +08:00
oxalica
cf182a8ca4
Generate builtins from Nix
2022-09-22 18:26:56 +08:00
oxalica
039ae629eb
Support renaming inherit
ed names
2022-09-21 18:58:23 +08:00
oxalica
2f0231fde9
Move server capabilities into an individual mod
2022-09-21 17:28:42 +08:00
oxalica
6a7ecb4386
Impl LSP settings
2022-09-21 17:24:14 +08:00
oxalica
9bc685c1c8
Add instructions to run fuzzer
2022-09-20 19:56:37 +08:00
oxalica
f36ec4af63
Prettify syntax error messages
2022-09-20 19:53:34 +08:00
oxalica
5cab069314
Monomorphize UnexpectedToken error
2022-09-20 19:53:24 +08:00
oxalica
1463d498b5
Enhance error recovery for incomplete syntax
2022-09-20 18:16:07 +08:00
oxalica
d31baa16cb
Fix highlighting of or
2022-09-20 16:25:45 +08:00
oxalica
ae6981ea32
Impl incremental text change
2022-09-19 09:28:17 +08:00
oxalica
15cd08d0d0
Shrink and update dependencies
2022-09-19 09:28:17 +08:00
oxalica
0ab60fdff0
Unify naming of bijection getters to A_for_B
for B -> A
2022-09-19 09:28:17 +08:00
oxalica
8a1a899cff
Tweak VFS API to simplify usage
2022-09-19 09:28:17 +08:00