cfiggers / vscode-janet-plus-plus Goto Github PK
View Code? Open in Web Editor NEWThis project forked from janet-lang/vscode-janet
Janet language support for Visual Studio Code
License: Other
This project forked from janet-lang/vscode-janet
Janet language support for Visual Studio Code
License: Other
For instance, I have a local variable called retry
. When I write the name of the variable and press enter, it's auto-expanded to render-texture-ready?
from jaylib. Top-level bindings don't seem to have this problem.
Hi,
when i import the janet json module i get the following error.
(import json :prefix "")
"could not load native /usr/local/lib/janet/json.so: config mismatch - host 1.31.0(0001) vs. module 1.32.1(0001)".
i reinstalled janet 1.32.1, recompiled json, changed the language server etc.
which config is meant? or where does this error come from?
System:
Distributor ID: Ubuntu
release: 22.04
thanks, Felix
Currently the lexer recognizes only "regular" (short?) strings (i.e., those wrapped with "
regular quotation marks). Janet supports long strings, which currently is not recognized by the lexer.
This causes the janet:cursorInString
flag to be false even when the cursor is inside of a long string.
This causes structural editing features to misbehave when the cursor is inside a long string.
Also, auto indentation inside long strings is unpredictable.
Currently, Ctrl + Arrow key invokes Janet Paredit: Move Cursor [Forward | Backward or Up] Sexp/Form
(aka janet.paredit.backwardSexp
). That's good in code, but really annoying in a comment (where it would be better to only do cursorWordLeft
/cursorWordRight
).
Currently, having ;
anywhere in a form causes the autoformatter to choke.
Looks like ; is not handled in parser/core.cljs—look at
Will probably need a new node type added as well (Clojure doesn't have an equivalent to splice)
Caused by removing the "raw" flag from janet
invocation because not being able to use arrow keys in the REPL was bugging me so much. But now it's caused this new annoying issue.
I added a new module to my local code during a session. Janet++ told me the imported bindings didn't exist. Restarting VS Code fixed the problem.
I'm using the v.1.1.2 prerelease.
I'm attempting to use Janet++ in a small project and see this error when the LSP attempts to start:
error: nil called with 2 arguments, possibly expected 1
in <anonymous> [src/main.janet] on line 212, column 13
in map [boot.janet] on line 998, column 3
in find-unique-paths [src/main.janet] on line 212, column 8
in main [src/main.janet] (tailcall) on line 228, column 14
in run-main [boot.janet] on line 3936, column 16
in cli-main [boot.janet] on line 4076, column 13
I'm running Janet 1.32.1-meson
on Mac OS and VSCode 1.83.1
Currently will re-format Janet's anonymous function macro, which should look like this:
|(fn args)
to this instead:
| (fn args
Fortunately doesn't cause anonymous function to break (Janet ignores the whitespace) but should still fix.
Probably as simple as adding |
to a regex somewhere that handles prefixes (like #
or @
in other places).
feature request
You should have the possibility to set the path in the plugins settings to your own language server version. Default should be the language server, which is delivered with the extension.
Maybe the user can also set an environment variable to the path of the language server in his operating system. If this is set, this can also be selected as default.
It is important that the extension handles the path differently in operating systems like linux or windows.
The "evaluate expression" command in Janet++ has a few peculiarities compared with pretty much every other evaluate-in-editor plugin I've used:
I'm using v1.1.1 pre-release. Thanks for this project; I was really pleased to see that someone was working on this sort of thing.
Right now, the best/only way to reboot the LSP is to refresh the entire editor window, which is not best.
Create a new Janet file. Type a top-level def-
binding. Start typing the bound identifier. Incomplete versions of the name appear in the completion list. For instance, if the identifier is circumference
, completion will suggest ci
, cir
, circ
, circu
, etc.
The following macros from the core API currently indent like normal tuples rather than like do
:
compwhen
coro
defer
edefer
ev/do-thread
ev/spawn
ev/span-thread
ev/with-deadline
ffi/defbind
fiber-fn
forever
for
forv
generate
label
prompt
protect
repeat
when-with
with
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.