Commit Graph

54 Commits

Author SHA1 Message Date
XeroOl
b2c3c04bfe Completions now come with some doc info 2023-06-02 17:34:19 -05:00
XeroOl
a1169308d3 completions on multisyms 2023-05-27 21:28:42 -05:00
XeroOl
7f8942fde6 Support completions of x: symbols 2023-05-27 21:10:49 -05:00
XeroOl
61899dd6c5 change some matches to case 2023-05-27 21:09:58 -05:00
XeroOl
deb571092b Only suggest macros/specials in call position
I know that sometimes macros can sometimes take macro/special arguments
in places other than the call position, but I'm not supporting that for
now. If you're writing code like (-> 1 /), the / won't be offered as a
completion suggestion.
2023-05-27 14:14:40 -05:00
XeroOl
a521701dba Fix "unused variable" lint not counting mutating sets as a use 2023-05-26 18:17:15 -05:00
XeroOl
8c33a46d6d fix crash when compiling: (fn undefined.x []) 2023-05-05 16:45:17 -05:00
XeroOl
fbfd7cdaaa Options over LSP
Fennel-ls now can receive options from the language client over the
protocol. Future work still necessary to have project-local files.
2023-05-02 23:55:37 -05:00
XeroOl
f053a606a3 small optimization 2023-04-21 16:02:40 -05:00
XeroOl
f0b6a2672d textDocument/references, and an unused var lint 2023-04-14 16:18:10 -05:00
XeroOl
2eb99a7283 Update fennel to version 1.3.1
There is a new fennel branch on my fork of fennel called extra-hooks-3
which is up to date with fennel 1.3.1 and has the extra hooks necessary
for the server.

Also, some of the error messages need to be updated to match with fennel
1.3.1's changes.
2023-02-22 23:36:14 -06:00
XeroOl
70e434839f
update internal fennel version to ~xerool/fennel extra-hooks-2 2022-11-11 12:46:56 -06:00
XeroOl
a13483185b
Refactoring and test for path settings 2022-09-23 00:03:10 -05:00
XeroOl
a86c52f33a
Add settings (untested / undocumented) 2022-09-22 00:44:10 -05:00
XeroOl
566b475ff8
refactoring and starting to implement settings 2022-09-21 21:26:55 -05:00
XeroOl
cd4358a4b7
Parse errors are on the correct line number now 2022-09-18 13:05:35 -05:00
XeroOl
5c4d0530f8
consider which part of a multisym the cursor is on
For goto-definition and hovering.
2022-09-17 20:01:25 -05:00
XeroOl
bf10c5b8bd
New changes to fennel to support malformed sym 2022-09-17 09:24:01 -05:00
XeroOl
1714526820
Update internal version of fennel
This update makes (->) and (doto) etc. slightly friendlier to fennel-ls.
2022-09-09 21:46:04 -05:00
XeroOl
06d3787f66
";; fennel-ls: macro-file" for macro files
Temporary quick fix for editing macro files, since I've been doing a lot
of work in macro files recently. I hope that in the future there will be
better ways to do this than magic comments. I think there are probably
much better heuristics that could be used.
2022-09-09 21:43:58 -05:00
Phil Hagelberg
3eeebdbf11
Build a shebanged executable instead of a binary.
This makes the build itself a lot more portable. The executable of
course relies on lua being installed on the machine, but this will
nearly always be the case for a program used by Fennel developers.

Bonus: removes the direct use of the fennel.utils module which was
only used for the table? function and was causing a warning.
2022-09-08 11:41:01 -05:00
Phil Hagelberg
783b1858b2
Don't assume newfile is nonnil before using it. 2022-09-08 11:39:51 -05:00
XeroOl
06a6e8c7ea
Remove error response when hovering over nothing 2022-09-07 21:19:36 -05:00
XeroOl
0d8b927929
goto-definition with injected fields (fn a.b []) 2022-09-03 12:52:34 -05:00
XeroOl
b2540e53cb
Fixed indirect table field completions 2022-09-03 12:00:46 -05:00
XeroOl
6b642f1d9b
Refactor :?definition to :definition 2022-09-02 18:20:09 -05:00
XeroOl
3f92a293b5
patch 2022-09-02 12:02:44 -05:00
XeroOl
3cab59622c
The parser is more robust under error 2022-09-01 23:20:38 -05:00
XeroOl
89eb07c064
adjust parents, and take advantage of hooks for better completions 2022-09-01 01:03:59 -05:00
XeroOl
b9d084fada
Upgrade fennel to ~xerool/fennel for extra hooks 2022-09-01 01:02:19 -05:00
XeroOl
69fcd63fad
goto definition understands (let) 2022-08-30 22:30:39 -05:00
XeroOl
2c47e61f2c
Refactoring / comments 2022-08-29 10:10:09 -05:00
XeroOl
82d7913c45
rewrite of find-symbol in preparation for completions 2022-08-28 00:40:46 -05:00
XeroOl
5ac7561f05
updated fennel 2022-08-28 00:38:21 -05:00
XeroOl
ddc9539bdf
bump fennel version to custom build
Temporarily bump fennel to a "fork" until my patch is merged upstream
in fennel's repo.
2022-08-24 23:13:36 -05:00
XeroOl
3eeba96188
Refactoring / documentation comments / small fixes 2022-08-24 23:12:28 -05:00
XeroOl
224684d688
refactoring and README update 2022-08-20 16:07:14 -05:00
XeroOl
a09035dabc
Refactor 2022-08-19 09:43:58 -05:00
XeroOl
22b4235073
Adds support for hovering over symbols 2022-08-14 23:06:28 -05:00
XeroOl
c2cd1e50fe
Improved goto-definition sifting destructures 2022-08-13 14:20:40 -05:00
XeroOl
44e7158e7d
Somehow even more refactoring 2022-08-09 01:20:58 -05:00
XeroOl
e57833f1e5
more refactoring churn for no reason 2022-08-08 18:11:20 -05:00
XeroOl
f610201b9d
Big refactoring 2022-08-07 22:46:34 -05:00
XeroOl
bb13e9b809
refactoring 2022-08-07 22:10:55 -05:00
XeroOl
80d4455ed3
find definition is more advanced but more brittle 2022-08-07 18:47:18 -05:00
XeroOl
61947d3219
Goto definiton for destructuring 2022-08-04 00:33:50 -05:00
XeroOl
42850a76e0
Refactoring 2022-08-02 22:54:29 -05:00
XeroOl
4847179afd
Created a compiler plugin, local go-to-definition 2022-08-02 18:18:03 -05:00
XeroOl
052f9a67d0
reduce the prevelance of penlight 2022-08-01 18:21:27 -05:00
XeroOl
01f76e4c4f
added all of the code 2022-08-01 14:12:42 -05:00