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

Why not atom-beautify? #1

Closed
aminya opened this issue Nov 14, 2020 · 15 comments
Closed

Why not atom-beautify? #1

aminya opened this issue Nov 14, 2020 · 15 comments

Comments

@aminya
Copy link
Member

aminya commented Nov 14, 2020

Regarding formatting, I really love the idea of unibeautify. It is written by the same author who wrote atom-beautify.
https://github.com/Unibeautify/
https://github.com/Glavin001/atom-beautify
If we renew atom-beautify, we can get a decent beautifier!

@UziTech
Copy link
Member

UziTech commented Nov 14, 2020

Then we still have settings hell. I for one would rather install just the languages that I need. I will never use most of the beautifiers, why should I downloading them?

@UziTech
Copy link
Member

UziTech commented Nov 14, 2020

And we can definitely have both ways. If someone wants atom-beautify they can use that one.

@aminya
Copy link
Member Author

aminya commented Nov 14, 2020

We should not start from scratch while we already have one of the best packages. We should still contribute to atom-beautify.

Then we still have settings hell. I for one would rather install just the languages that I need. I will never use most of the beautifiers, why should I downloading them?

Atom beautify does not require any specific setting. It just integrates with the language you want.
https://github.com/Glavin001/atom-beautify#beautifiers

If there are issues in that, we should contribute and try to fix them.

I would rather use unibeautify and atom-beautifier which handle everything for us. Having separate packages for each language results in a package-hell. It is impossible to maintain all those packages.

And we can definitely have both ways. If someone wants atom-beautify they can use that one.

I am OK with just providing a service for others to use. But I am not interested in maintaining separate packages for each language.

@UziTech
Copy link
Member

UziTech commented Nov 14, 2020

Having separate packages for each language results in a package-hell.

How many languages do you format? For me it is about 3 or 4. The other 100 or so beautifiers from atom-beautify are just taking up space on my computer for no reason.

I am OK with just providing a service for others to use. But I am not interested in maintaining separate packages for each language.

I agree

@UziTech
Copy link
Member

UziTech commented Nov 14, 2020

If there are issues in that, we should contribute and try to fix them.

Good luck they are almost as bad as minimap maintainers. There has been an issue in eslint that we have been trying to fix since 2018 with no response in over a year: Glavin001/atom-beautify#2147

@UziTech
Copy link
Member

UziTech commented Nov 14, 2020

That is one reason I created eslint-format

@UziTech
Copy link
Member

UziTech commented Nov 14, 2020

I suppose I could move this to the @AtomFormat org but I thought since it was part of atom-ide I would start here.

@aminya
Copy link
Member Author

aminya commented Nov 14, 2020

How many languages do you format? For me it is about 3 or 4. The other 100 or so beautifiers from atom-beautify are just taking up space on my computer for no reason.

There is a solution to this issue. We should make the installation lazy based on the grammar of the file that the user wants to format.

Good luck they are almost as bad as minimap maintainers. There has been an issue in eslint that we have been trying to fix since 2018 with no response in over a year: Glavin001/atom-beautify#2147

Their license is MIT. So forking and releasing it is not an issue.
Although I still try to avoid forking.

I opened an issue in their new repository.

Unibeautify/unibeautify#272

I suppose I could move this to the @AtomFormat org but I thought since it was part of atom-ide I would start here.

As I said, I am OK with providing the service. However, if we get access to atom-beautify, we can add the service to that package.

@UziTech
Copy link
Member

UziTech commented Nov 14, 2020

we can add the service to that package.

That has been brought up in atom-beautify before and they said they don't want to do that.

@aminya
Copy link
Member Author

aminya commented Nov 15, 2020

Let's wait for a few days. If we did not get any answer, we can fork the repo. We can change its name to atom-ide-format.

@UziTech
Copy link
Member

UziTech commented Nov 15, 2020

We could create a package with just the service (like this package) then create a unibeautify package that uses the service from this package. That way everyone wins and we can keep concerns separate.

@aminya
Copy link
Member Author

aminya commented Mar 4, 2021

atom-languageclient supports code-format. Does this repo provide a package for that?

@UziTech
Copy link
Member

UziTech commented Mar 4, 2021

Ya we haven't released it yet but this is the package that it would work with.

@aminya
Copy link
Member Author

aminya commented Mar 4, 2021

If it is an LSP implementation, I think the package would be useful. Many IDE providers already have format services, so having atom-ide-code-format will not create a package hell due to the need for adding new packages for each language.

We should make the code TypeScript and follow the types in:
https://github.com/atom-community/atom-ide-base/blob/master/types-packages/code-format.d.ts

There is @khan/flow-to-ts package which already converts Flow to TypeScript.

@UziTech
Copy link
Member

UziTech commented Mar 4, 2021

Ya this was part of atom-ide-ui for lsp packages so it should work with them although I don't know if any of them actually implemented the format functionality.

@aminya aminya closed this as completed Jul 15, 2021
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