User Preferences need to be saved automatically
All the contents of user preferences editor are persistent (kept in between the scene, not saved with a .blend file). Therefore it makes absolutely no sense for saving of these settings to be manual, as it significantly increases room for error (forgetting to click the button after changing particular setting) with very little benefit in return.
The save user setting button should be replaced with a "reset to defaults" button, which would reset all the settings in the active tab (Interface/Editing/Input, etc...) to their defaults had user done a mistake. Currently, the only way to revert to defaults is very destructive factory defaults option in the file menu.
19 Comments
I personally disagree. I often change User Preferences (like active add-ons) depending on what I'm doing in a particular Blender session. Having that saved automatically would be annoying in the extreme.
@Jason van Gumster: Totally agree. However, could this be possible to save the user preferences for a specific project file (which needs to be savec first) ? That would make possible to have certain addons enabled on the .blend files needing them, and not to save them as default.
@loic.dautry: I could see project template files working pretty well for this. I'd imagine that's the kind of thing that would be integrated into Blender 2.8's Workspaces. I'd hope so, at least.
Yup, in Blender 2.80 it will be possible to enable/disable add-ons on a per-workspace and a per-template basis. As an example, you could have your retopo widgets/manipulators add-on enabled in your "Retopo" workspace, but disabled in your regular modelling one.
You grow my impatience for 2.80 :')
This is what OK/Cancel is good for, but Blender's UI doesn't follow that pattern.
I think it would be best for the "Save User Settings" button to light up red or something if there are unsaved changes. It can be easy to forget sometimes.
Agree with Jason
I have a solution for both, a checkbox (save automatically). So users who want to save automatically only have to click on save only once. And all happy.
@fabiocroldan: Personally not a fan. An option for for how options are saved. Feels like overload to me.
I seriously think that most of the issues brought up by this proposal will be resolved with Workspaces.
@Jason van Gumster: The saved of changes automatically in menues of configuration is a pattern very used lately and already it became a standar, I can name hundreds of examples (windows, android, etc) but it would be a very long list, even until it is used in the automatic saving of the file (visual studio code has a checkbox for this). I also do not say that it is marked as true by default but at least let the user choose. I think the key to the next Blender interface has to be flexibility, because there are many users with different opinions and preferences, if you do not like it you just do not use it and if Rawalanche and I like it we use it.
@fabiocroldan: If the only reason for that feature is "if you don't like it don't use it" no matter what's against that feature, then everything single feature request could be added in Blender for the sake of "you can use it or not". And that's not humanly possible to do so and even if we put just a few features in that way, we would end up with features and functions impinging on each other. Hence the need to balance pros and cons of everything and talk about how this could work in Blender's future.
The previous argument is " most of the issues brought up by this proposal will be resolved with Workspaces ". So if you consider that, what justifies the need of a "save automatically" checkbox ?
@loic.dautry: Do not misunderstand me, in that case I talked about flexibility. Maybe I got confused on this topic and I'm talking about something else, I'm sorry if it's like that, my English is not good. In Visual Studio Code there is a checkbox "Auto Save" to not ask for confirmation to save, the justification of this pattern is: 1- Decrease the amount of click 2- Prevents the user from forgetting to save changes in configuration or modifications to the file It feels very comfortable not to have to worry about saving changes. But I understand that some people prefer to save manually, especially with large files.
@fabiocroldan: There's a difference between autosaving a project file (which Blender already supports) and automatically saving changes to user preferences. The latter is what folks have an issue with and what we're hoping/anticipating will be solved with Workspaces.
@Jason van Gumster: Yes, I know, but it is more like a backup, the autosave of Visual Studio Code saves every few seconds in the file, and when you close the program does not ask anything because the file is already saved. But I also do not understand what is the conflict of autosave in user preferences. An example can be Chrome, in Settings you can make modifications and never ask for confirmation.
@fabiocroldan: The problem is that some User Preferences get changed on the fly, as a temporary thing. Best example would be which add-ons are enabled. Just because I enable Animation Nodes for this session, I don't want Blender to activate that add-on for every session. So I would not want autosave on preferences
@Jason van Gumster:
Things that are being changed on the fly do not belong into user preferences in the first place. That being said, I can't think of many people who enable/disable addons or plugins on per-project basis, not just in Blender, but in CG software in general.
If there is something that necessities toggling the addons in between different scenes, because these addons can interfere with a scene contents or workflow, then that should be considered a design flaw and fixed promptly. Having to toggle addons or plugins when switching between scene/project files is a cumbersome workaround to alleviate a not very well thought through addon system. In most of other software, you simply do not come in contact with a plugin you do not use in a particular scene, and there are no performance penalties associated with having it enabled but not using it.
And something as essential as automatic preferences saving, especially in 21st century, should not be omitted just to preserve a few subjective workflows that evolved from workaround.
@rawalanche: The user preferences follow the same pattern as the startup file. There are the settings for the current blend, and then there are the defaults for the entire environment that are used when you create a new blend.
Auto-saving the user preferences would be comparable to having every change you make to the render settings instantly become default for some reason.
I think if any change is truly needed, it would be to change the save button's text to "make preferences default" so that it better conveys what its purpose is. Also, having individual settings change appearance somehow when they've been modified from the default would be a very welcome addition.
@rawalanche: Then this proposal becomes a lot more about redesigning how User Preferences work in general.
I do turn add-ons on and off as I need them. I don't want Animation Nodes enabled while I'm working on a project that doesn't require them. I don't want Blender to keep DXF export enabled after the one time that I turn it on to use. I don't need to have a render farm add-on enabled if I'm working offline and not rendering anything.
I'm not the only one who works this way.
@rawalanche: Design flaw ? I just disagree. In plenty other softwares, it's a common thing to accumulate features over and over, having thousands of tools everywhere, even when you don't need them. It's just a mess.
Blender allows you to remove what's not needed. It makes the interface light, clear, readable, and task oriented. And that should become even better with 2.8's workspaces.