[Github-comments] [geany/geany] [session-split] More things to session (Issue #3007)
xiota
notifications at xxxxx
Tue Nov 23 04:02:05 UTC 2021
A better rule of thumb for session variables would be anything the user does not or cannot set explicitly. Or put another way, Geany should avoid resetting/undoing what the user has explicitly set. If there is a setting in the preferences dialog, or elsewhere, it should not be a session config. This has precedence, for instance, with the filetype auto-detection. Geany does *not* redetect filetype on reload because the user *might* have explicitly changed it.
* MRU – session – not explicitly set by the user
* Window position and geometry – session – not explicitly set by the user
* Sidebar/msgwin location – *not* session – explicitly set by user in preferences.
* Sidebar/msgwin position – session – not explicitly set by user. (The user can change it, but this is an *implicit* change. There is no *explicit* setting in preferences or elsewhere.)
-----
@elextr Your definition is overly inclusive. Only a handful of settings don't fit your criteria as session variables. You essentially confirm this when you stated, "I have defaulted to yes if I'm unsure". (You give a different reason for that default, but using an unsuitable definition of "session" would contribute that that problem.)
The core of the definition you suggest is:
> a setting that an individual user is likely to change, possibly often...
That would be detected by running diff on sequential config files (as I suggested). Although I did not mention collecting samples from multiple users, I pretty much took it as a given since it is a common, well-known approach to avoid over-specificity. Configs that change more frequently across a greater number of users are better candidates than configs that do or don't change for only one (or a few).
> and it doesn't affect the files being edited
That part is arbitrary. You and other devs have described project files as just "named sessions". You state that indent settings are *not* session config, but indent settings are part of project files (indicating that it likely *is* session config).
There are only a handful of settings that affect the edited file. Default encoding, line endings. The vast majority of other settings affect the editing environment (eg, GUI), but not the edited files.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/3007#issuecomment-976151338
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.geany.org/pipermail/github-comments/attachments/20211122/5df29ba0/attachment.htm>
More information about the Github-comments
mailing list