Commit graph

42 commits

Author SHA1 Message Date
Olivier Goffart
28ae8f7bc4 Refactoring: split ElementType away from the types used as property type
These are two different concept, and it is confusing to keep them in the
same enum

We want to support component without any base element, and Void is
already used for global component, so do this refactoring before
2022-10-26 14:50:44 +02:00
Olivier Goffart
70e8dedb75 Remove leftover dbg! 2022-10-21 12:15:48 +02:00
Olivier Goffart
94a37c8e16 Move dark-color-sheme builtin in an internal namespace 2022-10-19 15:23:41 +02:00
Olivier Goffart
c5ea3e842d LSP: do not auto-complete globals in place of elements 2022-06-01 14:55:38 +02:00
Olivier Goffart
42c7b8819d LSP: Auto-complete types that are not yet imported, and add the import 2022-06-01 14:55:38 +02:00
Olivier Goffart
8f03e2cff1 WIP: make the vscode extension work as web extension
This refactor the LSP to be possible to compile for wasm.
When using wasm we can't use the lsp-server crate because that one use the
stdin/stdout to communicate.
Instead, we need will do the communication in TypeScript using the vscode
language server protocol library, and serialize the types to wasm. Fortunately
that's easy because the lsp-types crate contains all the serialized types.

This also "duplicate" the extension as a web extension that do not use process
to start the LSP, but use a web worker. Some of the extension code could
be refactored to avoid some duplication (like the status bar handling and such).
And add a "browser" entry point in the package.json

Finally, add a browserServerMain.ts entry point for our worker, it will try to load
the wasm code.

Currently this doesn't wirk: the browserServerMain.ts can't load the wasm.

Also todo is to write the code so that the wasm code can send the response and
notifications.

To debug, I type these commands in editor/vscode directory

    npm run compile-web
    code --extensionDevelopmentKind=web --extensionDevelopmentPath=$PWD   ../..
2022-05-31 17:44:56 +02:00
Olivier Goffart
f611651bb7 LSP: Fix auto-completion of @-macros 2022-05-19 19:22:56 +02:00
Tobias Hunger
4230ac2572
Update copyright information to reflect name change
Also run resue over the codebase and fix complaints from that tool.
2022-02-09 10:27:47 +01:00
Tobias Hunger
de4e195280
Rename internal crates and add a README.md to them
The README.md contains the warning that used to be in lib.rs.

Add README.md files to all internal crates

... pointing to the official public crate to use instead.

Rename internal crates

fixup: README files

fixup rename
2022-02-07 13:12:48 +01:00
Simon Hausmann
cab22f8355 Rename the sixtyfps-compilerlib crate 2022-02-01 18:08:18 +01:00
Tobias Hunger
bfca0e3573 Mass update copyright messages to be more REUSE compliant 2021-12-22 10:06:12 +01:00
Olivier Goffart
0436ce2399 Allow to access color names form the Colors namespace 2021-12-08 16:35:11 +01:00
Olivier Goffart
639c358896 Refactor the LookupResult
Separate Enumeration and Expression, so get rid of the isize::MAX hack
And this will allow having more non-expression results (eg: namespaces)
2021-12-08 16:35:11 +01:00
Olivier Goffart
56d592100e Update a few dependencies 2021-10-21 12:24:48 +02:00
Olivier Goffart
5d9608a565 Keep the Rotate element as internal 2021-08-09 17:43:22 +02:00
Olivier Goffart
b6137ecbc4 Error when trying to use internal builtin items 2021-08-09 17:43:22 +02:00
Tobias Hunger
bac4d895ce Janitor: Fix clippy::while_let_on_iterator 2021-08-09 13:19:34 +02:00
Tobias Hunger
c74565a883 Janitor: Fix clippy::needless_return 2021-08-04 22:50:35 +02:00
Tobias Hunger
24a2021226 Janitor: Fix clippy::needless_borrow 2021-08-04 22:50:35 +02:00
Tobias Hunger
ce4727b2e8 Janitor: Fix clippy::single_char_pattern 2021-08-04 22:50:35 +02:00
Tobias Hunger
5cf23f102e Janitor: Fix clippy::redundant_pattern_matching 2021-08-04 22:50:35 +02:00
Olivier Goffart
0766ebbd0d LSP: update the lsp-types crate version 2021-07-22 09:19:41 +02:00
Olivier Goffart
d7402be076 LSP: properly classify callback aliases in auto-complete
Otherwise the completion is wrong as it tries to complete
with `:` instead of `=>`
2021-07-15 11:10:05 +02:00
Olivier Goffart
13bd828b96 Update license date 2021-07-02 15:55:54 +02:00
Olivier Goffart
715d38903f Allow to omit the type of aliases 2021-06-07 10:48:09 +02:00
Olivier Goffart
1537a60712 LSP: auto-complete for the reserved property
Which includes the layout properties
2021-05-28 15:03:45 +02:00
Olivier Goffart
91b43017ad Fix build 2021-05-20 18:28:52 +02:00
Olivier Goffart
f871867608 WIP: formater tool 2021-04-29 13:44:12 +02:00
Olivier Goffart
847f3b26e4 Hide internal type in auto-completions 2021-04-23 15:06:37 +02:00
Olivier Goffart
63844a5907 LSP: auto-completion in paths
For import and @image
2021-04-18 15:16:12 +02:00
Olivier Goffart
04f4428965 More snippet support 2021-04-18 13:30:04 +02:00
Olivier Goffart
80e92e3ed5 LSP: Use snippets for keyword completion 2021-04-18 13:14:41 +02:00
Olivier Goffart
1268844c40 LSP: keyword computation only need to be done at the element level 2021-04-18 12:39:19 +02:00
Olivier Goffart
a31b8f51d9 LSP: d-duplicate some code 2021-04-17 12:50:47 +02:00
Olivier Goffart
06f2223bb2 LSP: move code around 2021-04-17 12:50:47 +02:00
Olivier Goffart
a83449b630 LSP: type completion 2021-04-17 09:32:46 +02:00
Olivier Goffart
b94ea38965 LSP: completion in second level of expressions 2021-04-17 08:31:17 +02:00
Olivier Goffart
3a167710b9 LSP: Have expression autocompletion in more contexts 2021-04-17 00:16:59 +02:00
Olivier Goffart
7d6bcc40be LSP: Use the recently refactored lookup system 2021-04-16 23:41:59 +02:00
Olivier Goffart
ad298a309f WIP: LSP autocompletion of expression 2021-04-16 23:41:59 +02:00
Olivier Goffart
546d4aa689 LSP: completion of property names in binding
If there is already a ':' or a '=>'
2021-04-16 11:34:21 +02:00
Olivier Goffart
4ce2929b34 LSP: Move the completion code to its own module 2021-04-16 07:59:16 +02:00