clutcher / bh

Issue tracker for Better Highlights Intellij IDEA plugin
7 stars 0 forks source link

Move settings to "Tools" #102

Closed mgroth0 closed 1 month ago

mgroth0 commented 6 months ago

I suggest moving the settings pane into the "Tools" section. I see all of my other plugin settings inside "Tools", so it doesn't seem that a plugin belongs at the top level as this one currently is.

clutcher commented 6 months ago

In theory "Tools" section should be used for 3d party integrations. More suitable would be section "Editor", but I don't like it, as it has already tonns of settings there. So root for me look like the best option right now.

P.S. There is guidelines from jetbrains https://plugins.jetbrains.com/docs/intellij/settings-guide.html#values-for-parent-id-attribute , which says that you can use root for "extensive suits of settings", which looks like our case.

mgroth0 commented 6 months ago

Thanks for sharing the guidelines.

Good point, "Editor" seems more suitable than "Tools". BH feels to me like it would it nicely there. It's similar to other members of the Editor settings such as "intentions", "language injections", "inlay hints", and "inspections" because BH is a way to enhance the editor with extra interactive features, just as those do.

Your right that Editor has a lot of settings, but I think it's still more appropriate to put BH in there with them. From the guidelines, they say this about root:

The invisible parent of all existing groups. Not used except for IDEs built on top of the IntelliJ Platform, or extensive suites of Settings. You should not place settings in this group.

I think that when they say "you should not place settings in this group" that includes you, @clutcher 😂

Top level I imagine we expect huge IDE-level things like "Android Studio". BH does pack many cool features but it's not an IDE, is it?

I have a bunch of plugins, and many could say they have an "extensive suits of settings", but none have put their settings at the top level.

clutcher commented 5 months ago

@mgroth0 Editor section has too much things inside, so I don't really like to place anything there. Maybe jetbrains would split it up on few sections some days. How do you think, how much setting should be in BH to consider it as "extensive suites of settings"?

P.S. I have plugin with less settings, which is also on root level)) 2024-04-09_18-56-09

mgroth0 commented 5 months ago

@clutcher I respect your desire to make your settings prominent and easy to access. But, with all due respect, putting your settings at the top level feels obtrusive and like forced advertising. I would have the same exact feelings about SAP Commerce (but even more harsh because they are a company trying to make money and being obstrusive could be an explicit buisness tactic)

I think no matter how many settings there are, its still the right thing to do to try to tuck it away nicely.

If your settings do not fit nicely in a group, in my opinion it might be worth considering if BH should be one plugin or if it should be split up into multiple plugins.

It seems to me like BH is currently an amalgam of cool but largely unrelated features. We have:

This could easily be be 3 different plugins. I can see why you might be motivated to package these features into one plugin, but I don't think that should be used as an excuse to be obstrusive.

I know you didn't ask me for all of these opinions. Being more practical, what about "Other Settings"? That seems like a great catch-all of plugins that don't quite fit in another category. For me, there are only 2 things in there. I would feel happy with BH there, and maybe you would too since it isn't so crowded?

clutcher commented 5 months ago

@mgroth0

I'm happy to hear any feedback and discuss it until discussion is constructive.


About plugin split and naming:


Returning to initial discussion. My main intent is to make this settings easily to find and use.

I tried various approaches and checked with Editor, Tools, Others + with splitting setting by different tabs and keeping everything together. With all previous places I constantly received questions about settings stuff in reviews, on github and on my email. With latest switch on having everything under root in an way it is right now, I finally don't receive any settings related question. So from that perspective I reach my main goal.

Also I try to not violate jetbrains guidelines (if possible) and definitely I don't try to advertise in such way.

With all of that, there are such options right now:


For me viable are only last 3 options "Move it to Others", "Create intermediate root section, like "Aesthetics"..." and "Leave everyting as is". And I don't have strong opinion on what is the best from this 3 alternatives. I tend to "leave everything as is" only because it already proved that users doesn't have issue with configuration part. What do you think about this 3 alternatives?

P.S. SAP Commerce plugin is developed by Epam Systems, not SAP))

mgroth0 commented 5 months ago

Yes I was being a little harsh in my last comment. Thanks for being open to constructive problem solving.

With all previous places I constantly received questions about settings stuff in reviews, on github and on my email. With latest switch on having everything under root in an way it is right now, I finally don't receive any settings related question. So from that perspective I reach my main goal.

Sure this makes sense. But let's see where this logic takes us. Let's say that there is a signfificant problem where users cannot find plugin settings. This would apply equally to all other plugins as well, not only yours. And while making yours top-level may have helped your users find your settings, it did not help them find the settings for any other plugin they are using. It might have even made it slightly more difficult for your users to find settings from their other plugins because the top level now shows your plugin and therefore slightly de-emphasizes the categories where most plugins live.

What if for the constant questions regarding settings you provided people with a link to a tutorial video or documentation (that way you don't have to explain it each time)?

Now about where to actually put those settings.

I take back my original suggestion about putting it in tools because I agree with you now that if you were to put it somewhere else, "editor" would be a better fit.

Create intermediate root section, like "Aesthetics", "Styling", "Visuals" (or more complicated like "Code Aesthetics", "Syntax Styling", "Visual Settings"...)

I do not understand why this should be created instead of just using "Appearance & Behavior". To me, all of these things fit perfectly in that existing category.

If you are leaning more towards "Other settings" instead of "Editor" then we are in agreement (though our motivations are not the same, but that is ok). For me I don't mind at all how crowded a category is, for me it is just about organization and things being where I would expect them to be. I can imagine BH in "other settings" because it is an amalgom of features. Even if many of those features fit in "Editor", I feel it is unique enough to be in the "other" category.

Being top level as it is now seem to clearly violate the guidelines, and seems to be the most severe violation. If they say "You should not place settings in this group." I think that this means you should not place settings in this group.

You said being in "other settings" violates guidlines but I was surprised about that. I didn't realize that until just now that this category is a violation.

All I can say is this. Adding BH to "other settings" might technically be a violation, but does not personally offend me or distract me in any way so I'd look the other way 😂 That's up to you. I already have 2 other plugins there. If you choose you really do not want to violate this, then I think "editor" is probably the most technically correct place (and I know that's not what you want, but I think that's just the way it is).

One other thing to consider though about "other" settings is that I don't know if its the best idea for the long term. You might get away with it now but it might become a bigger issue in the future if Jetbrains really pushes people away from it. And I'm sure that its easy to swich it later but I guess it will just confuse a fair amount of people when it moves.

Wow we have really talked this to death. Go ahead and choose. I appreciate you heared me out in any case.

clutcher commented 1 month ago

In version 2024.2.0 settings would be moved into "Editor" section to correspond jetbrains guidelines.

If I will start receiving again questions about settings - I will move it back into root.

mgroth0 commented 1 month ago

Thank you. This will help us all keep our settings pane tidy.

Users could have trouble finding any plugin. I don't thing this one should get special treatment in violation of guidelines. Anyone who asks you where to find the settings for this plugin likely would also ask the same question to other plugin authors.

I want to emphasize that the settings pane has a search bar. If "better highlights" is input in that field the settings pane for this plugin should come up. I do not think accomodations should be made for users who don't try the search bar first.