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

Port syntax engine #66

Open
mtreca opened this issue Dec 14, 2020 · 0 comments
Open

Port syntax engine #66

mtreca opened this issue Dec 14, 2020 · 0 comments
Labels

Comments

@mtreca
Copy link
Collaborator

mtreca commented Dec 14, 2020

This is definitely more of a "someday" task than an immediate need.

After looking a bit closer at gnuplot-context, I realized that gnuplot.el provides its own context-aware completion engine by defining a subset of the gnuplot language grammar and uses it to parse data for completion. While this is impressive in its own right, I wonder if there are no built-in tools in Emacs that would allow to directly define the gnuplot grammar and would do the parsing for us, which would alleviate the maintenance cost of 2k+ lines of non-trivial elisp.

After looking for built-in solutions, semantic seems to be a viable option, and would allow nice integration of other built-in tools (eldoc and info come to mind, since this package manages these as well).

Now this is definitely not something I feel like I could implement easily myself (at least in the near future), but I would like to give it a try at some point to get better at elisp. If anyone else would like to give it a go, they are more than welcome to open a PR and/or contact me on the matter.

@mtreca mtreca added the Someday label Dec 14, 2020
@mtreca mtreca self-assigned this Dec 14, 2020
@mtreca mtreca changed the title Port syntax engine to Semantic Port syntax engine Dec 14, 2020
@mtreca mtreca removed their assignment Jan 5, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant