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

replace awk #7

Open
ergodicbreak opened this issue Jan 12, 2025 · 12 comments
Open

replace awk #7

ergodicbreak opened this issue Jan 12, 2025 · 12 comments

Comments

@ergodicbreak
Copy link

Though integrating the TADS vscode plugin's lsp server with this mode will be a good fit for most users, it might not be practical for me to install a nodejs based server on my OS so I wanted to float the idea of replacing awk with something I can understand ;). So users of the mode would have a choice of either lsp or something like Etags or Semantic (which are built in to Emacs I believe, so we lose the dependency on awk as well).

I'm more than willing to do the work myself, but what do you think of ditching awk in general?

@alexispurslane
Copy link
Collaborator

alexispurslane commented Jan 12, 2025

I would absolutely love to replace awk with etags or semantic if you're willing to do the work while I work on LSP support. I briefly messed with trying to switch to etags, but I don't really understand how it works and I couldn't get it to really work with Tads syntax, and I already had the language server in mind as my ultimate goal since that would greatly decrease my maintenance burden and increase the quality of the available completions and so on. So it didn't feel worth continuing. But if you're willing to do it, then I'd be perfectly happy to support both options and let people use whatever they want. I will note though that the Visual Studio Code Tads Language Server is actually distributed on the releases page as a standalone binary.

@ergodicbreak
Copy link
Author

I will note though that the Visual Studio Code Tads Language Server is actually distributed on the releases page as a standalone binary.

Oh I had no idea! Thanks for mentioning. Maybe I'll give that a try then first and see how far into the pain cave I'm willing to go. Since the mode is working for me atm it's not urgent.

@alexispurslane
Copy link
Collaborator

alexispurslane commented Jan 12, 2025 via email

@alexispurslane
Copy link
Collaborator

@ergodicbreak I don't have any other way to contact you, so just to let you know: I think I've got the tads LSP working, check the lsp branch. It wasn't hard, I just needed to stop procrastinating and do it lol

@ergodicbreak
Copy link
Author

ergodicbreak commented Jan 13, 2025

That's good to hear! I experimented with the binary today. It's going to take some work for me to use it -- my OS distro doesn't use a typical filesystem so I have to figure out the dependency paths, but I think it's doable. I don't want to put too much time into it right now if I actually want to write a game ;).

Btw, I am George at intfiction.

@alexispurslane
Copy link
Collaborator

alexispurslane commented Jan 13, 2025 via email

@ergodicbreak
Copy link
Author

ergodicbreak commented Jan 13, 2025

It's Guix. Basically it doesn't use the FHS, so when I run the binary I'll have to add its dependencies to the library paths. At least I think that's all I have to do. There's probably a lot more I'm missing ;).

@alexispurslane
Copy link
Collaborator

alexispurslane commented Jan 13, 2025 via email

@ergodicbreak
Copy link
Author

ergodicbreak commented Jan 13, 2025

Yes, that's an option, but then I think I'll have to run my Emacs in that too. Or if I don't there will probably be a lot more config to do. It's possible, but I think I'll want to integrate it into my main system if I can.

@alexispurslane
Copy link
Collaborator

alexispurslane commented Jan 13, 2025

Yes, that's an option, but then I think I'll have to run my Emacs in that too. Or if I don't there will probably be a lot more config to do. It's possible, but I think I'll want to integrate it into my main system if I can.

Can't you create an alias or script for running a guix shell that directly runs the language server, and then have Emacs use that as the language server? It shouldn't require any extra config

Or, alternatively, you could try setting emacs TRAMP up to enter guix shells

@ergodicbreak
Copy link
Author

That might be possible -- the thing is the FHS shell is in a container which by nature is isolated from the main system. However you can pass thru networking and filesystem access so it's worth exploring.

@alexispurslane
Copy link
Collaborator

That might be possible -- the thing is the FHS shell is in a container which by nature is isolated from the main system. However you can pass thru networking and filesystem access so it's worth exploring.

You could look at what distrobox does to create containers well integrated with the host

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants