Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade codemirror with new parser #2980

Merged
merged 18 commits into from
Jan 17, 2025
Merged

Upgrade codemirror with new parser #2980

merged 18 commits into from
Jan 17, 2025

Conversation

fonsp
Copy link
Owner

@fonsp fonsp commented Aug 6, 2024

@savq did incredible work on the Julia parser! JuliaPluto/lezer-julia#7

Fix #2943

fonsp and others added 2 commits August 5, 2024 13:14
Co-Authored-By: Sergio A. Vargas <savargasqu+git@unal.edu.co>
Copy link
Contributor

github-actions bot commented Aug 6, 2024

Try this Pull Request!

Open Julia and type:

julia> import Pkg
julia> Pkg.activate(temp=true)
julia> Pkg.add(url="https://github.com/fonsp/Pluto.jl", rev="codemirror-savq")
julia> using Pluto

Co-Authored-By: Sergio A. Vargas <savargasqu+git@unal.edu.co>
@fonsp
Copy link
Owner Author

fonsp commented Aug 6, 2024

@savq mabye you could help with updates to lezer_template and scopestate_statefield? I think the rest is easy enough for me :)

@fonsp
Copy link
Owner Author

fonsp commented Jan 3, 2025

This PR got stuck because of the pattern matching code by dralletje. I gave it a try but this is way to hard to update, I'm declaring it unmaintainable!

Since we barely use the pattern matching and scopestate system, I will look into removing it and rewriting functionality into simpler (less precise) tree traversal code.

fonsp added 4 commits January 17, 2025 13:27
* Remove frontend AST pattern matching (WIP)

* pkg bubble plugin without lezer template

* uhmmm

* remove log

* write new scope analysis based on TreeCursor and remove old code

* more precise function stuff

* support for loop, fix weird iteration

* Support try catch, fix console group, comments

* Support module, quote, :, do

* New API: Pluto.is_single_expression (#3134)

* Update scopestate_statefield.js

* Fix #3136

* Fix #3136

* Update scopestate_statefield.js

* Fix bracket matching

* Update block_matcher_plugin.js

* Update scopestate_statefield.js

* fix ts errors

* Support scope in generator expressions
@fonsp fonsp marked this pull request as ready for review January 17, 2025 13:19
@fonsp
Copy link
Owner Author

fonsp commented Jan 17, 2025

Ready! Merging soon :)

@fonsp fonsp merged commit b64cdc7 into main Jan 17, 2025
11 of 13 checks passed
@fonsp fonsp deleted the codemirror-savq branch January 17, 2025 22:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment